X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDRO_tests%2Ftest_HYDROData_ShapeFile.cxx;h=de1a1289958d5250b2ea130596f7313b6026b6cf;hb=3bece499e83cc9ca95536228c7f6740030e9d5d8;hp=e0369578ef897484ed4439ba8ce1bec0f607c839;hpb=a6948914a6abde17f496c3bdff6e1450fb93ad96;p=modules%2Fhydro.git diff --git a/src/HYDRO_tests/test_HYDROData_ShapeFile.cxx b/src/HYDRO_tests/test_HYDROData_ShapeFile.cxx index e0369578..de1a1289 100644 --- a/src/HYDRO_tests/test_HYDROData_ShapeFile.cxx +++ b/src/HYDRO_tests/test_HYDROData_ShapeFile.cxx @@ -21,7 +21,7 @@ #include #include -const QString REF_PATH = qgetenv( "HYDRO_REFERENCE_DATA" ); +extern QString REF_DATA_PATH; bool test_HYDROData_ShapeFile::compare_two_files(const QString& File1, const QString& File2) { @@ -48,7 +48,7 @@ bool test_HYDROData_ShapeFile::compare_two_files(const QString& File1, const QSt void test_HYDROData_ShapeFile::test_openDbf() { - QString aDBFPath = REF_PATH + "/cyprus_natural.dbf"; + QString aDBFPath = REF_DATA_PATH + "/cyprus_natural.dbf"; HYDROData_ShapeFile aSHPFile; bool Stat = aSHPFile.DBF_OpenDBF(aDBFPath); CPPUNIT_ASSERT_EQUAL( true, Stat ); @@ -57,7 +57,7 @@ void test_HYDROData_ShapeFile::test_openDbf() void test_HYDROData_ShapeFile::test_NbFieldsDbf() { - QString aDBFPath = REF_PATH + "/cyprus_natural.dbf"; + QString aDBFPath = REF_DATA_PATH + "/cyprus_natural.dbf"; HYDROData_ShapeFile aSHPFile; CPPUNIT_ASSERT_EQUAL(true, aSHPFile.DBF_OpenDBF(aDBFPath)); int NbF = aSHPFile.DBF_GetNbFields(); @@ -67,7 +67,7 @@ void test_HYDROData_ShapeFile::test_NbFieldsDbf() void test_HYDROData_ShapeFile::test_FieldListDbf() { - QString aDBFPath = REF_PATH + "/cyprus_natural.dbf"; + QString aDBFPath = REF_DATA_PATH + "/cyprus_natural.dbf"; HYDROData_ShapeFile aSHPFile; CPPUNIT_ASSERT_EQUAL(true, aSHPFile.DBF_OpenDBF(aDBFPath)); @@ -79,7 +79,7 @@ void test_HYDROData_ShapeFile::test_FieldListDbf() void test_HYDROData_ShapeFile::test_FieldTypeListDbf() { - QString aDBFPath = REF_PATH + "/cyprus_natural.dbf"; + QString aDBFPath = REF_DATA_PATH + "/cyprus_natural.dbf"; HYDROData_ShapeFile aSHPFile; CPPUNIT_ASSERT_EQUAL(true, aSHPFile.DBF_OpenDBF(aDBFPath)); @@ -92,7 +92,7 @@ void test_HYDROData_ShapeFile::test_FieldTypeListDbf() void test_HYDROData_ShapeFile::test_NbRecordsDbf() { - QString aDBFPath = REF_PATH + "/cyprus_natural.dbf"; + QString aDBFPath = REF_DATA_PATH + "/cyprus_natural.dbf"; HYDROData_ShapeFile aSHPFile; CPPUNIT_ASSERT_EQUAL(true, aSHPFile.DBF_OpenDBF(aDBFPath)); int NbR = aSHPFile.DBF_GetNbRecords(); @@ -103,7 +103,7 @@ void test_HYDROData_ShapeFile::test_NbRecordsDbf() void test_HYDROData_ShapeFile::test_GetAttrListIndex() { { //cyprus_natural - QString aDBFPath = REF_PATH + "/cyprus_natural.dbf"; + QString aDBFPath = REF_DATA_PATH + "/cyprus_natural.dbf"; HYDROData_ShapeFile aSHPFile; CPPUNIT_ASSERT_EQUAL(true, aSHPFile.DBF_OpenDBF(aDBFPath)); std::vector theAttrV; @@ -134,7 +134,7 @@ void test_HYDROData_ShapeFile::test_GetAttrListIndex() aSHPFile.DBF_CloseDBF(); } { //CLC06 - QString aDBFPath = REF_PATH + "/CLC06.dbf"; + QString aDBFPath = REF_DATA_PATH + "/CLC06.dbf"; HYDROData_ShapeFile aSHPFile; CPPUNIT_ASSERT_EQUAL (true, aSHPFile.DBF_OpenDBF(aDBFPath)); std::vector theAttrV; @@ -163,8 +163,8 @@ void test_HYDROData_ShapeFile::test_DbfWrite() { { HYDROData_ShapeFile aSHPFile; - QString tempFN = REF_PATH + "/temp_dbf1.dbf"; - QString refFN = REF_PATH + "/ref_dbf1.dbf"; + QString tempFN = REF_DATA_PATH + "/temp_dbf1.dbf"; + QString refFN = REF_DATA_PATH + "/ref_dbf1.dbf"; std::vector theAttrV; HYDROData_ShapeFile::DBF_AttrValue theAttr1; theAttr1.myFieldType = HYDROData_ShapeFile::DBF_FieldType_String; @@ -187,8 +187,8 @@ void test_HYDROData_ShapeFile::test_DbfWrite() { HYDROData_ShapeFile aSHPFile; - QString tempFN = REF_PATH + "/temp_dbf2.dbf"; - QString refFN = REF_PATH + "/ref_dbf2.dbf"; + QString tempFN = REF_DATA_PATH + "/temp_dbf2.dbf"; + QString refFN = REF_DATA_PATH + "/ref_dbf2.dbf"; std::vector theAttrV; HYDROData_ShapeFile::DBF_AttrValue theAttr1; theAttr1.myFieldType = HYDROData_ShapeFile::DBF_FieldType_String; @@ -217,5 +217,27 @@ void test_HYDROData_ShapeFile::test_DbfWrite() CPPUNIT_ASSERT_EQUAL( 0, remove (tempFN.toStdString().c_str())); } + { + HYDROData_ShapeFile aSHPFile; + QString tempFN = REF_DATA_PATH + "/temp_dbf3.dbf"; + QString refFN = REF_DATA_PATH + "/ref_dbf3.dbf"; + std::vector theAttrV; + HYDROData_ShapeFile::DBF_AttrValue theAttr1; + theAttr1.myFieldType = HYDROData_ShapeFile::DBF_FieldType_Integer; + theAttr1.myIsNull = false; + + for (int ii = 0; ii < 100; ii++) + { + theAttr1.myIntVal = ii; + theAttrV.push_back(theAttr1); + } + + // + CPPUNIT_ASSERT(aSHPFile.DBF_WriteFieldAndValues(tempFN, "test_field_name", HYDROData_ShapeFile::DBF_FieldType_Integer, theAttrV, false)); + + CPPUNIT_ASSERT(compare_two_files(tempFN, refFN)); + CPPUNIT_ASSERT_EQUAL( 0, remove (tempFN.toStdString().c_str())); + } + }