summaryrefslogtreecommitdiffhomepage
path: root/zlib/contrib/iostream3/test.cc
diff options
context:
space:
mode:
authorAki <please@ignore.pl>2021-10-01 23:46:47 +0200
committerAki <please@ignore.pl>2021-10-01 23:46:47 +0200
commitddd76aa4e1571c8d5965709db5c3cd47a89c9a38 (patch)
tree4e07bfaebede6531a70984fdebc855bca52f394a /zlib/contrib/iostream3/test.cc
parent3a507e08b1d4e5970b27401a7e6517570d529400 (diff)
parentc2d2c3551501110fddd78674d5435bfaa70382a3 (diff)
downloadstarshatter-ddd76aa4e1571c8d5965709db5c3cd47a89c9a38.zip
starshatter-ddd76aa4e1571c8d5965709db5c3cd47a89c9a38.tar.gz
starshatter-ddd76aa4e1571c8d5965709db5c3cd47a89c9a38.tar.bz2
Project is now built with CMake
Diffstat (limited to 'zlib/contrib/iostream3/test.cc')
-rw-r--r--zlib/contrib/iostream3/test.cc50
1 files changed, 50 insertions, 0 deletions
diff --git a/zlib/contrib/iostream3/test.cc b/zlib/contrib/iostream3/test.cc
new file mode 100644
index 0000000..9423533
--- /dev/null
+++ b/zlib/contrib/iostream3/test.cc
@@ -0,0 +1,50 @@
+/*
+ * Test program for gzifstream and gzofstream
+ *
+ * by Ludwig Schwardt <schwardt@sun.ac.za>
+ * original version by Kevin Ruland <kevin@rodin.wustl.edu>
+ */
+
+#include "zfstream.h"
+#include <iostream> // for cout
+
+int main() {
+
+ gzofstream outf;
+ gzifstream inf;
+ char buf[80];
+
+ outf.open("test1.txt.gz");
+ outf << "The quick brown fox sidestepped the lazy canine\n"
+ << 1.3 << "\nPlan " << 9 << std::endl;
+ outf.close();
+ std::cout << "Wrote the following message to 'test1.txt.gz' (check with zcat or zless):\n"
+ << "The quick brown fox sidestepped the lazy canine\n"
+ << 1.3 << "\nPlan " << 9 << std::endl;
+
+ std::cout << "\nReading 'test1.txt.gz' (buffered) produces:\n";
+ inf.open("test1.txt.gz");
+ while (inf.getline(buf,80,'\n')) {
+ std::cout << buf << "\t(" << inf.rdbuf()->in_avail() << " chars left in buffer)\n";
+ }
+ inf.close();
+
+ outf.rdbuf()->pubsetbuf(0,0);
+ outf.open("test2.txt.gz");
+ outf << setcompression(Z_NO_COMPRESSION)
+ << "The quick brown fox sidestepped the lazy canine\n"
+ << 1.3 << "\nPlan " << 9 << std::endl;
+ outf.close();
+ std::cout << "\nWrote the same message to 'test2.txt.gz' in uncompressed form";
+
+ std::cout << "\nReading 'test2.txt.gz' (unbuffered) produces:\n";
+ inf.rdbuf()->pubsetbuf(0,0);
+ inf.open("test2.txt.gz");
+ while (inf.getline(buf,80,'\n')) {
+ std::cout << buf << "\t(" << inf.rdbuf()->in_avail() << " chars left in buffer)\n";
+ }
+ inf.close();
+
+ return 0;
+
+}