Zipios++

zipoutputstreamtest.h

00001 #ifndef ZIPIOS_ZIPOUTPUTSTREAMTEST_H
00002 #define ZIPIOS_ZIPOUTPUTSTREAMTEST_H
00003 
00004 #include <string>
00005 #include <vector>
00006 
00007 #include <cppunit/TestCase.h>
00008 #include <cppunit/TestSuite.h>
00009 #include <cppunit/TestAssert.h>
00010 #include <cppunit/extensions/HelperMacros.h>
00011 
00012 #include "commontest.h"
00013 #include "zipios++/zipoutputstream.h"
00014 
00015 namespace zipios {
00016 
00017   using std::string;
00018   using std::vector;
00019   using std::istream;
00020   
00021   class ZipOutputStreamTest : public CppUnit::TestCase {
00022   public:
00023     CPPUNIT_TEST_SUITE(ZipOutputStreamTest);
00024     CPPUNIT_TEST(testNativeUnzip);
00025     CPPUNIT_TEST_SUITE_END();
00026 
00027     void testNativeUnzip();
00028     
00029   private:
00030     static bool hasUnzip();
00031     static void entryToFile(const string &ent_name, istream &is, 
00032                             const string &outfile,
00033                             bool cerr_report);
00034     static void writeFileToZipOutputStream(zipios::ZipOutputStream& zos, 
00035                                            const std::string& entryName);
00036 
00037     static void assertEntry(const std::string& zipFileName,
00038                             const std::string& entryName);
00039 
00040     static const std::string TEST_ZIPFILE_NAME;
00041 
00042     static const TestFiles TEST_FILES;
00043   };
00044 
00045 } // zipios
00046 
00047 #endif