tests: Add stream coverage tests
tests: Add stream coverage tests

These tests simulate various error conditions when reading data from
streams - seeks failing in seekable streams, underflow throwing an
exception causing read to set badbit, etc.

This change also adjusts memory thresholds to cause a reliable out of
memory during construction of a final buffer for non-seekable streams.

zeux/pugixml,zeux/pugixml,zeux/pugixml,zeux/pugixml