+
+void test_HYDROData_StricklerTable::test_import_export_equivalence()
+{
+ Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1);
+
+ Handle(HYDROData_StricklerTable) aTable =
+ Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) );
+
+ CPPUNIT_ASSERT_EQUAL( true, aTable->Import( DEF_STR_PATH ) );
+ QString aTmpPath = QDir::tempPath() + "/stricker.txt";
+ CPPUNIT_ASSERT_EQUAL( true, aTable->Export( aTmpPath ) );
+
+ QFile aRefFile( DEF_STR_PATH ), aTmpFile( aTmpPath );
+ CPPUNIT_ASSERT_EQUAL( true, aRefFile.open( QFile::ReadOnly ) );
+ CPPUNIT_ASSERT_EQUAL( true, aTmpFile.open( QFile::ReadOnly ) );
+
+ QByteArray aRefContents = aRefFile.readAll();
+ QByteArray aTmpContents = aTmpFile.readAll();
+
+ bool isEqual = aRefContents.size()==aTmpContents.size();
+ CPPUNIT_ASSERT_EQUAL( true, isEqual );
+ for( int i=0, n=aRefContents.size(); isEqual && i<n; i++ )
+ if( aRefContents[i]!=aTmpContents[i] )
+ isEqual = false;
+
+ CPPUNIT_ASSERT_EQUAL( true, isEqual );
+
+ aRefFile.close();
+ aTmpFile.close();
+ aDoc->Close();
+}
+