diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/testfiles/bigtest.zlib | bin | 0 -> 528 bytes | |||
| -rw-r--r-- | test/zlibstream_test.h | 17 |
2 files changed, 17 insertions, 0 deletions
diff --git a/test/testfiles/bigtest.zlib b/test/testfiles/bigtest.zlib Binary files differnew file mode 100644 index 0000000000..36aeee57fb --- /dev/null +++ b/test/testfiles/bigtest.zlib diff --git a/test/zlibstream_test.h b/test/zlibstream_test.h index f37dcdbd91..8e9ca6b0f2 100644 --- a/test/zlibstream_test.h +++ b/test/zlibstream_test.h @@ -20,6 +20,7 @@ #include <cxxtest/TestSuite.h> #include "io/izlibstream.h" #include "io/ozlibstream.h" +#include "io/zlib_error.h" #include <fstream> #include <sstream> @@ -89,6 +90,22 @@ public: } } + void test_inflate_zlib() + { + std::ifstream zlib_in("bigtest.zlib", std::ios::binary); + TS_ASSERT(zlib_in); + + std::stringbuf data; + izlibstream izls(zlib_in, 256); + izls.exceptions(std::ios::failbit); + TS_ASSERT(izls.good()); + + TS_ASSERT_THROWS_NOTHING(izls >> &data); + TS_ASSERT(izls); + TS_ASSERT(izls.eof()); + TS_ASSERT_EQUALS(data.str(), bigtest.str()); + } + void test_inflate_corrupt() { std::ifstream gzip_in("bigtest_corrupt.nbt", std::ios::binary); |
