Zipios++
zipfiletest.h
00001 #ifndef ZIPIOS_ZIPFILETEST_H
00002 #define ZIPIOS_ZIPFILETEST_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 "zipios++/zipoutputstream.h"
00013 
00014 namespace zipios {
00015 
00016   using std::string;
00017   using std::vector;
00018   using std::istream;
00019   
00020   class ZipFileTest : public CppUnit::TestCase {
00021   public:
00022     CPPUNIT_TEST_SUITE(ZipFileTest);
00023     CPPUNIT_TEST(testUnzip);
00024     CPPUNIT_TEST(testZipUnzip);
00025     CPPUNIT_TEST(testComment);
00026     CPPUNIT_TEST(testClone);
00027     CPPUNIT_TEST_SUITE_END();
00028 
00029     void testUnzip();
00030     void testZipUnzip();
00031     void testComment();
00032     void testClone();
00033     
00034   private:
00035     static void writeZipFile(const string &zipFileName, 
00036                              vector<string> entryFileNames);
00037     static void compareZipFile(const string &zipFileName, 
00038                                vector<string> entryFileNames);
00039     static void writeFileToZipOutputStream(ZipOutputStream &zos, 
00040                                            const string &filename );
00041     static void compareStreams(const std::string& entryName,
00042                                istream &is1, istream &is2);
00043   };
00044 
00045 } // zipios
00046 
00047 #endif