X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDRO_tests%2Ftest_HYDROData_StricklerTable.cxx;h=659d490134bcd0c1cf183e8f60d4d8f298fe8411;hb=3bece499e83cc9ca95536228c7f6740030e9d5d8;hp=acdc7a4bb34bce898ceac5c2d36aa2563077a6ed;hpb=717022c15305dda37a3476f180e5deea10523d91;p=modules%2Fhydro.git diff --git a/src/HYDRO_tests/test_HYDROData_StricklerTable.cxx b/src/HYDRO_tests/test_HYDROData_StricklerTable.cxx index acdc7a4b..659d4901 100644 --- a/src/HYDRO_tests/test_HYDROData_StricklerTable.cxx +++ b/src/HYDRO_tests/test_HYDROData_StricklerTable.cxx @@ -21,15 +21,19 @@ #include #include #include -#include +#include +#include #include #include +#include +#include -const QString DEF_STR_PATH = qgetenv( "HYDRO_SRC_DIR" ) + "/src/HYDROGUI/resources/def_strickler_table.txt"; +const QString DEF_STR_PATH = qgetenv( "HYDRO_ROOT_DIR" ) + "/share/salome/resources/hydro/def_strickler_table_06.txt"; +extern QString TMP_DIR; void test_HYDROData_StricklerTable::test_import() { - Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1); + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); Handle(HYDROData_StricklerTable) aTable = Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) ); @@ -37,31 +41,31 @@ void test_HYDROData_StricklerTable::test_import() CPPUNIT_ASSERT_EQUAL( true, aTable->Import( DEF_STR_PATH ) ); QStringList aTypes = aTable->GetTypes(); - CPPUNIT_ASSERT_EQUAL( 8, aTypes.size() ); + CPPUNIT_ASSERT_EQUAL( 44, aTypes.size() ); CPPUNIT_ASSERT_EQUAL( QString( "CODE_06" ), aTable->GetAttrName() ); - QString aType = "Zones de champs cultivé à végétation basse"; - CPPUNIT_ASSERT_EQUAL( aType, aTypes[3] ); + QString aType = QString::fromUtf8("Périmètres irrigués en permanence"); + CPPUNIT_ASSERT_EQUAL( aType, aTypes[25] ); CPPUNIT_ASSERT_EQUAL( QColor( 255, 255, 0 ), aTable->GetColor( aType ) ); - CPPUNIT_ASSERT_EQUAL( QString( "512" ), aTable->GetAttrValue( aType ) ); + CPPUNIT_ASSERT_EQUAL( QString( "212" ), aTable->GetAttrValue( aType ) ); - aType = "Zones à forte urbanization (agglomération)"; - CPPUNIT_ASSERT_EQUAL( aType, aTypes[7] ); - CPPUNIT_ASSERT_EQUAL( QColor( 18, 52, 86 ), aTable->GetColor( aType ) ); - CPPUNIT_ASSERT_EQUAL( QString( "" ), aTable->GetAttrValue( aType ) ); + aType = QString::fromUtf8("Végétation clairsemée"); + CPPUNIT_ASSERT_EQUAL( aType, aTypes[38] ); + CPPUNIT_ASSERT_EQUAL( QColor( 204, 255, 204 ), aTable->GetColor( aType ) ); + CPPUNIT_ASSERT_EQUAL( QString( "333" ), aTable->GetAttrValue( aType ) ); aDoc->Close(); } void test_HYDROData_StricklerTable::test_import_export_equivalence() { - Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1); + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); 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"; + QString aTmpPath = TMP_DIR + "/stricker.txt"; CPPUNIT_ASSERT_EQUAL( true, aTable->Export( aTmpPath ) ); QFile aRefFile( DEF_STR_PATH ), aTmpFile( aTmpPath ); @@ -71,13 +75,13 @@ void test_HYDROData_StricklerTable::test_import_export_equivalence() 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 && iCreateObject( KIND_STRICKLER_TABLE ) ); CPPUNIT_ASSERT_EQUAL( true, aTable->Import( DEF_STR_PATH ) ); - CPPUNIT_ASSERT_EQUAL( QString( "Zones de champs cultivé à végétation basse" ), aTable->GetType( "512" ) ); - CPPUNIT_ASSERT_EQUAL( QString( "" ), aTable->GetType( "123" ) ); + CPPUNIT_ASSERT_EQUAL( QString( "Plans d'eau" ), aTable->GetType( "512" ) ); + CPPUNIT_ASSERT_EQUAL( QString( "" ), aTable->GetType( "125" ) ); CPPUNIT_ASSERT_EQUAL( QString( "" ), aTable->GetType( "" ) ); aDoc->Close(); @@ -102,7 +106,7 @@ void test_HYDROData_StricklerTable::test_type_by_attr() void test_HYDROData_StricklerTable::test_unique_attr_name() { - Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1); + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); Handle(HYDROData_StricklerTable) aTable1 = Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) ); @@ -130,7 +134,7 @@ void test_HYDROData_StricklerTable::test_unique_attr_name() void test_HYDROData_StricklerTable::test_colors_sync() { - Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1); + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); Handle(HYDROData_StricklerTable) aTable1 = Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) ); @@ -154,7 +158,7 @@ void test_HYDROData_StricklerTable::test_colors_sync() void test_HYDROData_StricklerTable::test_duplication_refs_613() { - Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1); + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); Handle(HYDROData_StricklerTable) aTable1 = Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) ); @@ -200,5 +204,37 @@ void test_HYDROData_StricklerTable::test_duplication_refs_613() void test_HYDROData_StricklerTable::test_dump_python() { - //TODO + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); + + Handle(HYDROData_StricklerTable) aTable = + Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) ); + aTable->SetName( "ST" ); + CPPUNIT_ASSERT_EQUAL( true, aTable->Import( DEF_STR_PATH ) ); + + QString aTmpPath = TMP_DIR + "/st_dump.py"; + + CPPUNIT_ASSERT_EQUAL( true, aDoc->DumpToPython( aTmpPath, false ) ); + + CPPUNIT_ASSERT_SCRIPTS_EQUAL( "st_dump.py", true, true, 0 ); + + aDoc->Close(); +} + +void test_HYDROData_StricklerTable::test_add_row_in_gui_refs_717() +{ + Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(); + + Handle(HYDROData_StricklerTable) aTable = + Handle(HYDROData_StricklerTable)::DownCast( aDoc->CreateObject( KIND_STRICKLER_TABLE ) ); + + CPPUNIT_ASSERT_EQUAL( true, aTable->Import( DEF_STR_PATH ) ); + + HYDROGUI_StricklerTableDlg* aDlg = new HYDROGUI_StricklerTableDlg( 0, "", 0 ); + aDlg->setGuiData( aTable ); + CPPUNIT_ASSERT_EQUAL( 44, aDlg->myTable->rowCount() ); + aDlg->onAddCoefficient(); + aDlg->getGuiData( aTable ); + + aDlg->deleteLater(); + aDoc->Close(); }