#ifndef TNONGRAPHICTEST_INCLUDED #define TNONGRAPHICTEST_INCLUDED #include "tcommon.h" #include "tlevel_io.h" #include "timage_io.h" #include "tvectorimage.h" #undef DVAPI #ifdef TTEST_EXPORTS #define DVAPI DV_EXPORT_API #else #define DVAPI DV_IMPORT_API #endif class DVAPI TTest { int m_levelInstanceCount; int m_imageInstanceCount; int m_rasterInstanceCount; int m_imageReaderInstanceCount; int m_imageWriterInstanceCount; int m_levelReaderInstanceCount; int m_levelWriterInstanceCount; int m_paramInstanceCount; int m_fxInstanceCount; public: TTest(const string &testName); virtual ~TTest(); void setInstanceCount(); void verifyInstanceCount(); virtual void test() = 0; virtual void before() { setInstanceCount(); }; virtual void after(){}; static void runTests(string filename); }; //Utility DVAPI TFilePath getTestFile(string name); DVAPI int areEqual(TRasterP ra, TRasterP rb, double err = 1e-8); DVAPI int areEqual(TVectorImageP va, TVectorImageP vb, double err = 1e-8); DVAPI int areEqual(TImageP a, TImageP b, double err = 1e-8); DVAPI bool areEqual(const TPalette *paletteA, const TPalette *paletteB); DVAPI bool areEqual(TLevelP la, TLevelP lb); #endif