11#include < catch.hpp>
22#include < fstream>
33#include < iostream>
4- #include < utility>
54#include < parser/metadata/MetaDataParser.h>
65#include < runtime/local/io/FileMetaData.h>
76#include < runtime/local/io/utils.h>
7+ #include < utility>
88
99const std::string dirPath = " /daphne/test/runtime/local/io/generateMetaData/" ;
1010
1111class FileCleanupFixture {
1212 public:
1313 std::string fileName;
1414
15- explicit FileCleanupFixture (std::string filename) : fileName(std::move(filename)) {
16- cleanup ();
17- }
15+ explicit FileCleanupFixture (std::string filename) : fileName(std::move(filename)) { cleanup (); }
1816
19- ~FileCleanupFixture () {
20- cleanup ();
21- }
17+ ~FileCleanupFixture () { cleanup (); }
2218
2319 private:
2420 void cleanup () const {
@@ -82,9 +78,10 @@ TEST_CASE("generate meta data for frame", "[metadata]") {
8278 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 3 );
8379 REQUIRE (generatedMetaData.numRows == 3 );
8480 REQUIRE (generatedMetaData.numCols == 3 );
81+ REQUIRE (generatedMetaData.isSingleValueType == false );
8582 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::SI8);
8683 REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::SI8);
87- REQUIRE (generatedMetaData.schema [2 ] == ValueTypeCode::SI8 );
84+ REQUIRE (generatedMetaData.schema [2 ] == ValueTypeCode::UI8 );
8885 for (int i = 0 ; i < 3 ; i++) {
8986 REQUIRE (generatedMetaData.labels [i] == " col_" + std::to_string (i));
9087 }
@@ -93,11 +90,11 @@ TEST_CASE("generate meta data for frame", "[metadata]") {
9390TEST_CASE (" generate meta data for frame with type uint64" , " [metadata]" ) {
9491 std::string csvFilename = dirPath + " generateMetaData1.csv" ;
9592 FileCleanupFixture cleanup (csvFilename); // cleans up before and after the test
96- FileMetaData generatedMetaData = generateFileMetaData (csvFilename,' ,' , 2 );
93+ FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
9794 REQUIRE (generatedMetaData.numRows == 2 );
9895 REQUIRE (generatedMetaData.numCols == 2 );
96+ REQUIRE (generatedMetaData.isSingleValueType == true );
9997 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::UI64);
100- REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::UI64);
10198}
10299
103100TEST_CASE (" generate meta data for matrix with type uint64" , " [metadata]" ) {
@@ -116,8 +113,8 @@ TEST_CASE("generate meta data for frame with type int64", "[metadata]") {
116113 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
117114 REQUIRE (generatedMetaData.numRows == 2 );
118115 REQUIRE (generatedMetaData.numCols == 2 );
116+ REQUIRE (generatedMetaData.isSingleValueType == true );
119117 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::SI64);
120- REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::SI64);
121118}
122119
123120TEST_CASE (" generate meta data for matrix with type int64" , " [metadata]" ) {
@@ -136,8 +133,8 @@ TEST_CASE("generate meta data for frame with type uint32", "[metadata]") {
136133 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
137134 REQUIRE (generatedMetaData.numRows == 2 );
138135 REQUIRE (generatedMetaData.numCols == 2 );
136+ REQUIRE (generatedMetaData.isSingleValueType == true );
139137 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::UI32);
140- REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::UI32);
141138}
142139
143140TEST_CASE (" generate meta data for matrix with type uint32" , " [metadata]" ) {
@@ -156,8 +153,8 @@ TEST_CASE("generate meta data for frame with type int32", "[metadata]") {
156153 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
157154 REQUIRE (generatedMetaData.numRows == 2 );
158155 REQUIRE (generatedMetaData.numCols == 2 );
156+ REQUIRE (generatedMetaData.isSingleValueType == true );
159157 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::SI32);
160- REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::SI32);
161158}
162159
163160TEST_CASE (" generate meta data for matrix with type int32" , " [metadata]" ) {
@@ -176,6 +173,7 @@ TEST_CASE("generate meta data for frame with type uint8", "[metadata]") {
176173 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
177174 REQUIRE (generatedMetaData.numRows == 2 );
178175 REQUIRE (generatedMetaData.numCols == 3 );
176+ REQUIRE (generatedMetaData.isSingleValueType == false );
179177 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::UI8);
180178 REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::UI8);
181179 REQUIRE (generatedMetaData.schema [2 ] == ValueTypeCode::STR);
@@ -197,9 +195,8 @@ TEST_CASE("generate meta data for frame with type int8", "[metadata]") {
197195 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
198196 REQUIRE (generatedMetaData.numRows == 2 );
199197 REQUIRE (generatedMetaData.numCols == 3 );
198+ REQUIRE (generatedMetaData.isSingleValueType == true );
200199 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::SI8);
201- REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::SI8);
202- REQUIRE (generatedMetaData.schema [2 ] == ValueTypeCode::SI8);
203200}
204201
205202TEST_CASE (" generate meta data for matrix with type int8" , " [metadata]" ) {
@@ -218,6 +215,7 @@ TEST_CASE("generate meta data for frame with type float", "[metadata]") {
218215 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
219216 REQUIRE (generatedMetaData.numRows == 2 );
220217 REQUIRE (generatedMetaData.numCols == 4 );
218+ REQUIRE (generatedMetaData.isSingleValueType == false );
221219 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::F32);
222220 REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::F32);
223221 REQUIRE (generatedMetaData.schema [2 ] == ValueTypeCode::F32);
@@ -240,8 +238,8 @@ TEST_CASE("generate meta data for frame with type double", "[metadata]") {
240238 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 );
241239 REQUIRE (generatedMetaData.numRows == 2 );
242240 REQUIRE (generatedMetaData.numCols == 2 );
241+ REQUIRE (generatedMetaData.isSingleValueType == true );
243242 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::F64);
244- REQUIRE (generatedMetaData.schema [1 ] == ValueTypeCode::F64);
245243}
246244
247245TEST_CASE (" generate meta data for matrix with type double" , " [metadata]" ) {
@@ -277,7 +275,7 @@ TEST_CASE("generate meta data for matrix with mixed types", "[metadata]") {
277275 FileCleanupFixture cleanup (csvFilename); // cleans up before and after the test
278276 FileMetaData generatedMetaData = generateFileMetaData (csvFilename, ' ,' , 2 , true );
279277 REQUIRE (generatedMetaData.numRows == 2 );
280- REQUIRE (generatedMetaData.numCols == 5 );
278+ REQUIRE (generatedMetaData.numCols == 6 );
281279 REQUIRE (generatedMetaData.isSingleValueType == true );
282280 REQUIRE (generatedMetaData.schema [0 ] == ValueTypeCode::STR);
283281}
0 commit comments