diff --git a/test/answers/copy_large_list_fwd_answer.csv b/test/answers/copy_large_list_fwd_answer.txt similarity index 100% rename from test/answers/copy_large_list_fwd_answer.csv rename to test/answers/copy_large_list_fwd_answer.txt diff --git a/test/answers/copy_large_list_single_bwd_answer.csv b/test/answers/copy_large_list_single_bwd_answer.txt similarity index 100% rename from test/answers/copy_large_list_single_bwd_answer.csv rename to test/answers/copy_large_list_single_bwd_answer.txt diff --git a/test/answers/copy_large_list_single_fwd_answer.csv b/test/answers/copy_large_list_single_fwd_answer.txt similarity index 100% rename from test/answers/copy_large_list_single_fwd_answer.csv rename to test/answers/copy_large_list_single_fwd_answer.txt diff --git a/test/answers/copy_npy_large_f32_answer.csv b/test/answers/copy_npy_large_f32_answer.txt similarity index 100% rename from test/answers/copy_npy_large_f32_answer.csv rename to test/answers/copy_npy_large_f32_answer.txt diff --git a/test/answers/copy_npy_large_id_answer.csv b/test/answers/copy_npy_large_id_answer.txt similarity index 100% rename from test/answers/copy_npy_large_id_answer.csv rename to test/answers/copy_npy_large_id_answer.txt diff --git a/test/include/test_runner/test_group.h b/test/include/test_runner/test_group.h index fd37b11e98..e449801e47 100644 --- a/test/include/test_runner/test_group.h +++ b/test/include/test_runner/test_group.h @@ -6,7 +6,7 @@ namespace kuzu { namespace testing { struct TestStatement { - std::string name; + std::string logMessage; std::string query; uint64_t numThreads = 4; std::string encodedJoin; diff --git a/test/include/test_runner/test_parser.h b/test/include/test_runner/test_parser.h index 95d2a7a8c9..ecc5122ac4 100644 --- a/test/include/test_runner/test_parser.h +++ b/test/include/test_runner/test_parser.h @@ -23,25 +23,24 @@ enum class TokenType { ENCODED_JOIN, END_OF_STATEMENT_BLOCK, ENUMERATE, - NAME, + INSERT_STATEMENT_BLOCK, + LOG, PARALLELISM, - QUERY, RESULT, SEPARATOR, STATEMENT, - STATEMENT_BLOCK, _SKIP_LINE }; const std::unordered_map tokenMap = {{"-GROUP", TokenType::GROUP}, {"-DATASET", TokenType::DATASET}, {"-CASE", TokenType::CASE}, {"-CHECK_ORDER", TokenType::CHECK_ORDER}, {"-ENCODED_JOIN", TokenType::ENCODED_JOIN}, - {"-DEFINE_STATEMENT_BLOCK", TokenType::DEFINE_STATEMENT_BLOCK}, - {"-ENUMERATE", TokenType::ENUMERATE}, {"-NAME", TokenType::NAME}, + {"-LOG", TokenType::LOG}, {"-DEFINE_STATEMENT_BLOCK", TokenType::DEFINE_STATEMENT_BLOCK}, + {"-ENUMERATE", TokenType::ENUMERATE}, {"-BEGIN_WRITE_TRANSACTION", TokenType::BEGIN_WRITE_TRANSACTION}, - {"-PARALLELISM", TokenType::PARALLELISM}, {"-QUERY", TokenType::QUERY}, - {"-SKIP", TokenType::SKIP}, {"-DEFINE", TokenType::DEFINE}, - {"-STATEMENT", TokenType::STATEMENT}, {"-STATEMENT_BLOCK", TokenType::STATEMENT_BLOCK}, + {"-PARALLELISM", TokenType::PARALLELISM}, {"-SKIP", TokenType::SKIP}, + {"-DEFINE", TokenType::DEFINE}, {"-STATEMENT", TokenType::STATEMENT}, + {"-INSERT_STATEMENT_BLOCK", TokenType::INSERT_STATEMENT_BLOCK}, {"-BUFFER_POOL_SIZE", TokenType::BUFFER_POOL_SIZE}, {"]", TokenType::END_OF_STATEMENT_BLOCK}, {"----", TokenType::RESULT}, {"--", TokenType::SEPARATOR}, {"#", TokenType::EMPTY}}; @@ -62,7 +61,7 @@ class TestParser { std::ifstream fileStream; std::streampos previousFilePosition; std::string line; - std::string name; + std::string logMessage; std::unique_ptr testGroup; std::string extractTextBeforeNextStatement(bool ignoreLineBreak = false); std::string parseCommand(); diff --git a/test/test_files/copy/copy_dates.test b/test/test_files/copy/copy_dates.test index 0341668ead..8407e40300 100644 --- a/test/test_files/copy/copy_dates.test +++ b/test/test_files/copy/copy_dates.test @@ -4,7 +4,7 @@ -- -CASE NodePropertyColumnWithDate --QUERY MATCH (p:person) RETURN p.birthdate +-STATEMENT MATCH (p:person) RETURN p.birthdate ---- 8 1900-01-01 1900-01-01 diff --git a/test/test_files/copy/copy_dos_style_newline.test b/test/test_files/copy/copy_dos_style_newline.test index 7ca34de7ae..cfbc0faa59 100644 --- a/test/test_files/copy/copy_dos_style_newline.test +++ b/test/test_files/copy/copy_dos_style_newline.test @@ -4,7 +4,7 @@ -- -CASE DOSStyleNewlineTest --QUERY MATCH (p:person) return p.ID +-STATEMENT MATCH (p:person) return p.ID ---- 5 0 1 diff --git a/test/test_files/copy/copy_init_rel_tables.test b/test/test_files/copy/copy_init_rel_tables.test index 2e90c2e017..412eb51582 100644 --- a/test/test_files/copy/copy_init_rel_tables.test +++ b/test/test_files/copy/copy_init_rel_tables.test @@ -24,5 +24,5 @@ ---- ok -STATEMENT COPY person FROM "${KUZU_ROOT_DIRECTORY}/dataset/tinysnb/vPerson.csv" (HEADER=true); ---- ok --QUERY MATCH (:person)-[:knows]->(:person) return count(*) +-STATEMENT MATCH (:person)-[:knows]->(:person) return count(*) ---- ok diff --git a/test/test_files/copy/copy_interval.test b/test/test_files/copy/copy_interval.test index 3f81536438..138a7b6143 100644 --- a/test/test_files/copy/copy_interval.test +++ b/test/test_files/copy/copy_interval.test @@ -4,7 +4,7 @@ -- -CASE NodePropertyColumnWithInterval --QUERY MATCH (p:person) RETURN p.lastJobDuration +-STATEMENT MATCH (p:person) RETURN p.lastJobDuration ---- 8 00:18:00.024 10 years 5 months 13:00:00.000024 diff --git a/test/test_files/copy/copy_large_list.test b/test/test_files/copy/copy_large_list.test index 465a0a52cd..531352670c 100644 --- a/test/test_files/copy/copy_large_list.test +++ b/test/test_files/copy/copy_large_list.test @@ -6,39 +6,39 @@ -CASE CopyLargeList # p0 has 5001 fwd edges to p0...p5000 --NAME ForwardCheck --QUERY MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID = 0 RETURN COUNT(*) +-LOG ForwardCheck +-STATEMENT MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID = 0 RETURN COUNT(*) ---- 1 5001 --QUERY MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID = 0 RETURN p0.ID, ID(r), p1.ID +-STATEMENT MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID = 0 RETURN p0.ID, ID(r), p1.ID ---- 5001 -:copy_large_list_fwd_answer.csv +:copy_large_list_fwd_answer.txt # p0 has only 1 bwd edge, which from itself --NAME BackwardCheck --QUERY match (p0:person)<-[r:knows]-(p1:person) WHERE p0.ID = 0 RETURN p0.ID, ID(r), p1.ID +-LOG BackwardCheck +-STATEMENT match (p0:person)<-[r:knows]-(p1:person) WHERE p0.ID = 0 RETURN p0.ID, ID(r), p1.ID ---- 1 0|1:0|0 # p1,p2,...,p5000 have a single fwd edge to p5000 and 1 bwd edge from node p0 --NAME OneSingleForwardEdge --QUERY MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID > 0 AND p0.ID < 5001 AND p1.ID = 5000 RETURN p0.ID, ID(r), p1.ID +-LOG OneSingleForwardEdge +-STATEMENT MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID > 0 AND p0.ID < 5001 AND p1.ID = 5000 RETURN p0.ID, ID(r), p1.ID ---- 1 -:copy_large_list_single_fwd_answer.csv +:copy_large_list_single_fwd_answer.txt --NAME OneBackwardEdge --QUERY MATCH (p0:person)<-[r:knows]-(p1:person) WHERE p0.ID > 0 AND p0.ID < 5001 AND p1.ID = 0 RETURN p0.ID, ID(r), p1.ID; +-LOG OneBackwardEdge +-STATEMENT MATCH (p0:person)<-[r:knows]-(p1:person) WHERE p0.ID > 0 AND p0.ID < 5001 AND p1.ID = 0 RETURN p0.ID, ID(r), p1.ID; ---- 1 -:copy_large_list_single_bwd_answer.csv +:copy_large_list_single_bwd_answer.txt # p5001 to p6000 are singletons --NAME SingletonNodeForwardCheck --QUERY MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID > 5000 and p0.ID < 6000 RETURN COUNT(*) +-LOG SingletonNodeForwardCheck +-STATEMENT MATCH (p0:person)-[r:knows]->(p1:person) WHERE p0.ID > 5000 and p0.ID < 6000 RETURN COUNT(*) ---- 1 0 --NAME SingletonNodeBackwardCheck --QUERY MATCH (p0:person)<-[r:knows]-(p1:person) WHERE p0.ID > 5000 and p0.ID < 6000 RETURN COUNT(*) +-LOG SingletonNodeBackwardCheck +-STATEMENT MATCH (p0:person)<-[r:knows]-(p1:person) WHERE p0.ID > 5000 and p0.ID < 6000 RETURN COUNT(*) ---- 1 0 @@ -46,14 +46,14 @@ -SKIP -STATEMENT alter table knows add length INT64 DEFAULT 50 ---- ok --QUERY match (:person)-[e:knows]->(:person) return e.length +-STATEMENT match (:person)-[e:knows]->(:person) return e.length ---- 2 10001 50 -STATEMENT match (:person)-[e:knows]->(:person) set e.length=37 ---- ok --QUERY match (p:person)-[e:knows]->(:person) return e.length +-STATEMENT match (p:person)-[e:knows]->(:person) return e.length ---- 2 10001 37 diff --git a/test/test_files/copy/copy_lists.test b/test/test_files/copy/copy_lists.test index 850e02169b..3ee87fc986 100644 --- a/test/test_files/copy/copy_lists.test +++ b/test/test_files/copy/copy_lists.test @@ -4,7 +4,7 @@ -- -CASE NodePropertyIntColumnWithList --QUERY MATCH (p:person) RETURN p.workedHours +-STATEMENT MATCH (p:person) RETURN p.workedHours ---- 8 [1,9] [10,11,12,3,4,5,6,7] @@ -16,7 +16,7 @@ [4,5] -CASE NodePropertyStringColumnWithList --QUERY MATCH (p:person) RETURN p.usedNames +-STATEMENT MATCH (p:person) RETURN p.usedNames ---- 8 [Ad,De,Hi,Kye,Orlan] [Aida] @@ -28,7 +28,7 @@ [Wolfeschlegelstein,Daniel] -CASE RelPropertyColumnWithList --QUERY MATCH ()-[s:studyAt]-() RETURN s.places +-STATEMENT MATCH ()-[s:studyAt]-() RETURN s.places ---- 6 [anew,jsdnwusklklklwewsd] [anew,jsdnwusklklklwewsd] diff --git a/test/test_files/copy/copy_long_string.test b/test/test_files/copy/copy_long_string.test index e67b6ef0ef..f00e5b5d84 100644 --- a/test/test_files/copy/copy_long_string.test +++ b/test/test_files/copy/copy_long_string.test @@ -6,14 +6,14 @@ -CASE LongStringError -DEFINE AliceStr REPEAT 819 "Alice" --NAME LongStringAlice --QUERY MATCH (p:person) RETURN p.fName; +-LOG LongStringAlice +-STATEMENT MATCH (p:person) RETURN p.fName; ---- 2 ${AliceStr}A Bob --NAME Gender --QUERY MATCH (p:person) RETURN p.gender +-LOG Gender +-STATEMENT MATCH (p:person) RETURN p.gender ---- 2 1 2 diff --git a/test/test_files/copy/copy_multiple_files.test b/test/test_files/copy/copy_multiple_files.test index 059b8e75b8..9090f2915a 100644 --- a/test/test_files/copy/copy_multiple_files.test +++ b/test/test_files/copy/copy_multiple_files.test @@ -4,7 +4,7 @@ -- -DEFINE_STATEMENT_BLOCK VALIDATE_PERSON_TABLE_AFTER_COPYING [ --QUERY MATCH (p:person) RETURN p.ID +-STATEMENT MATCH (p:person) RETURN p.ID ---- 11 1 12 @@ -20,7 +20,7 @@ ] -DEFINE_STATEMENT_BLOCK VALIDATE_KNOWS_TABLE_AFTER_COPYING [ --QUERY MATCH (:person)-[e:knows]->(:person) RETURN e.weight +-STATEMENT MATCH (:person)-[e:knows]->(:person) RETURN e.weight ---- 8 22 25 @@ -38,22 +38,22 @@ "${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/vPerson2.csv", "${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/vPerson3.csv"] ---- ok --STATEMENT_BLOCK VALIDATE_PERSON_TABLE_AFTER_COPYING +-INSERT_STATEMENT_BLOCK VALIDATE_PERSON_TABLE_AFTER_COPYING -STATEMENT COPY knows FROM ["${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/eKnows1.csv", "${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/eKnows2.csv"] ---- ok --STATEMENT_BLOCK VALIDATE_KNOWS_TABLE_AFTER_COPYING +-INSERT_STATEMENT_BLOCK VALIDATE_KNOWS_TABLE_AFTER_COPYING -CASE CopyFilesWithWildcardPattern -STATEMENT COPY person FROM "${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/vPerson?.csv" ---- ok --STATEMENT_BLOCK VALIDATE_PERSON_TABLE_AFTER_COPYING +-INSERT_STATEMENT_BLOCK VALIDATE_PERSON_TABLE_AFTER_COPYING -STATEMENT COPY knows FROM "${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/eK*" ---- ok --STATEMENT_BLOCK VALIDATE_KNOWS_TABLE_AFTER_COPYING +-INSERT_STATEMENT_BLOCK VALIDATE_KNOWS_TABLE_AFTER_COPYING -CASE CopyFilesWithWrongPath -STATEMENT COPY person FROM ["1.csv", "${KUZU_ROOT_DIRECTORY}/dataset/copy-multiple-files-test/vPerson?.csv"] diff --git a/test/test_files/copy/copy_node_csv.test b/test/test_files/copy/copy_node_csv.test index fa14110daa..c2e73899b9 100644 --- a/test/test_files/copy/copy_node_csv.test +++ b/test/test_files/copy/copy_node_csv.test @@ -5,8 +5,8 @@ -CASE CopyNodeTest --NAME SubsetTest --QUERY MATCH (row:tableOfTypes) WHERE row.id >= 20 AND row.id <= 24 RETURN *; +-LOG SubsetTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.id >= 20 AND row.id <= 24 RETURN *; ---- 5 (label:tableOfTypes, 0:20, {id:20, int64Column:0, doubleColumn:57.579280, booleanColumn:True, dateColumn:1731-09-26, timestampColumn:1731-09-26 03:30:08, stringColumn:OdM}) (label:tableOfTypes, 0:21, {id:21, int64Column:7, doubleColumn:64.630960, booleanColumn:False, dateColumn:1307-01-26, timestampColumn:1307-01-26 03:31:08, stringColumn:AjbxHQThEtDDlOjbzMjCQSXlvGQEjcFLykESrnFHwPKX}) @@ -14,42 +14,42 @@ (label:tableOfTypes, 0:23, {id:23, int64Column:58, doubleColumn:42.774957, booleanColumn:False, dateColumn:1181-10-16, timestampColumn:1181-10-16 18:19:43, stringColumn:ISImRVpUjynGMFRQyYmeIUVjM}) (label:tableOfTypes, 0:24, {id:24, int64Column:75, doubleColumn:53.813224, booleanColumn:False, dateColumn:1942-10-24, timestampColumn:1942-10-24 09:30:16, stringColumn:naDlQ}) --NAME CheckNumLinesTest --QUERY MATCH (row:tableOfTypes) RETURN count(*) +-LOG CheckNumLinesTest +-STATEMENT MATCH (row:tableOfTypes) RETURN count(*) ---- 1 49999 --NAME CountTrueTest --QUERY MATCH (row:tableOfTypes) WHERE row.booleanColumn = True RETURN count(*) +-LOG CountTrueTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.booleanColumn = True RETURN count(*) ---- 1 24997 --NAME CountFalseTest --QUERY MATCH (row:tableOfTypes) WHERE row.booleanColumn = False RETURN count(*) +-LOG CountFalseTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.booleanColumn = False RETURN count(*) ---- 1 25002 --NAME CheckSumTest --QUERY MATCH (row:tableOfTypes) RETURN sum(row.id), sum(row.int64Column), sum(row.doubleColumn) +-LOG CheckSumTest +-STATEMENT MATCH (row:tableOfTypes) RETURN sum(row.id), sum(row.int64Column), sum(row.doubleColumn) ---- 1 1249925001|2500180|2504542.349696 --NAME EmptyStringTest --QUERY MATCH (row:tableOfTypes) WHERE row.id = 49992 RETURN *; +-LOG EmptyStringTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.id = 49992 RETURN *; ---- 1 (label:tableOfTypes, 0:49992, {id:49992, int64Column:50, doubleColumn:31.582059, booleanColumn:False, dateColumn:1551-07-19, timestampColumn:1551-07-19 16:28:31, stringColumn:}) --NAME FloatTest --QUERY MATCH (row:tableOfTypes) WHERE row.doubleColumn = 68.73718401556897 RETURN row.dateColumn; +-LOG FloatTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.doubleColumn = 68.73718401556897 RETURN row.dateColumn; ---- 1 1042-06-05 --NAME DateTest --QUERY MATCH (row:tableOfTypes) WHERE row.id = 25531 RETURN *; +-LOG DateTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.id = 25531 RETURN *; ---- 1 (label:tableOfTypes, 0:25531, {id:25531, int64Column:77, doubleColumn:28.417543, booleanColumn:False, dateColumn:1895-03-13, timestampColumn:1895-03-13 04:31:22, stringColumn:XB}) --NAME IntervalTest --QUERY MATCH (row:tableOfTypes) WHERE 0 <= row.doubleColumn AND row.doubleColumn <= 10 AND 0 <= row.int64Column AND row.int64Column <= 10 RETURN count(*); +-LOG IntervalTest +-STATEMENT MATCH (row:tableOfTypes) WHERE 0 <= row.doubleColumn AND row.doubleColumn <= 10 AND 0 <= row.int64Column AND row.int64Column <= 10 RETURN count(*); ---- 1 546 diff --git a/test/test_files/copy/copy_node_parquet.test b/test/test_files/copy/copy_node_parquet.test index 1b43a9fb1e..35163cbdf1 100644 --- a/test/test_files/copy/copy_node_parquet.test +++ b/test/test_files/copy/copy_node_parquet.test @@ -5,8 +5,8 @@ -CASE CopyNodeTest --NAME SubsetTest --QUERY MATCH (row:tableOfTypes) WHERE row.id >= 20 AND row.id <= 24 RETURN row.id, row.int64Column, row.doubleColumn, row.booleanColumn, row.dateColumn, row.timestampColumn, row.stringColumn, row.listOfInt64, row.listOfString, row.listOfListOfInt64, row.fixedSizeList, row.listOfFixedSizeList, row.structColumn; +-LOG SubsetTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.id >= 20 AND row.id <= 24 RETURN row.id, row.int64Column, row.doubleColumn, row.booleanColumn, row.dateColumn, row.timestampColumn, row.stringColumn, row.listOfInt64, row.listOfString, row.listOfListOfInt64, row.fixedSizeList, row.listOfFixedSizeList, row.structColumn; ---- 5 20|0|57.579280|True|2094-08-19|1731-09-26 03:30:08|OdM|[85,11,98,6]|[wl7evae,lLtQIMJI,vNvYnjt27]|[[131,129]]|[297,283,26]|[[36,165,199],[182,108,165],[17,120,181],[193,171,93]]|{ID: 717, NAME: 3oOf} 21|7|64.630960|False|2090-07-13|1307-01-26 03:31:08|AjbxHQThEtDDlOjbzMjCQSXlvGQEjcFLykESrnFHwPKX|[53,44,76,78]|[V0yNTz60W2i4J,LN3F2erCELm]|[[191,62],[64,259,183,130,116],[49,29,222,249,128],[222,169,22,80],[206,59]]|[114,108,207]|[[53,135,64],[173,101,155],[173,161,11],[140,113,18]]|{ID: 956, NAME: GNX5sv9V} @@ -14,42 +14,42 @@ 23|58|42.774957|False|2043-08-19|1181-10-16 18:19:43|ISImRVpUjynGMFRQyYmeIUVjM|[16,38,98,61,2]|[EzPWolZ2iCsga46o,lbhcKq7DDPeiX,yaxsyrbzolAyVWlxj,5Rlse62CKuIitVf4,yKOx0P]|[[95,209,75,7],[197],[69,244],[164,160,153,125]]|[55,59,114]|[[80,52,187],[64,175,142],[148,141,185],[90,51,49]]|{ID: 682, NAME: 06SBnT} 24|75|53.813224|False|1971-12-05|1942-10-24 09:30:16|naDlQ|[94,17,22]|[gVYovI30hQyC,b6OpP]|[[81,66],[255,44],[37]]|[262,288,66]|[[34,178,128]]|{ID: 185, NAME: 7xymBThq} --NAME CheckNumLinesTest --QUERY MATCH (row:tableOfTypes) RETURN count(*) +-LOG CheckNumLinesTest +-STATEMENT MATCH (row:tableOfTypes) RETURN count(*) ---- 1 49999 --NAME CountTrueTest --QUERY MATCH (row:tableOfTypes) WHERE row.booleanColumn = True RETURN count(*) +-LOG CountTrueTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.booleanColumn = True RETURN count(*) ---- 1 24997 --NAME CountFalseTest --QUERY MATCH (row:tableOfTypes) WHERE row.booleanColumn = False RETURN count(*) +-LOG CountFalseTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.booleanColumn = False RETURN count(*) ---- 1 25002 --NAME CheckSumTest --QUERY MATCH (row:tableOfTypes) RETURN sum(row.id), sum(row.int64Column), sum(row.doubleColumn) +-LOG CheckSumTest +-STATEMENT MATCH (row:tableOfTypes) RETURN sum(row.id), sum(row.int64Column), sum(row.doubleColumn) ---- 1 1249925001|2500180|2504542.349696 --NAME EmptyStringTest --QUERY MATCH (row:tableOfTypes) WHERE row.id = 49992 RETURN row.id, row.int64Column, row.doubleColumn, row.booleanColumn, row.dateColumn, row.timestampColumn, row.stringColumn; +-LOG EmptyStringTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.id = 49992 RETURN row.id, row.int64Column, row.doubleColumn, row.booleanColumn, row.dateColumn, row.timestampColumn, row.stringColumn; ---- 1 49992|50|31.582059|False|2056-05-02|1551-07-19 16:28:31| --NAME FloatTest --QUERY MATCH (row:tableOfTypes) WHERE row.doubleColumn = 68.73718401556897 RETURN row.dateColumn; +-LOG FloatTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.doubleColumn = 68.73718401556897 RETURN row.dateColumn; ---- 1 2055-08-09 --NAME DateTest --QUERY MATCH (row:tableOfTypes) WHERE row.id = 25531 RETURN row.id, row.int64Column, row.doubleColumn, row.booleanColumn, row.dateColumn, row.timestampColumn, row.stringColumn; +-LOG DateTest +-STATEMENT MATCH (row:tableOfTypes) WHERE row.id = 25531 RETURN row.id, row.int64Column, row.doubleColumn, row.booleanColumn, row.dateColumn, row.timestampColumn, row.stringColumn; ---- 1 25531|77|28.417543|False|2040-07-09|1895-03-13 04:31:22|XB --NAME IntervalTest --QUERY MATCH (row:tableOfTypes) WHERE 0 <= row.doubleColumn AND row.doubleColumn <= 10 AND 0 <= row.int64Column AND row.int64Column <= 10 RETURN count(*); +-LOG IntervalTest +-STATEMENT MATCH (row:tableOfTypes) WHERE 0 <= row.doubleColumn AND row.doubleColumn <= 10 AND 0 <= row.int64Column AND row.int64Column <= 10 RETURN count(*); ---- 1 546 diff --git a/test/test_files/copy/copy_npy_large.test b/test/test_files/copy/copy_npy_large.test index 96eb146614..7be89606d0 100644 --- a/test/test_files/copy/copy_npy_large.test +++ b/test/test_files/copy/copy_npy_large.test @@ -5,12 +5,12 @@ -CASE CopyLargeNpyTest --NAME ID --QUERY MATCH (n:npytable) RETURN n.id +-LOG ID +-STATEMENT MATCH (n:npytable) RETURN n.id ---- 20000 -:copy_npy_large_id_answer.csv +:copy_npy_large_id_answer.txt --NAME f32 --QUERY MATCH (n:npytable) RETURN n.f32 +-LOG f32 +-STATEMENT MATCH (n:npytable) RETURN n.f32 ---- 20000 -:copy_npy_large_f32_answer.csv +:copy_npy_large_f32_answer.txt diff --git a/test/test_files/copy/copy_npy_one_dimensional.test b/test/test_files/copy/copy_npy_one_dimensional.test index 3f70d41285..032ee93a12 100644 --- a/test/test_files/copy/copy_npy_one_dimensional.test +++ b/test/test_files/copy/copy_npy_one_dimensional.test @@ -5,36 +5,36 @@ -CASE CopyOneDimensionalNpyTest --NAME i64 --QUERY MATCH (n:npytable) RETURN n.i64 +-LOG i64 +-STATEMENT MATCH (n:npytable) RETURN n.i64 ---- 3 1 2 3 --NAME i32 --QUERY MATCH (n:npytable) RETURN n.i32 +-LOG i32 +-STATEMENT MATCH (n:npytable) RETURN n.i32 ---- 3 1 2 3 --NAME i16 --QUERY MATCH (n:npytable) RETURN n.i16 +-LOG i16 +-STATEMENT MATCH (n:npytable) RETURN n.i16 ---- 3 1 2 3 --NAME f64 --QUERY MATCH (n:npytable) RETURN n.f64 +-LOG f64 +-STATEMENT MATCH (n:npytable) RETURN n.f64 ---- 3 1.000000 2.000000 3.000000 --NAME f32 --QUERY MATCH (n:npytable) RETURN n.f32 +-LOG f32 +-STATEMENT MATCH (n:npytable) RETURN n.f32 ---- 3 1.000000 2.000000 diff --git a/test/test_files/copy/copy_npy_three_dimensional.test b/test/test_files/copy/copy_npy_three_dimensional.test index 897d91bd2e..61ab8d8d66 100644 --- a/test/test_files/copy/copy_npy_three_dimensional.test +++ b/test/test_files/copy/copy_npy_three_dimensional.test @@ -5,14 +5,14 @@ -CASE CopyThreeDimensionalNpyTest --NAME ID --QUERY MATCH (n:npytable) RETURN n.id +-LOG ID +-STATEMENT MATCH (n:npytable) RETURN n.id ---- 2 1 2 --NAME i64 --QUERY MATCH (n:npytable) RETURN n.i64 +-LOG i64 +-STATEMENT MATCH (n:npytable) RETURN n.i64 ---- 2 [1,2,3,4,5,6,7,8,9,10,11,12] [13,14,15,16,17,18,19,20,21,22,23,24] diff --git a/test/test_files/copy/copy_npy_two_dimensional.test b/test/test_files/copy/copy_npy_two_dimensional.test index 2f2ff92c0b..d527af6f04 100644 --- a/test/test_files/copy/copy_npy_two_dimensional.test +++ b/test/test_files/copy/copy_npy_two_dimensional.test @@ -5,43 +5,43 @@ -CASE CopyTwoDimensionalNpyTest --NAME ID --QUERY MATCH (n:npytable) RETURN n.id +-LOG ID +-STATEMENT MATCH (n:npytable) RETURN n.id ---- 3 1 2 3 --NAME i64 --QUERY MATCH (n:npytable) RETURN n.i64 +-LOG i64 +-STATEMENT MATCH (n:npytable) RETURN n.i64 ---- 3 [1,2,3] [4,5,6] [7,8,9] --NAME i32 --QUERY MATCH (n:npytable) RETURN n.i32 +-LOG i32 +-STATEMENT MATCH (n:npytable) RETURN n.i32 ---- 3 [1,2,3] [4,5,6] [7,8,9] --NAME i16 --QUERY MATCH (n:npytable) RETURN n.i16 +-LOG i16 +-STATEMENT MATCH (n:npytable) RETURN n.i16 ---- 3 [1,2,3] [4,5,6] [7,8,9] --NAME f64 --QUERY MATCH (n:npytable) RETURN n.f64 +-LOG f64 +-STATEMENT MATCH (n:npytable) RETURN n.f64 ---- 3 [1.000000,2.000000,3.000000] [4.000000,5.000000,6.000000] [7.000000,8.000000,9.000000] --NAME f32 --QUERY MATCH (n:npytable) RETURN n.f32 +-LOG f32 +-STATEMENT MATCH (n:npytable) RETURN n.f32 ---- 3 [1.000000,2.000000,3.000000] [4.000000,5.000000,6.000000] diff --git a/test/test_files/copy/copy_serial_pk.test b/test/test_files/copy/copy_serial_pk.test index 35057b0bc4..bd38799019 100644 --- a/test/test_files/copy/copy_serial_pk.test +++ b/test/test_files/copy/copy_serial_pk.test @@ -4,6 +4,6 @@ -- -CASE CopySerialPKTest --QUERY MATCH (:person)-[e:knows]->(:person) RETURN COUNT(*) +-STATEMENT MATCH (:person)-[e:knows]->(:person) RETURN COUNT(*) ---- 1 14 diff --git a/test/test_files/copy/copy_special_char.test b/test/test_files/copy/copy_special_char.test index 2c350cdbde..f10f86edf1 100644 --- a/test/test_files/copy/copy_special_char.test +++ b/test/test_files/copy/copy_special_char.test @@ -5,8 +5,8 @@ -CASE CopySpecialChars --NAME RandomString --QUERY MATCH (p:person) RETURN p.randomString; +-LOG RandomString +-STATEMENT MATCH (p:person) RETURN p.randomString; ---- 8 NA only one # should be recognized @@ -17,8 +17,8 @@ this is a #plain# string this is another #plain# string with \ this is |the first line --NAME OrganisationString --QUERY MATCH (o:organisation) RETURN o.name; +-LOG OrganisationString +-STATEMENT MATCH (o:organisation) RETURN o.name; ---- 3 ABFsUni CsW,ork diff --git a/test/test_files/copy/copy_timestamp.test b/test/test_files/copy/copy_timestamp.test index 7632de5e7a..a2055e7310 100644 --- a/test/test_files/copy/copy_timestamp.test +++ b/test/test_files/copy/copy_timestamp.test @@ -4,7 +4,7 @@ -- -CASE NodePropertyColumnWithTimestamp --QUERY MATCH (p:person) RETURN p.registerTime +-STATEMENT MATCH (p:person) RETURN p.registerTime ---- 8 1911-08-20 02:32:21 1972-07-31 13:22:30.678559 diff --git a/test/test_files/demo_db/demo_db.test b/test/test_files/demo_db/demo_db.test index 6e844b81e1..835e9213c4 100644 --- a/test/test_files/demo_db/demo_db.test +++ b/test/test_files/demo_db/demo_db.test @@ -5,23 +5,23 @@ -CASE DemoDBTest --NAME Limit1 --QUERY MATCH (u:User) RETURN u.name ORDER BY u.age DESC LIMIT 3; +-LOG Limit1 +-STATEMENT MATCH (u:User) RETURN u.name ORDER BY u.age DESC LIMIT 3; ---- 3 Zhang Karissa Adam --NAME MatchSingleNodeLabel --QUERY MATCH (a:User) RETURN a; +-LOG MatchSingleNodeLabel +-STATEMENT MATCH (a:User) RETURN a; ---- 4 (label:User, 0:0, {name:Adam, age:30}) (label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:2, {name:Zhang, age:50}) (label:User, 0:3, {name:Noura, age:25}) --NAME MatchMultipleNodeLabels --QUERY MATCH (a:User:City) RETURN a; +-LOG MatchMultipleNodeLabels +-STATEMENT MATCH (a:User:City) RETURN a; ---- 7 (label:City, 1:0, {name:Waterloo, age:, population:150000}) (label:City, 1:1, {name:Kitchener, age:, population:200000}) @@ -31,8 +31,8 @@ Adam (label:User, 0:2, {name:Zhang, age:50, population:}) (label:User, 0:3, {name:Noura, age:25, population:}) --NAME MatchAnyNodeLabel --QUERY MATCH (a) RETURN a; +-LOG MatchAnyNodeLabel +-STATEMENT MATCH (a) RETURN a; ---- 7 (label:City, 1:0, {name:Waterloo, age:, population:150000}) (label:City, 1:1, {name:Kitchener, age:, population:200000}) @@ -42,16 +42,16 @@ Adam (label:User, 0:2, {name:Zhang, age:50, population:}) (label:User, 0:3, {name:Noura, age:25, population:}) --NAME MatchSingleRelLabel --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, e, b.name; +-LOG MatchSingleRelLabel +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, e, b.name; ---- 4 Adam|(0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1)|Karissa Adam|(0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2)|Zhang Karissa|(0:1)-[label:Follows, {_id:2:2, since:2021}]->(0:2)|Zhang Zhang|(0:2)-[label:Follows, {_id:2:3, since:2022}]->(0:3)|Noura --NAME MatchMultipleRelLabels --QUERY MATCH (a:User)-[e:Follows|:LivesIn]->(b:User:City) RETURN a.name, e, b.name; +-LOG MatchMultipleRelLabels +-STATEMENT MATCH (a:User)-[e:Follows|:LivesIn]->(b:User:City) RETURN a.name, e, b.name; ---- 8 Adam|(0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1)|Karissa Adam|(0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2)|Zhang @@ -62,8 +62,8 @@ Noura|(0:3)-[label:LivesIn, {_id:3:3, since:}]->(1:2)|Guelph Zhang|(0:2)-[label:Follows, {_id:2:3, since:2022}]->(0:3)|Noura Zhang|(0:2)-[label:LivesIn, {_id:3:2, since:}]->(1:1)|Kitchener --NAME MatchAnyRelLabel --QUERY MATCH ()-[e]->() RETURN e; +-LOG MatchAnyRelLabel +-STATEMENT MATCH ()-[e]->() RETURN e; ---- 8 (0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1) (0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2) @@ -74,53 +74,53 @@ Zhang|(0:2)-[label:LivesIn, {_id:3:2, since:}]->(1:1)|Kitchener (0:2)-[label:LivesIn, {_id:3:2, since:}]->(1:1) (0:3)-[label:LivesIn, {_id:3:3, since:}]->(1:2) --NAME MatchUndirected --QUERY MATCH (a:User)-[e:Follows]-(b:User) WHERE a.name = 'Karissa' RETURN b.name; +-LOG MatchUndirected +-STATEMENT MATCH (a:User)-[e:Follows]-(b:User) WHERE a.name = 'Karissa' RETURN b.name; ---- 2 Adam Zhang --NAME MatchTwoHop --QUERY MATCH (a:User)-[:Follows]->(:User)-[:LivesIn]->(c:City) WHERE a.name = "Adam" RETURN a, c.name, c.population; +-LOG MatchTwoHop +-STATEMENT MATCH (a:User)-[:Follows]->(:User)-[:LivesIn]->(c:City) WHERE a.name = "Adam" RETURN a, c.name, c.population; ---- 2 (label:User, 0:0, {name:Adam, age:30})|Kitchener|200000 (label:User, 0:0, {name:Adam, age:30})|Waterloo|150000 --NAME MatchCyclic --QUERY MATCH (a:User)-[:Follows]->(b:User)-[:Follows]->(c:User), (a)-[:Follows]->(c) RETURN a.name, b.name, c.name; +-LOG MatchCyclic +-STATEMENT MATCH (a:User)-[:Follows]->(b:User)-[:Follows]->(c:User), (a)-[:Follows]->(c) RETURN a.name, b.name, c.name; ---- 1 Adam|Karissa|Zhang --NAME MatchFilter --QUERY MATCH (a:User)-[e:Follows {since: 2020}]->(b:User {name: "Zhang"}) RETURN a, e.since, b.name; +-LOG MatchFilter +-STATEMENT MATCH (a:User)-[e:Follows {since: 2020}]->(b:User {name: "Zhang"}) RETURN a, e.since, b.name; ---- 1 (label:User, 0:0, {name:Adam, age:30})|2020|Zhang --NAME MatchVarLen --QUERY MATCH (a:User)-[e:Follows*1..2]->(b:User) WHERE a.name = 'Adam' RETURN b.name, length(e) AS length; +-LOG MatchVarLen +-STATEMENT MATCH (a:User)-[e:Follows*1..2]->(b:User) WHERE a.name = 'Adam' RETURN b.name, length(e) AS length; ---- 4 Karissa|1 Zhang|2 Zhang|1 Noura|2 --NAME MatchUndirectedVarLen --QUERY MATCH (a:User)-[e*2..2]-(b) WHERE a.name = 'Noura' AND b.name <> 'Noura' RETURN b.name, length(e) AS length; +-LOG MatchUndirectedVarLen +-STATEMENT MATCH (a:User)-[e*2..2]-(b) WHERE a.name = 'Noura' AND b.name <> 'Noura' RETURN b.name, length(e) AS length; ---- 3 Adam|2 Karissa|2 Kitchener|2 --NAME ReturnVarLen --QUERY MATCH (a:User)-[e:Follows*1..2]->(b:User) WHERE a.name = 'Adam' RETURN b.name, e; +-LOG ReturnVarLen +-STATEMENT MATCH (a:User)-[e:Follows*1..2]->(b:User) WHERE a.name = 'Adam' RETURN b.name, e; ---- 4 Karissa|{_NODES: [{_ID: 0:0, NAME: Adam, AGE: 30},{_ID: 0:1, NAME: Karissa, AGE: 40}], _RELS: [{_ID: 2:0, SINCE: 2020}]} Noura|{_NODES: [{_ID: 0:0, NAME: Adam, AGE: 30},{_ID: 0:2, NAME: Zhang, AGE: 50},{_ID: 0:3, NAME: Noura, AGE: 25}], _RELS: [{_ID: 2:1, SINCE: 2020},{_ID: 2:3, SINCE: 2022}]} Zhang|{_NODES: [{_ID: 0:0, NAME: Adam, AGE: 30},{_ID: 0:1, NAME: Karissa, AGE: 40},{_ID: 0:2, NAME: Zhang, AGE: 50}], _RELS: [{_ID: 2:0, SINCE: 2020},{_ID: 2:2, SINCE: 2021}]} Zhang|{_NODES: [{_ID: 0:0, NAME: Adam, AGE: 30},{_ID: 0:2, NAME: Zhang, AGE: 50}], _RELS: [{_ID: 2:1, SINCE: 2020}]} --NAME ShortestPath --QUERY MATCH (a:User)-[e* SHORTEST 1..4]->(b:City) WHERE a.name = 'Adam' RETURN b.name, length(e) AS length; +-LOG ShortestPath +-STATEMENT MATCH (a:User)-[e* SHORTEST 1..4]->(b:City) WHERE a.name = 'Adam' RETURN b.name, length(e) AS length; -PARALLELISM 1 ---- 3 Guelph|3 @@ -128,8 +128,8 @@ Kitchener|2 Waterloo|1 --NAME OptionalMatch1 --QUERY MATCH (u:User) OPTIONAL MATCH (u)-[:Follows]->(u1:User) RETURN u.name, u1.name; +-LOG OptionalMatch1 +-STATEMENT MATCH (u:User) OPTIONAL MATCH (u)-[:Follows]->(u1:User) RETURN u.name, u1.name; ---- 5 Adam|Karissa Adam|Zhang @@ -137,128 +137,128 @@ Karissa|Zhang Zhang|Noura Noura| --NAME Return1 --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a, e; +-LOG Return1 +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a, e; ---- 4 (label:User, 0:0, {name:Adam, age:30})|(0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1) (label:User, 0:0, {name:Adam, age:30})|(0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2) (label:User, 0:1, {name:Karissa, age:40})|(0:1)-[label:Follows, {_id:2:2, since:2021}]->(0:2) (label:User, 0:2, {name:Zhang, age:50})|(0:2)-[label:Follows, {_id:2:3, since:2022}]->(0:3) --NAME Return2 --QUERY MATCH (a:User)-[:Follows]->(b:User) RETURN *; +-LOG Return2 +-STATEMENT MATCH (a:User)-[:Follows]->(b:User) RETURN *; ---- 4 (label:User, 0:0, {name:Adam, age:30})|(label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:0, {name:Adam, age:30})|(label:User, 0:2, {name:Zhang, age:50}) (label:User, 0:1, {name:Karissa, age:40})|(label:User, 0:2, {name:Zhang, age:50}) (label:User, 0:2, {name:Zhang, age:50})|(label:User, 0:3, {name:Noura, age:25}) --NAME Return3 --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, a.age, e.since; +-LOG Return3 +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, a.age, e.since; ---- 4 Adam|30|2020 Adam|30|2020 Karissa|40|2021 Zhang|50|2022 --NAME ReturnDistinct --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN DISTINCT a.name, a.age, e.since; +-LOG ReturnDistinct +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN DISTINCT a.name, a.age, e.since; ---- 3 Adam|30|2020 Karissa|40|2021 Zhang|50|2022 --NAME ReturnGroupByAgg --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a, avg(b.age) as avgFriendAge; +-LOG ReturnGroupByAgg +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a, avg(b.age) as avgFriendAge; ---- 3 (label:User, 0:0, {name:Adam, age:30})|45.000000 (label:User, 0:1, {name:Karissa, age:40})|50.000000 (label:User, 0:2, {name:Zhang, age:50})|25.000000 --NAME ReturnGroupByAgg2 --QUERY MATCH (u:User)-[:LivesIn]->(c:City) RETURN c.name, COUNT(*); +-LOG ReturnGroupByAgg2 +-STATEMENT MATCH (u:User)-[:LivesIn]->(c:City) RETURN c.name, COUNT(*); ---- 3 Guelph|1 Kitchener|1 Waterloo|2 --NAME Skip1 --QUERY MATCH (u:User) RETURN u.name ORDER BY u.age SKIP 2; +-LOG Skip1 +-STATEMENT MATCH (u:User) RETURN u.name ORDER BY u.age SKIP 2; ---- 2 Karissa Zhang --NAME Union1 --QUERY MATCH (u1:User)-[:LivesIn]->(c1:City) WHERE c1.name = "Waterloo" RETURN u1.name UNION ALL MATCH (u2:User)-[:LivesIn]->(c2:City) WHERE c2.name = "Kitchener" RETURN u2.name; +-LOG Union1 +-STATEMENT MATCH (u1:User)-[:LivesIn]->(c1:City) WHERE c1.name = "Waterloo" RETURN u1.name UNION ALL MATCH (u2:User)-[:LivesIn]->(c2:City) WHERE c2.name = "Kitchener" RETURN u2.name; ---- 3 Karissa Adam Zhang --NAME Union2 --QUERY MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION ALL MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; +-LOG Union2 +-STATEMENT MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION ALL MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; ---- 3 30 40 30 --NAME Union3 --QUERY MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; +-LOG Union3 +-STATEMENT MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; ---- 2 30 40 --NAME Unwind1 --QUERY UNWIND ["Amy", "Bob", "Carol"] AS x RETURN 'name' as name, x; +-LOG Unwind1 +-STATEMENT UNWIND ["Amy", "Bob", "Carol"] AS x RETURN 'name' as name, x; ---- 3 name|Amy name|Bob name|Carol --NAME Unwind2 --QUERY UNWIND [["Amy"], ["Bob", "Carol"]] AS x RETURN x; +-LOG Unwind2 +-STATEMENT UNWIND [["Amy"], ["Bob", "Carol"]] AS x RETURN x; ---- 2 [Amy] [Bob,Carol] --NAME Where1 --QUERY MATCH (a:User) WHERE a.age > 45 OR starts_with(a.name, "Kar") RETURN *; +-LOG Where1 +-STATEMENT MATCH (a:User) WHERE a.age > 45 OR starts_with(a.name, "Kar") RETURN *; ---- 2 (label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:2, {name:Zhang, age:50}) --NAME Where2 --QUERY MATCH (a:User) WHERE a.age IS NOT NULL AND starts_with(a.name, "Kar") RETURN *; +-LOG Where2 +-STATEMENT MATCH (a:User) WHERE a.age IS NOT NULL AND starts_with(a.name, "Kar") RETURN *; ---- 1 (label:User, 0:1, {name:Karissa, age:40}) --NAME WhereExists1 --QUERY MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User)} RETURN a.name, a.age; +-LOG WhereExists1 +-STATEMENT MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User)} RETURN a.name, a.age; ---- 1 Adam|30 --NAME WhereExists2 --QUERY MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)-[:Follows]->(c:User)} } RETURN a.name, a.age; +-LOG WhereExists2 +-STATEMENT MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)-[:Follows]->(c:User)} } RETURN a.name, a.age; ---- 0 --NAME WhereExists3 --QUERY MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)<-[:Follows]-(c:User)} } RETURN a.name, a.age; +-LOG WhereExists3 +-STATEMENT MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)<-[:Follows]-(c:User)} } RETURN a.name, a.age; ---- 1 Adam|30 --NAME With1 --QUERY MATCH (a:User) WITH avg(a.age) as avgAge MATCH (b:User) WHERE b.age > avgAge RETURN *; +-LOG With1 +-STATEMENT MATCH (a:User) WITH avg(a.age) as avgAge MATCH (b:User) WHERE b.age > avgAge RETURN *; ---- 2 36.250000|(label:User, 0:1, {name:Karissa, age:40}) 36.250000|(label:User, 0:2, {name:Zhang, age:50}) --NAME With2 --QUERY MATCH (a:User) WITH a ORDER BY a.age DESC LIMIT 1 MATCH (a)-[:Follows]->(b:User) RETURN *; +-LOG With2 +-STATEMENT MATCH (a:User) WITH a ORDER BY a.age DESC LIMIT 1 MATCH (a)-[:Follows]->(b:User) RETURN *; ---- 1 (label:User, 0:2, {name:Zhang, age:50})|(label:User, 0:3, {name:Noura, age:25}) --NAME Undir1 --QUERY MATCH (a:User)-[:Follows]-(b:User) RETURN a.name, b.age; +-LOG Undir1 +-STATEMENT MATCH (a:User)-[:Follows]-(b:User) RETURN a.name, b.age; ---- 8 Adam|40 Adam|50 @@ -269,8 +269,8 @@ Zhang|30 Zhang|40 Noura|50 --NAME Undir2 --QUERY MATCH (a:User)-[:LivesIn]-(c:City) RETURN a.name, c.name; +-LOG Undir2 +-STATEMENT MATCH (a:User)-[:LivesIn]-(c:City) RETURN a.name, c.name; ---- 8 Adam|Waterloo Karissa|Waterloo @@ -281,7 +281,7 @@ Waterloo|Adam Kitchener|Zhang Guelph|Noura --NAME Undir3 --QUERY MATCH ()-[]-() RETURN COUNT(*); +-LOG Undir3 +-STATEMENT MATCH ()-[]-() RETURN COUNT(*); ---- 1 16 diff --git a/test/test_files/demo_db/demo_db_create.test b/test/test_files/demo_db/demo_db_create.test index 680caf31dd..48b12f1083 100644 --- a/test/test_files/demo_db/demo_db_create.test +++ b/test/test_files/demo_db/demo_db_create.test @@ -6,14 +6,14 @@ -CASE CreateNodeTest1 -STATEMENT CREATE (u:User {name: 'Alice', age: 35}) ---- ok --QUERY MATCH (a:User) WHERE a.name = 'Alice' RETURN a.name, a.age +-STATEMENT MATCH (a:User) WHERE a.name = 'Alice' RETURN a.name, a.age ---- 1 Alice|35 -CASE CreateNodeTest2 -STATEMENT CREATE (u:User {name: 'Dimitri'}) ---- ok --QUERY MATCH (a:User) WHERE a.name = 'Dimitri' RETURN a.name, a.age +-STATEMENT MATCH (a:User) WHERE a.name = 'Dimitri' RETURN a.name, a.age ---- 1 Dimitri| @@ -23,7 +23,7 @@ Dimitri| -STATEMENT MATCH (a:User) WHERE a.name = 'Adam' WITH a MATCH (b:User) WHERE b.name = 'Alice' WITH a, b CREATE (a)-[e:Follows {since:1990}]->(b) ---- ok -CHECK_ORDER --QUERY MATCH (a:User)-[:Follows]->(b:User) WHERE a.name = 'Adam' RETURN b.name ORDER BY b.name +-STATEMENT MATCH (a:User)-[:Follows]->(b:User) WHERE a.name = 'Adam' RETURN b.name ORDER BY b.name ---- 3 Alice Karissa @@ -33,7 +33,7 @@ Zhang -STATEMENT MATCH (a:User), (b:User) WHERE a.name='Zhang' AND b.name='Karissa' CREATE (a)-[:Follows {since:2022}]->(b) ---- ok -CHECK_ORDER --QUERY MATCH (a:User)-[:Follows]->(b:User) WHERE a.name = 'Zhang' RETURN b.name ORDER BY b.name +-STATEMENT MATCH (a:User)-[:Follows]->(b:User) WHERE a.name = 'Zhang' RETURN b.name ORDER BY b.name ---- 2 Karissa Noura @@ -42,7 +42,7 @@ Noura -STATEMENT MATCH (a:User) WHERE a.name = 'Adam' CREATE (a)-[:Follows]->(b:User {name:'Alice'}) ---- ok -CHECK_ORDER --QUERY MATCH (a:User) WITH a, avg(a.age) AS b, SUM(a.age) AS c, COUNT(a.age) AS d, COUNT(*) AS e RETURN a, b, c,d, e ORDER BY c DESC +-STATEMENT MATCH (a:User) WITH a, avg(a.age) AS b, SUM(a.age) AS c, COUNT(a.age) AS d, COUNT(*) AS e RETURN a, b, c,d, e ORDER BY c DESC ---- 5 (label:User, 0:4, {name:Alice, age:})|||0|1 (label:User, 0:2, {name:Zhang, age:50})|50.000000|50|1|1 diff --git a/test/test_files/demo_db/demo_db_delete.test b/test/test_files/demo_db/demo_db_delete.test index 7e84961edc..6de2ea709d 100644 --- a/test/test_files/demo_db/demo_db_delete.test +++ b/test/test_files/demo_db/demo_db_delete.test @@ -6,18 +6,18 @@ -CASE DeleteNodeTest -STATEMENT CREATE (u:User {name: 'Alice', age: 35}) ---- ok --QUERY MATCH (u:User) RETURN COUNT(*) +-STATEMENT MATCH (u:User) RETURN COUNT(*) ---- 1 5 -STATEMENT MATCH (u:User) WHERE u.name = 'Alice' DELETE u ---- ok --QUERY MATCH (u:User) RETURN COUNT(*) +-STATEMENT MATCH (u:User) RETURN COUNT(*) ---- 1 4 -CASE DeleteRelTest -STATEMENT MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name = 'Adam' AND u1.name = 'Karissa' DELETE f ---- ok --QUERY MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name='Adam' RETURN u1.name +-STATEMENT MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name='Adam' RETURN u1.name ---- 1 Zhang diff --git a/test/test_files/demo_db/demo_db_order.test b/test/test_files/demo_db/demo_db_order.test index 4b0a223db7..8a6c0d144b 100644 --- a/test/test_files/demo_db/demo_db_order.test +++ b/test/test_files/demo_db/demo_db_order.test @@ -5,25 +5,25 @@ -CASE DemoDBOrderedTest --NAME OrderBy1 +-LOG OrderBy1 -CHECK_ORDER --QUERY MATCH (u:User) RETURN u.name, u.age ORDER BY u.age; +-STATEMENT MATCH (u:User) RETURN u.name, u.age ORDER BY u.age; ---- 4 Noura|25 Adam|30 Karissa|40 Zhang|50 --NAME OrderBy2 +-LOG OrderBy2 -CHECK_ORDER --QUERY MATCH (u:User)-[:LivesIn]->(c:City) WHERE c.name = "Waterloo" RETURN u.name, u.age ORDER BY u.age DESC; +-STATEMENT MATCH (u:User)-[:LivesIn]->(c:City) WHERE c.name = "Waterloo" RETURN u.name, u.age ORDER BY u.age DESC; ---- 2 Karissa|40 Adam|30 --NAME OrderBy3 +-LOG OrderBy3 -CHECK_ORDER --QUERY MATCH (a:User)-[:Follows]->(b:User) RETURN b.age, a.name ORDER BY b.age DESC, a.name DESC; +-STATEMENT MATCH (a:User)-[:Follows]->(b:User) RETURN b.age, a.name ORDER BY b.age DESC, a.name DESC; ---- 4 50|Karissa 50|Adam diff --git a/test/test_files/demo_db/demo_db_order_parquet.test b/test/test_files/demo_db/demo_db_order_parquet.test index 180546610f..ff094db635 100644 --- a/test/test_files/demo_db/demo_db_order_parquet.test +++ b/test/test_files/demo_db/demo_db_order_parquet.test @@ -5,25 +5,25 @@ -CASE DemoDBOrderedTestFromParquet --NAME OrderBy1 +-LOG OrderBy1 -CHECK_ORDER --QUERY MATCH (u:User) RETURN u.name, u.age ORDER BY u.age; +-STATEMENT MATCH (u:User) RETURN u.name, u.age ORDER BY u.age; ---- 4 Noura|25 Adam|30 Karissa|40 Zhang|50 --NAME OrderBy2 +-LOG OrderBy2 -CHECK_ORDER --QUERY MATCH (u:User)-[:LivesIn]->(c:City) WHERE c.name = "Waterloo" RETURN u.name, u.age ORDER BY u.age DESC; +-STATEMENT MATCH (u:User)-[:LivesIn]->(c:City) WHERE c.name = "Waterloo" RETURN u.name, u.age ORDER BY u.age DESC; ---- 2 Karissa|40 Adam|30 --NAME OrderBy3 +-LOG OrderBy3 -CHECK_ORDER --QUERY MATCH (a:User)-[:Follows]->(b:User) RETURN b.age, a.name ORDER BY b.age DESC, a.name DESC; +-STATEMENT MATCH (a:User)-[:Follows]->(b:User) RETURN b.age, a.name ORDER BY b.age DESC, a.name DESC; ---- 4 50|Karissa 50|Adam diff --git a/test/test_files/demo_db/demo_db_parquet.test b/test/test_files/demo_db/demo_db_parquet.test index 322acd392d..fce9f88e32 100644 --- a/test/test_files/demo_db/demo_db_parquet.test +++ b/test/test_files/demo_db/demo_db_parquet.test @@ -5,23 +5,23 @@ -CASE DemoDBTestFromParquet --NAME Limit1 --QUERY MATCH (u:User) RETURN u.name ORDER BY u.age DESC LIMIT 3; +-LOG Limit1 +-STATEMENT MATCH (u:User) RETURN u.name ORDER BY u.age DESC LIMIT 3; ---- 3 Zhang Karissa Adam --NAME MatchSingleNodeLabel --QUERY MATCH (a:User) RETURN a; +-LOG MatchSingleNodeLabel +-STATEMENT MATCH (a:User) RETURN a; ---- 4 (label:User, 0:0, {name:Adam, age:30}) (label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:2, {name:Zhang, age:50}) (label:User, 0:3, {name:Noura, age:25}) --NAME MatchMultipleNodeLabels --QUERY MATCH (a:User:City) RETURN a; +-LOG MatchMultipleNodeLabels +-STATEMENT MATCH (a:User:City) RETURN a; ---- 7 (label:City, 1:0, {name:Waterloo, age:, population:150000}) (label:City, 1:1, {name:Kitchener, age:, population:200000}) @@ -31,8 +31,8 @@ Adam (label:User, 0:2, {name:Zhang, age:50, population:}) (label:User, 0:3, {name:Noura, age:25, population:}) --NAME MatchAnyNodeLabel --QUERY MATCH (a) RETURN a; +-LOG MatchAnyNodeLabel +-STATEMENT MATCH (a) RETURN a; ---- 7 (label:City, 1:0, {name:Waterloo, age:, population:150000}) (label:City, 1:1, {name:Kitchener, age:, population:200000}) @@ -42,16 +42,16 @@ Adam (label:User, 0:2, {name:Zhang, age:50, population:}) (label:User, 0:3, {name:Noura, age:25, population:}) --NAME MatchSingleRelLabel --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, e, b.name; +-LOG MatchSingleRelLabel +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, e, b.name; ---- 4 Adam|(0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1)|Karissa Adam|(0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2)|Zhang Karissa|(0:1)-[label:Follows, {_id:2:2, since:2021}]->(0:2)|Zhang Zhang|(0:2)-[label:Follows, {_id:2:3, since:2022}]->(0:3)|Noura --NAME MatchMultipleRelLabels --QUERY MATCH (a:User)-[e:Follows|:LivesIn]->(b:User:City) RETURN a.name, e, b.name; +-LOG MatchMultipleRelLabels +-STATEMENT MATCH (a:User)-[e:Follows|:LivesIn]->(b:User:City) RETURN a.name, e, b.name; ---- 8 Adam|(0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1)|Karissa Adam|(0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2)|Zhang @@ -62,8 +62,8 @@ Noura|(0:3)-[label:LivesIn, {_id:3:3, since:}]->(1:2)|Guelph Zhang|(0:2)-[label:Follows, {_id:2:3, since:2022}]->(0:3)|Noura Zhang|(0:2)-[label:LivesIn, {_id:3:2, since:}]->(1:1)|Kitchener --NAME MatchAnyRelLabel --QUERY MATCH ()-[e]->() RETURN e; +-LOG MatchAnyRelLabel +-STATEMENT MATCH ()-[e]->() RETURN e; ---- 8 (0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1) (0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2) @@ -74,24 +74,24 @@ Zhang|(0:2)-[label:LivesIn, {_id:3:2, since:}]->(1:1)|Kitchener (0:2)-[label:LivesIn, {_id:3:2, since:}]->(1:1) (0:3)-[label:LivesIn, {_id:3:3, since:}]->(1:2) --NAME MatchTwoHop --QUERY MATCH (a:User)-[:Follows]->(:User)-[:LivesIn]->(c:City) WHERE a.name = "Adam" RETURN a, c.name, c.population; +-LOG MatchTwoHop +-STATEMENT MATCH (a:User)-[:Follows]->(:User)-[:LivesIn]->(c:City) WHERE a.name = "Adam" RETURN a, c.name, c.population; ---- 2 (label:User, 0:0, {name:Adam, age:30})|Kitchener|200000 (label:User, 0:0, {name:Adam, age:30})|Waterloo|150000 --NAME MatchCyclic --QUERY MATCH (a:User)-[:Follows]->(b:User)-[:Follows]->(c:User), (a)-[:Follows]->(c) RETURN a.name, b.name, c.name; +-LOG MatchCyclic +-STATEMENT MATCH (a:User)-[:Follows]->(b:User)-[:Follows]->(c:User), (a)-[:Follows]->(c) RETURN a.name, b.name, c.name; ---- 1 Adam|Karissa|Zhang --NAME MatchFilter --QUERY MATCH (a:User)-[e:Follows {since: 2020}]->(b:User {name: "Zhang"}) RETURN a, e.since, b.name; +-LOG MatchFilter +-STATEMENT MATCH (a:User)-[e:Follows {since: 2020}]->(b:User {name: "Zhang"}) RETURN a, e.since, b.name; ---- 1 (label:User, 0:0, {name:Adam, age:30})|2020|Zhang --NAME MatchVarLen --QUERY MATCH (a:User)-[:Follows*1..2]->(b:User) RETURN a, b; +-LOG MatchVarLen +-STATEMENT MATCH (a:User)-[:Follows*1..2]->(b:User) RETURN a, b; ---- 7 (label:User, 0:0, {name:Adam, age:30})|(label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:0, {name:Adam, age:30})|(label:User, 0:2, {name:Zhang, age:50}) @@ -101,8 +101,8 @@ Adam|Karissa|Zhang (label:User, 0:1, {name:Karissa, age:40})|(label:User, 0:3, {name:Noura, age:25}) (label:User, 0:2, {name:Zhang, age:50})|(label:User, 0:3, {name:Noura, age:25}) --NAME OptionalMatch1 --QUERY MATCH (u:User) OPTIONAL MATCH (u)-[:Follows]->(u1:User) RETURN u.name, u1.name; +-LOG OptionalMatch1 +-STATEMENT MATCH (u:User) OPTIONAL MATCH (u)-[:Follows]->(u1:User) RETURN u.name, u1.name; ---- 5 Adam|Karissa Adam|Zhang @@ -110,128 +110,128 @@ Karissa|Zhang Zhang|Noura Noura| --NAME Return1 --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a, e; +-LOG Return1 +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a, e; ---- 4 (label:User, 0:0, {name:Adam, age:30})|(0:0)-[label:Follows, {_id:2:0, since:2020}]->(0:1) (label:User, 0:0, {name:Adam, age:30})|(0:0)-[label:Follows, {_id:2:1, since:2020}]->(0:2) (label:User, 0:1, {name:Karissa, age:40})|(0:1)-[label:Follows, {_id:2:2, since:2021}]->(0:2) (label:User, 0:2, {name:Zhang, age:50})|(0:2)-[label:Follows, {_id:2:3, since:2022}]->(0:3) --NAME Return2 --QUERY MATCH (a:User)-[:Follows]->(b:User) RETURN *; +-LOG Return2 +-STATEMENT MATCH (a:User)-[:Follows]->(b:User) RETURN *; ---- 4 (label:User, 0:0, {name:Adam, age:30})|(label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:0, {name:Adam, age:30})|(label:User, 0:2, {name:Zhang, age:50}) (label:User, 0:1, {name:Karissa, age:40})|(label:User, 0:2, {name:Zhang, age:50}) (label:User, 0:2, {name:Zhang, age:50})|(label:User, 0:3, {name:Noura, age:25}) --NAME Return3 --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, a.age, e.since; +-LOG Return3 +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a.name, a.age, e.since; ---- 4 Adam|30|2020 Adam|30|2020 Karissa|40|2021 Zhang|50|2022 --NAME ReturnDistinct --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN DISTINCT a.name, a.age, e.since; +-LOG ReturnDistinct +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN DISTINCT a.name, a.age, e.since; ---- 3 Adam|30|2020 Karissa|40|2021 Zhang|50|2022 --NAME ReturnGroupByAgg --QUERY MATCH (a:User)-[e:Follows]->(b:User) RETURN a, avg(b.age) as avgFriendAge; +-LOG ReturnGroupByAgg +-STATEMENT MATCH (a:User)-[e:Follows]->(b:User) RETURN a, avg(b.age) as avgFriendAge; ---- 3 (label:User, 0:0, {name:Adam, age:30})|45.000000 (label:User, 0:1, {name:Karissa, age:40})|50.000000 (label:User, 0:2, {name:Zhang, age:50})|25.000000 --NAME ReturnGroupByAgg2 --QUERY MATCH (u:User)-[:LivesIn]->(c:City) RETURN c.name, COUNT(*); +-LOG ReturnGroupByAgg2 +-STATEMENT MATCH (u:User)-[:LivesIn]->(c:City) RETURN c.name, COUNT(*); ---- 3 Guelph|1 Kitchener|1 Waterloo|2 --NAME Skip1 --QUERY MATCH (u:User) RETURN u.name ORDER BY u.age SKIP 2; +-LOG Skip1 +-STATEMENT MATCH (u:User) RETURN u.name ORDER BY u.age SKIP 2; ---- 2 Karissa Zhang --NAME Union1 --QUERY MATCH (u1:User)-[:LivesIn]->(c1:City) WHERE c1.name = "Waterloo" RETURN u1.name UNION ALL MATCH (u2:User)-[:LivesIn]->(c2:City) WHERE c2.name = "Kitchener" RETURN u2.name; +-LOG Union1 +-STATEMENT MATCH (u1:User)-[:LivesIn]->(c1:City) WHERE c1.name = "Waterloo" RETURN u1.name UNION ALL MATCH (u2:User)-[:LivesIn]->(c2:City) WHERE c2.name = "Kitchener" RETURN u2.name; ---- 3 Karissa Adam Zhang --NAME Union2 --QUERY MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION ALL MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; +-LOG Union2 +-STATEMENT MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION ALL MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; ---- 3 30 40 30 --NAME Union3 --QUERY MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; +-LOG Union3 +-STATEMENT MATCH (u1:User)-[:Follows]->(u2:User) WHERE u2.name = 'Zhang' RETURN u1.age UNION MATCH (u3:User)-[:Follows]->(u4:User) WHERE u4.name = 'Karissa' RETURN u3.age; ---- 2 30 40 --NAME Unwind1 --QUERY UNWIND ["Amy", "Bob", "Carol"] AS x RETURN 'name' as name, x; +-LOG Unwind1 +-STATEMENT UNWIND ["Amy", "Bob", "Carol"] AS x RETURN 'name' as name, x; ---- 3 name|Amy name|Bob name|Carol --NAME Unwind2 --QUERY UNWIND [["Amy"], ["Bob", "Carol"]] AS x RETURN x; +-LOG Unwind2 +-STATEMENT UNWIND [["Amy"], ["Bob", "Carol"]] AS x RETURN x; ---- 2 [Amy] [Bob,Carol] --NAME Where1 --QUERY MATCH (a:User) WHERE a.age > 45 OR starts_with(a.name, "Kar") RETURN *; +-LOG Where1 +-STATEMENT MATCH (a:User) WHERE a.age > 45 OR starts_with(a.name, "Kar") RETURN *; ---- 2 (label:User, 0:1, {name:Karissa, age:40}) (label:User, 0:2, {name:Zhang, age:50}) --NAME Where2 --QUERY MATCH (a:User) WHERE a.age IS NOT NULL AND starts_with(a.name, "Kar") RETURN *; +-LOG Where2 +-STATEMENT MATCH (a:User) WHERE a.age IS NOT NULL AND starts_with(a.name, "Kar") RETURN *; ---- 1 (label:User, 0:1, {name:Karissa, age:40}) --NAME WhereExists1 --QUERY MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User)} RETURN a.name, a.age; +-LOG WhereExists1 +-STATEMENT MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User)} RETURN a.name, a.age; ---- 1 Adam|30 --NAME WhereExists2 --QUERY MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)-[:Follows]->(c:User)} } RETURN a.name, a.age; +-LOG WhereExists2 +-STATEMENT MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)-[:Follows]->(c:User)} } RETURN a.name, a.age; ---- 0 --NAME WhereExists3 --QUERY MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)<-[:Follows]-(c:User)} } RETURN a.name, a.age; +-LOG WhereExists3 +-STATEMENT MATCH (a:User) WHERE a.age < 100 AND EXISTS { MATCH (a)-[:Follows*3..3]->(b:User) WHERE EXISTS {MATCH (b)<-[:Follows]-(c:User)} } RETURN a.name, a.age; ---- 1 Adam|30 --NAME With1 --QUERY MATCH (a:User) WITH avg(a.age) as avgAge MATCH (b:User) WHERE b.age > avgAge RETURN *; +-LOG With1 +-STATEMENT MATCH (a:User) WITH avg(a.age) as avgAge MATCH (b:User) WHERE b.age > avgAge RETURN *; ---- 2 36.250000|(label:User, 0:1, {name:Karissa, age:40}) 36.250000|(label:User, 0:2, {name:Zhang, age:50}) --NAME With2 --QUERY MATCH (a:User) WITH a ORDER BY a.age DESC LIMIT 1 MATCH (a)-[:Follows]->(b:User) RETURN *; +-LOG With2 +-STATEMENT MATCH (a:User) WITH a ORDER BY a.age DESC LIMIT 1 MATCH (a)-[:Follows]->(b:User) RETURN *; ---- 1 (label:User, 0:2, {name:Zhang, age:50})|(label:User, 0:3, {name:Noura, age:25}) --NAME Undir1 --QUERY MATCH (a:User)-[:Follows]-(b:User) RETURN a.name, b.age; +-LOG Undir1 +-STATEMENT MATCH (a:User)-[:Follows]-(b:User) RETURN a.name, b.age; ---- 8 Adam|40 Adam|50 @@ -242,8 +242,8 @@ Zhang|30 Zhang|40 Noura|50 --NAME Undir2 --QUERY MATCH (a:User)-[:LivesIn]-(c:City) RETURN a.name, c.name; +-LOG Undir2 +-STATEMENT MATCH (a:User)-[:LivesIn]-(c:City) RETURN a.name, c.name; ---- 8 Adam|Waterloo Karissa|Waterloo @@ -254,7 +254,7 @@ Waterloo|Adam Kitchener|Zhang Guelph|Noura --NAME Undir3 --QUERY MATCH ()-[]-() RETURN COUNT(*); +-LOG Undir3 +-STATEMENT MATCH ()-[]-() RETURN COUNT(*); ---- 1 16 diff --git a/test/test_files/demo_db/demo_db_set_copy.test b/test/test_files/demo_db/demo_db_set_copy.test index 32efa5a657..37af81c4a5 100644 --- a/test/test_files/demo_db/demo_db_set_copy.test +++ b/test/test_files/demo_db/demo_db_set_copy.test @@ -5,37 +5,37 @@ -CASE SetNodeTest --NAME SetAge --QUERY MATCH (u:User) WHERE u.name = 'Adam' SET u.age = 50 +-LOG SetAge +-STATEMENT MATCH (u:User) WHERE u.name = 'Adam' SET u.age = 50 ---- ok --NAME ReturnAge --QUERY MATCH (u:User) WHERE u.name='Adam' RETURN u.age +-LOG ReturnAge +-STATEMENT MATCH (u:User) WHERE u.name='Adam' RETURN u.age ---- 1 50 --NAME SetAgeNull --QUERY MATCH (u:User) WHERE u.name = 'Adam' SET u.age = NULL +-LOG SetAgeNull +-STATEMENT MATCH (u:User) WHERE u.name = 'Adam' SET u.age = NULL ---- ok --NAME ReturnNullAge --QUERY MATCH (u:User) WHERE u.name='Adam' RETURN u.age +-LOG ReturnNullAge +-STATEMENT MATCH (u:User) WHERE u.name='Adam' RETURN u.age ---- 1 -CASE SetRelTest --NAME SetRelSince --QUERY MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name = 'Adam' AND u1.name = 'Karissa' SET f.since=2012 +-LOG SetRelSince +-STATEMENT MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name = 'Adam' AND u1.name = 'Karissa' SET f.since=2012 ---- ok --NAME CheckRelSince --QUERY MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name='Adam' RETURN f.since, u1.name +-LOG CheckRelSince +-STATEMENT MATCH (u:User)-[f:Follows]->(u1:User) WHERE u.name='Adam' RETURN f.since, u1.name ---- 2 2012|Karissa 2020|Zhang --NAME CopyRelToNonEmptyTableErrorTest +-LOG CopyRelToNonEmptyTableErrorTest -STATEMENT MATCH (:User)-[f:Follows]->(:User) DELETE f ---- ok diff --git a/test/test_files/exceptions/binder/binder_error.test b/test/test_files/exceptions/binder/binder_error.test index f5c119cee9..e4247825bb 100644 --- a/test/test_files/exceptions/binder/binder_error.test +++ b/test/test_files/exceptions/binder/binder_error.test @@ -4,77 +4,77 @@ -- -CASE NodeTableNotExist --QUERY MATCH (a:PERSON) RETURN COUNT(*) +-STATEMENT MATCH (a:PERSON) RETURN COUNT(*) ---- error Binder exception: Node table PERSON does not exist. -CASE RepeatedRelName --QUERY MATCH (a:person)-[e1:knows]->(b:person)<-[e1:knows]-(:person) RETURN COUNT(*) +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)<-[e1:knows]-(:person) RETURN COUNT(*) ---- error Binder exception: Bind relationship e1 to relationship with same name is not supported. -CASE RepeatedReturnColumnName --QUERY MATCH (a:person)-[e1:knows]->(b:person) RETURN *, e1 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) RETURN *, e1 ---- error Binder exception: Multiple result column with the same name e1 are not supported. -CASE WITHExpressionAliased --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH a.age RETURN * +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH a.age RETURN * ---- error Binder exception: Expression in WITH must be aliased (use AS). -CASE BindToDifferentVariableType1 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH e1 AS a MATCH (a) RETURN * +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH e1 AS a MATCH (a) RETURN * ---- error Binder exception: e1 has data type REL. (NODE) was expected. -CASE BindToDifferentVariableType2 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH a.age + 1 AS a MATCH (a) RETURN * +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH a.age + 1 AS a MATCH (a) RETURN * ---- error Binder exception: +(a.age,1) has data type INT64. (NODE) was expected. -CASE BindEmptyStar --QUERY RETURN * +-STATEMENT RETURN * ---- error Binder exception: RETURN or WITH * is not allowed when there are no variables in scope. -CASE BindVariableNotInScope1 --QUERY WITH a MATCH (a:person)-[e1:knows]->(b:person) RETURN * +-STATEMENT WITH a MATCH (a:person)-[e1:knows]->(b:person) RETURN * ---- error Binder exception: Variable a is not in scope. -CASE BindVariableNotInScope2 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.age > foo RETURN * +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.age > foo RETURN * ---- error Binder exception: Variable foo is not in scope. -CASE BindVariableNotInScope3 --QUERY MATCH (a:person) RETURN b +-STATEMENT MATCH (a:person) RETURN b ---- error Binder exception: Variable b is not in scope. -CASE BindPropertyLookUpOnExpression --QUERY MATCH (a:person)-[e1:knows]->(b:person) RETURN (a.age + 2).age +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) RETURN (a.age + 2).age ---- error Binder exception: +(a.age,2) has data type INT64. (NODE,REL,STRUCT) was expected. -CASE BindPropertyNotExist --QUERY MATCH (a:person)-[e1:knows]->(b:person) RETURN a.foo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) RETURN a.foo ---- error Binder exception: Cannot find property foo for a. -CASE BindPropertyNotExist2 --QUERY Create (a:person {foo:'x'}); +-STATEMENT Create (a:person {foo:'x'}); ---- error Binder exception: Cannot find property foo for a. -CASE BindPropertyNotExist3 --QUERY WITH {a: 1} AS s RETURN s.b +-STATEMENT WITH {a: 1} AS s RETURN s.b ---- error Binder exception: Invalid struct field name: B. -CASE BindIDArithmetic --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE id(a) + 1 < id(b) RETURN * +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE id(a) + 1 < id(b) RETURN * ---- error Binder exception: Cannot match a built-in function for given function +(INTERNAL_ID,INT64). Supported inputs are (INT64,INT64) -> INT64 @@ -92,7 +92,7 @@ Binder exception: Cannot match a built-in function for given function +(INTERNAL (INTERVAL,TIMESTAMP) -> TIMESTAMP -CASE BindDateAddDate --QUERY MATCH (a:person) RETURN a.birthdate + date('2031-02-01') +-STATEMENT MATCH (a:person) RETURN a.birthdate + date('2031-02-01') ---- error Binder exception: Cannot match a built-in function for given function +(DATE,DATE). Supported inputs are (INT64,INT64) -> INT64 @@ -110,7 +110,7 @@ Binder exception: Cannot match a built-in function for given function +(DATE,DAT (INTERVAL,TIMESTAMP) -> TIMESTAMP -CASE BindTimestampArithmetic --QUERY MATCH (a:person) WHERE a.registerTime + 1 < 5 RETURN * +-STATEMENT MATCH (a:person) WHERE a.registerTime + 1 < 5 RETURN * ---- error Binder exception: Cannot match a built-in function for given function +(TIMESTAMP,INT64). Supported inputs are (INT64,INT64) -> INT64 @@ -128,7 +128,7 @@ Binder exception: Cannot match a built-in function for given function +(TIMESTAM (INTERVAL,TIMESTAMP) -> TIMESTAMP -CASE BindTimestampAddTimestamp --QUERY MATCH (a:person) RETURN a.registerTime + timestamp('2031-02-11 01:02:03'); +-STATEMENT MATCH (a:person) RETURN a.registerTime + timestamp('2031-02-11 01:02:03'); ---- error Binder exception: Cannot match a built-in function for given function +(TIMESTAMP,TIMESTAMP). Supported inputs are (INT64,INT64) -> INT64 @@ -146,99 +146,99 @@ Binder exception: Cannot match a built-in function for given function +(TIMESTAM (INTERVAL,TIMESTAMP) -> TIMESTAMP -CASE BindFunctionWithWrongNumParams --QUERY MATCH (a:person) WHERE date() < 2 RETURN COUNT(*); +-STATEMENT MATCH (a:person) WHERE date() < 2 RETURN COUNT(*); ---- error Binder exception: Cannot match a built-in function for given function DATE. Supported inputs are (STRING) -> DATE -CASE BindFunctionWithWrongParamType --QUERY MATCH (a:person) WHERE date(2012) < 2 RETURN COUNT(*); +-STATEMENT MATCH (a:person) WHERE date(2012) < 2 RETURN COUNT(*); ---- error Binder exception: Cannot match a built-in function for given function DATE(INT64). Supported inputs are (STRING) -> DATE -CASE OrderByVariableNotInScope --QUERY MATCH (a:person)-[e1:knows]->(b:person) RETURN SUM(a.age) ORDER BY a.ID; +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) RETURN SUM(a.age) ORDER BY a.ID; ---- error Binder exception: Order by expression a.ID is not in RETURN or WITH clause. -CASE NestedAggregation --QUERY MATCH (a:person) RETURN SUM(SUM(a.age)); +-STATEMENT MATCH (a:person) RETURN SUM(SUM(a.age)); ---- error Binder exception: Expression SUM(SUM(a.age)) contains nested aggregation. -CASE OptionalMatchAsFirstMatch --QUERY OPTIONAL MATCH (a:person) RETURN *; +-STATEMENT OPTIONAL MATCH (a:person) RETURN *; ---- error Binder exception: First match clause cannot be optional match. -CASE OrderByWithoutSkipLimitInWithClause --QUERY MATCH (a:person) WITH a.age AS k ORDER BY k RETURN k +-STATEMENT MATCH (a:person) WITH a.age AS k ORDER BY k RETURN k ---- error Binder exception: In WITH clause, ORDER BY must be followed by SKIP or LIMIT. -CASE UnionAllUnmatchedNumberOfExpressions --QUERY MATCH (p:person) RETURN p.age,p.fName UNION ALL MATCH (p1:person) RETURN p1.age +-STATEMENT MATCH (p:person) RETURN p.age,p.fName UNION ALL MATCH (p1:person) RETURN p1.age ---- error Binder exception: The number of columns to union/union all must be the same. -CASE UnionAllUnmatchedDataTypesOfExpressions --QUERY MATCH (p:person) RETURN p.fName UNION ALL MATCH (p1:person) RETURN p1.age +-STATEMENT MATCH (p:person) RETURN p.fName UNION ALL MATCH (p1:person) RETURN p1.age ---- error Binder exception: p1.age has data type INT64. (STRING) was expected. -CASE UnionAndUnionAllInSingleQuery --QUERY MATCH (p:person) RETURN p.age UNION ALL MATCH (p1:person) RETURN p1.age UNION MATCH (p1:person) RETURN p1.age +-STATEMENT MATCH (p:person) RETURN p.age UNION ALL MATCH (p1:person) RETURN p1.age UNION MATCH (p1:person) RETURN p1.age ---- error Binder exception: Union and union all can't be used together. -CASE VarLenExtendZeroLowerBound --QUERY MATCH (a:person)-[:knows*0..5]->(b:person) return count(*) +-STATEMENT MATCH (a:person)-[:knows*0..5]->(b:person) return count(*) ---- error Binder exception: Lower and upper bound of a rel must be greater than 0. -CASE SetDataTypeMisMatch --QUERY MATCH (a:person) SET a.age = 'hh' +-STATEMENT MATCH (a:person) SET a.age = 'hh' ---- error Binder exception: Expression hh has data type STRING but expect INT64. Implicit cast is not supported. -CASE CreateNodeDataTypeMisMatch --QUERY CREATE (a:person {age:'hh'}) +-STATEMENT CREATE (a:person {age:'hh'}) ---- error Binder exception: Expression hh has data type STRING but expect INT64. Implicit cast is not supported. -CASE CreateRelDataTypeMisMatch --QUERY CREATE (a:person)-[:knows {date:12}]->(b:person) +-STATEMENT CREATE (a:person)-[:knows {date:12}]->(b:person) ---- error Binder exception: Expression 12 has data type INT64 but expect DATE. Implicit cast is not supported. -CASE ReadAfterUpdate1 --QUERY MATCH (a:person) SET a.age = 35 WITH a MATCH (a)-[:knows]->(b:person) RETURN a.age +-STATEMENT MATCH (a:person) SET a.age = 35 WITH a MATCH (a)-[:knows]->(b:person) RETURN a.age ---- error Binder exception: Read after update is not supported. -CASE ReadAfterUpdate3 --QUERY MATCH (a:person) SET a.age=3 RETURN a.fName +-STATEMENT MATCH (a:person) SET a.age=3 RETURN a.fName ---- error Binder exception: Return/With after update is not supported. -CASE DeleteNodeProperty --QUERY MATCH (a:person) DELETE a.age +-STATEMENT MATCH (a:person) DELETE a.age ---- error Binder exception: Delete PROPERTY is not supported. -CASE CreateNodeTableUsedName --QUERY CREATE NODE TABLE person(NAME STRING, ID INT64, PRIMARY KEY(NAME)) +-STATEMENT CREATE NODE TABLE person(NAME STRING, ID INT64, PRIMARY KEY(NAME)) ---- error Binder exception: Node person already exists. -CASE CreateNodeTablePKColNameNotExists --QUERY CREATE NODE TABLE PERSON(NAME STRING, ID INT64, birthdate date, primary key (dummyColName)) +-STATEMENT CREATE NODE TABLE PERSON(NAME STRING, ID INT64, birthdate date, primary key (dummyColName)) ---- error Binder exception: Primary key dummyColName does not match any of the predefined node properties. -CASE CreateNodeTableDuplicatedColumnName --QUERY CREATE NODE TABLE student (id INT64, eyesight double, eyesight double, PRIMARY KEY(id)) +-STATEMENT CREATE NODE TABLE student (id INT64, eyesight double, eyesight double, PRIMARY KEY(id)) ---- error Binder exception: Duplicated column name: eyesight, column name must be unique. @@ -253,67 +253,67 @@ Binder exception: No file found that matches the pattern: wrong_path.csv. Binder exception: No file found that matches the pattern: wrong_path.parquet. -CASE CopyCSVInvalidParsingOption --QUERY COPY person FROM "person_0_0.csv" (pk=",") +-STATEMENT COPY person FROM "person_0_0.csv" (pk=",") ---- error Binder exception: Unrecognized parsing csv option: PK. -CASE CopyCSVInvalidSchemaName --QUERY COPY university FROM "person_0_0.csv" (pk=",") +-STATEMENT COPY university FROM "person_0_0.csv" (pk=",") ---- error Binder exception: Node/Rel university does not exist. -CASE CopyCSVInvalidEscapeChar --QUERY COPY person FROM "person_0_0.csv" (ESCAPE="..") +-STATEMENT COPY person FROM "person_0_0.csv" (ESCAPE="..") ---- error Binder exception: Copy csv option value can only be a single character with an optional escape character. -CASE CreateRelTableUsedName --QUERY CREATE REL TABLE knows ( FROM person TO person) +-STATEMENT CREATE REL TABLE knows ( FROM person TO person) ---- error Binder exception: Rel knows already exists. -CASE CreateRelTableInvalidNodeTableName --QUERY CREATE REL TABLE knows_post ( FROM person TO post) +-STATEMENT CREATE REL TABLE knows_post ( FROM person TO post) ---- error Binder exception: Node table post does not exist. -CASE CreateRelTableDuplicatedColumnName --QUERY CREATE REL TABLE teaches (FROM person TO person, date DATE, date TIMESTAMP) +-STATEMENT CREATE REL TABLE teaches (FROM person TO person, date DATE, date TIMESTAMP) ---- error Binder exception: Duplicated column name: date, column name must be unique. -CASE CreateRelTableReservedColumnName --QUERY CREATE REL TABLE teaches (FROM person TO person, _id INT64) +-STATEMENT CREATE REL TABLE teaches (FROM person TO person, _id INT64) ---- error Binder exception: PropertyName: _id is an internal reserved propertyName. -CASE DropNotExistsTable --QUERY DROP TABLE person1; +-STATEMENT DROP TABLE person1; ---- error Binder exception: Node/Rel person1 does not exist. -CASE SelfLoopRel --QUERY MATCH (a:person)-[e:knows]->(a) RETURN COUNT(*) +-STATEMENT MATCH (a:person)-[e:knows]->(a) RETURN COUNT(*) ---- error Binder exception: Self-loop rel e is not supported. -CASE InvalidLimitNumberType --QUERY MATCH (a:person) RETURN a.age LIMIT "abc" +-STATEMENT MATCH (a:person) RETURN a.age LIMIT "abc" ---- error Binder exception: The number of rows to skip/limit must be a non-negative integer. -CASE NegativeLimitNumber --QUERY MATCH (a:person) RETURN a.age LIMIT -1 +-STATEMENT MATCH (a:person) RETURN a.age LIMIT -1 ---- error Binder exception: The number of rows to skip/limit must be a non-negative integer. -CASE DuplicateVariableName --QUERY MATCH (a:person) UNWIND [1,2] AS a RETURN COUNT(*) +-STATEMENT MATCH (a:person) UNWIND [1,2] AS a RETURN COUNT(*) ---- error Binder exception: Variable a already exists. -CASE MaxNodeID --QUERY MATCH (a:person) RETURN MIN(a) +-STATEMENT MATCH (a:person) RETURN MIN(a) ---- error Binder exception: Cannot match a built-in function for given function MIN(INTERNAL_ID). Supported inputs are DISTINCT (BOOL) -> BOOL @@ -342,87 +342,87 @@ DISTINCT (SERIAL) -> SERIAL (SERIAL) -> SERIAL -CASE OrderByNodeID --QUERY match (p:person) with p as x order by x skip 1 return x; +-STATEMENT match (p:person) with p as x order by x skip 1 return x; ---- error Binder exception: Cannot order by p. Order by node or rel is not supported. -CASE DropColumnFromNonExistedTable --QUERY alter table person1 drop k +-STATEMENT alter table person1 drop k ---- error Binder exception: Node/Rel person1 does not exist. -CASE DropNonExistedColumn --QUERY alter table person drop random +-STATEMENT alter table person drop random ---- error Binder exception: person table doesn't have property: random. -CASE DropPrimaryKeyColumn --QUERY alter table person drop ID +-STATEMENT alter table person drop ID ---- error Binder exception: Cannot drop primary key of a node table. -CASE AddPropertyDuplicateName --QUERY alter table person add fName STRING +-STATEMENT alter table person add fName STRING ---- error Binder exception: Property: fName already exists. -CASE AddPropertyUnmatchedDefaultValueType --QUERY alter table person add intCol INT64 DEFAULT '3.2' +-STATEMENT alter table person add intCol INT64 DEFAULT '3.2' ---- error Binder exception: Expression 3.2 has data type STRING but expect INT64. Implicit cast is not supported. -CASE RenameNonExistedTable --QUERY alter table person1 rename to person2 +-STATEMENT alter table person1 rename to person2 ---- error Binder exception: Node/Rel person1 does not exist. -CASE RenameTableDuplicateName --QUERY alter table person rename to organisation +-STATEMENT alter table person rename to organisation ---- error Binder exception: Table: organisation already exists. -CASE RenamePropertyOfNonExistedTable --QUERY alter table person1 rename col1 to col2 +-STATEMENT alter table person1 rename col1 to col2 ---- error Binder exception: Node/Rel person1 does not exist. -CASE RenamePropertyDuplicateName --QUERY alter table person rename fName to gender +-STATEMENT alter table person rename fName to gender ---- error Binder exception: Property gender already exists in table: person. -CASE InvalidFixedListChildType --QUERY create node table test1(ID INT64, marks STRING[5], PRIMARY KEY(ID)) +-STATEMENT create node table test1(ID INT64, marks STRING[5], PRIMARY KEY(ID)) ---- error Binder exception: The child type of a fixed list must be a numeric type. Given: STRING. -CASE InvalidFixedListNumElements --QUERY create node table test1(ID INT64, marks INT64[0], PRIMARY KEY(ID)) +-STATEMENT create node table test1(ID INT64, marks INT64[0], PRIMARY KEY(ID)) ---- error Binder exception: The number of elements in a fixed list must be greater than 0. Given: 0. -CASE InvalidFixedListSize --QUERY create node table test1(ID INT64, marks INT64[512], PRIMARY KEY(ID)) +-STATEMENT create node table test1(ID INT64, marks INT64[512], PRIMARY KEY(ID)) ---- error Binder exception: Cannot store a fixed list of size 4096 in a page. -CASE NonPKSerialType --QUERY CREATE NODE TABLE test(ID INT64, seq SERIAL, PRIMARY KEY(ID)) +-STATEMENT CREATE NODE TABLE test(ID INT64, seq SERIAL, PRIMARY KEY(ID)) ---- error Binder exception: Serial property in node table must be the primary key. -CASE AddSerialProperty --QUERY ALTER TABLE person ADD seq SERIAL +-STATEMENT ALTER TABLE person ADD seq SERIAL ---- error Binder exception: Serial property in node table must be the primary key. -CASE SerialInRelTable --QUERY CREATE REL TABLE test(FROM person TO person, seq SERIAL) +-STATEMENT CREATE REL TABLE test(FROM person TO person, seq SERIAL) ---- error Binder exception: Serial property is not supported in rel table. -CASE MatchBuiltIn --QUERY MATCH (a:person) RETURN a.age + 'hh' +-STATEMENT MATCH (a:person) RETURN a.age + 'hh' ---- error Binder exception: Cannot match a built-in function for given function +(INT64,STRING). Supported inputs are (INT64,INT64) -> INT64 @@ -440,11 +440,11 @@ Binder exception: Cannot match a built-in function for given function +(INT64,ST (INTERVAL,TIMESTAMP) -> TIMESTAMP -CASE InvalidCallOption --QUERY CALL thread=10 +-STATEMENT CALL thread=10 ---- error Binder exception: Invalid option name: thread. -CASE InvalidCallOptionValue --QUERY CALL threads='abc' +-STATEMENT CALL threads='abc' ---- error Binder exception: abc has data type STRING. (INT64) was expected. diff --git a/test/test_files/exceptions/catalog/catalog.test b/test/test_files/exceptions/catalog/catalog.test index 15becf27f9..2f539b12e7 100644 --- a/test/test_files/exceptions/catalog/catalog.test +++ b/test/test_files/exceptions/catalog/catalog.test @@ -3,17 +3,17 @@ -- --QUERY MATCH (a:person) RETURN dummy(n) +-STATEMENT MATCH (a:person) RETURN dummy(n) ---- error Catalog exception: DUMMY function does not exist. -CASE BindNonExistingFunction --QUERY MATCH (a:person) WHERE dummy() < 2 RETURN COUNT(*) +-STATEMENT MATCH (a:person) WHERE dummy() < 2 RETURN COUNT(*) ---- error Catalog exception: DUMMY function does not exist. -CASE CreateRelTableInvalidRelMultiplicity --QUERY CREATE REL TABLE knows_post ( FROM person TO person, MANY_LOT) +-STATEMENT CREATE REL TABLE knows_post ( FROM person TO person, MANY_LOT) ---- error Catalog exception: Invalid relMultiplicity string 'MANY_LOT'. diff --git a/test/test_files/exceptions/parser/parse_type.test b/test/test_files/exceptions/parser/parse_type.test index cd1aa6f940..dab0d3ee15 100644 --- a/test/test_files/exceptions/parser/parse_type.test +++ b/test/test_files/exceptions/parser/parse_type.test @@ -4,21 +4,21 @@ -- -CASE MissingStructFieldType --QUERY create node table test1(ID INT64, description STRUCT(name INT64, age INT35), PRIMARY KEY(ID)) +-STATEMENT create node table test1(ID INT64, description STRUCT(name INT64, age INT35), PRIMARY KEY(ID)) ---- error Cannot parse dataTypeID: INT35 -CASE MissingStructFields --QUERY create node table test1(ID INT64, description STRUCT, PRIMARY KEY(ID)) +-STATEMENT create node table test1(ID INT64, description STRUCT, PRIMARY KEY(ID)) ---- error Cannot parse struct type: STRUCT -CASE CreateNodeTableInvalidDataType --QUERY CREATE NODE TABLE PERSON(NAME BIGINT, PRIMARY KEY(NAME)) +-STATEMENT CREATE NODE TABLE PERSON(NAME BIGINT, PRIMARY KEY(NAME)) ---- error Cannot parse dataTypeID: BIGINT -CASE CreateRelTableInvalidDataType --QUERY CREATE REL TABLE knows_post ( FROM person TO person, ID SMALLINT, MANY_MANY) +-STATEMENT CREATE REL TABLE knows_post ( FROM person TO person, ID SMALLINT, MANY_MANY) ---- error Cannot parse dataTypeID: SMALLINT diff --git a/test/test_files/exceptions/parser/syntax_error.test b/test/test_files/exceptions/parser/syntax_error.test index 09216f077d..b666cfcd89 100644 --- a/test/test_files/exceptions/parser/syntax_error.test +++ b/test/test_files/exceptions/parser/syntax_error.test @@ -4,49 +4,49 @@ -- -CASE QueryNotConcludeWithReturn1 --QUERY MATCH (a:person); +-STATEMENT MATCH (a:person); ---- error Parser exception: Query must conclude with RETURN clause (line: 1, offset: 0) "MATCH (a:person);" ^^^^^ -CASE QueryNotConcludeWithReturn2 --QUERY MATCH (a:person) WITH *; +-STATEMENT MATCH (a:person) WITH *; ---- error Parser exception: Query must conclude with RETURN clause (line: 1, offset: 23) "MATCH (a:person) WITH *;" ^ -CASE InvalidNotEqualOperator) --QUERY MATCH (a) WHERE a.age != 1 RETURN *; +-STATEMENT MATCH (a) WHERE a.age != 1 RETURN *; ---- error Parser exception: Unknown operation '!=' (you probably meant to use '<>', which is the operator for inequality testing.) (line: 1, offset: 22) "MATCH (a) WHERE a.age != 1 RETURN *;" ^^ -CASE EmptyTable --QUERY MATCH (a:``) RETURN *; +-STATEMENT MATCH (a:``) RETURN *; ---- error Parser exception: '' is not a valid token name. Token names cannot be empty or contain any null-bytes (line: 1, offset: 9) "MATCH (a:``) RETURN *;" ^^ -CASE EmptyProperty --QUERY MATCH (a) WHERE a.`` != 1 RETURN *; +-STATEMENT MATCH (a) WHERE a.`` != 1 RETURN *; ---- error Parser exception: '' is not a valid token name. Token names cannot be empty or contain any null-bytes (line: 1, offset: 18) "MATCH (a) WHERE a.`` != 1 RETURN *;" ^^ -CASE ReturnNotAtEnd --QUERY RETURN a MATCH (a) RETURN a; +-STATEMENT RETURN a MATCH (a) RETURN a; ---- error Parser exception: RETURN can only be used at the end of the query (line: 1, offset: 0) "RETURN a MATCH (a) RETURN a;" ^^^^^^ -CASE ConjunctiveComparison --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE b.fName = e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*); +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE b.fName = e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*); ---- error Parser exception: Non-binary comparison (e.g. a=b=c) is not supported (line: 1, offset: 69) "MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE b.fName = e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*);" diff --git a/test/test_files/ldbc/ldbc-interactive/interactive-complex.test b/test/test_files/ldbc/ldbc-interactive/interactive-complex.test index c8cc21d5ad..e33cf062ae 100644 --- a/test/test_files/ldbc/ldbc-interactive/interactive-complex.test +++ b/test/test_files/ldbc/ldbc-interactive/interactive-complex.test @@ -6,8 +6,8 @@ -CASE LDBCInteractiveComplex --NAME IC2 --QUERY MATCH (:Person {id: 32985348834100 })-[:Person_knows_Person]-(friend:Person)<-[:Post_hasCreator_Person|:Comment_hasCreator_Person]-(message:Comment:Post) +-LOG IC2 +-STATEMENT MATCH (:Person {id: 32985348834100 })-[:Person_knows_Person]-(friend:Person)<-[:Post_hasCreator_Person|:Comment_hasCreator_Person]-(message:Comment:Post) WHERE message.creationDate < 20120710024241920 RETURN friend.id AS personId, friend.firstName AS personFirstName, friend.lastName AS personLastName, message.id AS postOrCommentId, CASE WHEN message.content is NULL THEN message.imageFile ELSE message.content END AS postOrCommentContent, message.creationDate AS postOrCommentCreationDate ORDER BY postOrCommentCreationDate DESC, postOrCommentId ASC @@ -34,8 +34,8 @@ 19791209300507|Chaim Azriel|Epstein|962073022942|no way!|20120707012146963 2199023256816|K.|Bose|962072894276|great|20120706195440195 --NAME IC3 --QUERY MATCH (countryX:Place {name: "Tunisia" }), (countryY:Place {name: "Peru" }), (person:Person {id: 17592186045813 }) +-LOG IC3 +-STATEMENT MATCH (countryX:Place {name: "Tunisia" }), (countryY:Place {name: "Peru" }), (person:Person {id: 17592186045813 }) WITH person, countryX, countryY LIMIT 1 MATCH (city:Place {label: "City"})-[:Place_isPartOf_Place]->(country:Place {label: "Country"}) @@ -60,8 +60,8 @@ 6597069767398|Vichara|Sihanouk|1|1|2 24189255811663|Chris|Hall|1|1|2 --NAME IC4 --QUERY MATCH (person:Person {id: 24189255812446 })-[:Person_knows_Person]-(friend:Person), (friend)<-[:Post_hasCreator_Person]-(post:Post)-[:Post_hasTag_Tag]->(tag) +-LOG IC4 +-STATEMENT MATCH (person:Person {id: 24189255812446 })-[:Person_knows_Person]-(friend:Person), (friend)<-[:Post_hasCreator_Person]-(post:Post)-[:Post_hasTag_Tag]->(tag) WITH DISTINCT tag, post WITH tag, CASE WHEN 20120710024241920 > post.creationDate AND post.creationDate >= 20100710024241920 THEN 1 ELSE 0 END AS valid, CASE WHEN 20100710024241920 > post.creationDate THEN 1 ELSE 0 END AS inValid WITH tag, sum(valid) AS postCount, sum(inValid) AS inValidPostCount @@ -81,8 +81,8 @@ Zine_El_Abidine_Ben_Ali|23 Franz_Kafka|11 Bobby_Hull|9 --NAME IC6 --QUERY MATCH (knownTag:Tag { name: "Carl_Gustaf_Emil_Mannerheim" }) +-LOG IC6 +-STATEMENT MATCH (knownTag:Tag { name: "Carl_Gustaf_Emil_Mannerheim" }) WITH knownTag.id as knownTagId MATCH (person:Person { id: 28587302322524 })-[:Person_knows_Person*1..2]-(friend) WHERE NOT person.id=friend.id @@ -106,8 +106,8 @@ Edgar_Allan_Poe|1 Elvis_Costello|1 Euripides|1 --NAME IC8 --QUERY MATCH (start:Person {id: 15393162789560})<-[:Post_hasCreator_Person|:Comment_hasCreator_Person]-(:Post:Comment)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment)-[:Comment_hasCreator_Person]->(person:Person) +-LOG IC8 +-STATEMENT MATCH (start:Person {id: 15393162789560})<-[:Post_hasCreator_Person|:Comment_hasCreator_Person]-(:Post:Comment)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment)-[:Comment_hasCreator_Person]->(person:Person) RETURN person.id AS personId, person.firstName AS personFirstName, person.lastName AS personLastName, comment.creationDate AS commentCreationDate, comment.id AS commentId, comment.content AS commentContent ORDER BY commentCreationDate DESC, commentId ASC LIMIT 20; @@ -133,8 +133,8 @@ Euripides|1 13194139533535|Shweta|Singh|20120623001733081|962072693421|thx 26388279067551|Anand|Rao|20120622142721062|962072693418|thanks --NAME IC11 --QUERY MATCH (person:Person {id: 13194139534668 })-[:Person_knows_Person*1..2]-(friend:Person) +-LOG IC11 +-STATEMENT MATCH (person:Person {id: 13194139534668 })-[:Person_knows_Person*1..2]-(friend:Person) WHERE NOT person.id=friend.id WITH DISTINCT friend MATCH (friend)-[workAt:Person_workAt_Organisation]->(company:Organisation {label: "Company"})-[:Organisation_isLocatedIn_Place]->(:Place {name: "Hungary", label: "Country" }) @@ -163,10 +163,10 @@ Euripides|1 28587302323430|János|Mészáros|Malév_Hungarian_Airlines|2008 # IC12 should be changed to use Kleene Star relationship once that is implemented --NAME IC12 +-LOG IC12 -CHECK_ORDER -PARALLELISM 1 --QUERY MATCH (tag:Tag)-[:Tag_hasType_TagClass|:TagClass_isSubclassOf_TagClass*1..20]->(baseTagClass:TagClass) +-STATEMENT MATCH (tag:Tag)-[:Tag_hasType_TagClass|:TagClass_isSubclassOf_TagClass*1..20]->(baseTagClass:TagClass) WHERE tag.name = "Monarch" OR baseTagClass.name = "Monarch" WITH collect(tag.id) as tags MATCH (:Person {id: 6597069767300 })-[:Person_knows_Person]-(friend:Person)<-[:Comment_hasCreator_Person]-(comment:Comment)-[:Comment_replyOf_Post]->(:Post)-[:Post_hasTag_Tag]->(tag:Tag) @@ -187,8 +187,8 @@ Euripides|1 # (i) Unbounded shortest path # (ii) Return 0 if person1 and person2 are the same, and # (iii) Return -1 if a shortest path doesn't exist. --NAME IC13 --QUERY MATCH (person1 {id: 768})-[path:Person_knows_Person* SHORTEST 1..20]-(person2 {id: 32985348833975}) +-LOG IC13 +-STATEMENT MATCH (person1 {id: 768})-[path:Person_knows_Person* SHORTEST 1..20]-(person2 {id: 32985348833975}) RETURN length(path) AS shortestPathLength; ---- 1 3 diff --git a/test/test_files/ldbc/ldbc-interactive/interactive-short-parquet.disabled b/test/test_files/ldbc/ldbc-interactive/interactive-short-parquet.disabled index e3c86ade62..5792ef65b9 100644 --- a/test/test_files/ldbc/ldbc-interactive/interactive-short-parquet.disabled +++ b/test/test_files/ldbc/ldbc-interactive/interactive-short-parquet.disabled @@ -8,8 +8,8 @@ -CASE LDBCInteractiveShortParquet --NAME IS1 --QUERY MATCH (n:Person {id: 933})-[:Person_isLocatedIn_Place]->(p:Place) +-LOG IS1 +-STATEMENT MATCH (n:Person {id: 933})-[:Person_isLocatedIn_Place]->(p:Place) WHERE p.label = "City" RETURN n.firstName AS firstName, n.lastName AS lastName, @@ -22,8 +22,8 @@ ---- 1 Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 --NAME IS3 --QUERY MATCH (n:Person {id: 1129})-[r:Person_knows_Person]-(friend) +-LOG IS3 +-STATEMENT MATCH (n:Person {id: 1129})-[r:Person_knows_Person]-(friend) RETURN friend.id AS personId, friend.firstName AS firstName, friend.lastName AS lastName, @@ -39,8 +39,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 2199023256437|Rudolf|Engel|20100413164422450 # The 'Case When' statement in query IS4 should be supported as coalesce() --NAME IS4 --QUERY MATCH (m:Post:Comment {id: 481036337190}) +-LOG IS4 +-STATEMENT MATCH (m:Post:Comment {id: 481036337190}) RETURN m.creationDate as messageCreationDate, CASE WHEN m.content is NULL THEN m.imageFile @@ -49,8 +49,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 ---- 1 20110407210642051|photo481036337190.jpg --NAME IS5 --QUERY MATCH (m:Post:Comment {id: 1030792151050})-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(p:Person) +-LOG IS5 +-STATEMENT MATCH (m:Post:Comment {id: 1030792151050})-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(p:Person) RETURN p.id AS personId, p.firstName AS firstName, p.lastName AS lastName; @@ -59,8 +59,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 # IS6 should be changed to use Kleene Star relationship once that is implemented # This query is currently commented out, but will work as soon as multilabelled recursive rels are merged to master. -# -NAME IS6 -# -QUERY MATCH (m:Comment {id: 962072675825 })-[:Comment_replyOf_Post|:Comment_replyOf_Comment*1..2]->(p:Post)<-[:Forum_containerOf_Post]-(f:Forum)-[:Forum_hasModerator_Person]->(mod:Person) +# -LOG IS6 +# -STATEMENT MATCH (m:Comment {id: 962072675825 })-[:Comment_replyOf_Post|:Comment_replyOf_Comment*1..2]->(p:Post)<-[:Forum_containerOf_Post]-(f:Forum)-[:Forum_hasModerator_Person]->(mod:Person) # RETURN # f.id AS forumId, # f.title AS forumTitle, @@ -70,8 +70,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 # ---- 1 # 687194767491|Wall of Faisal Malik|21990232556585|Faisal|Malik --NAME IS7 --QUERY MATCH (m:Post:Comment {id: 962072971887})<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(c:Comment)-[:Comment_hasCreator_Person]->(p:Person) +-LOG IS7 +-STATEMENT MATCH (m:Post:Comment {id: 962072971887})<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(c:Comment)-[:Comment_hasCreator_Person]->(p:Person) OPTIONAL MATCH (m)-[:Comment_hasCreator_Person|:Post_hasCreator_Person]->(a:Person)-[r:Person_knows_Person]-(p) RETURN c.id AS commentId, c.content AS commentContent, diff --git a/test/test_files/ldbc/ldbc-interactive/interactive-short.test b/test/test_files/ldbc/ldbc-interactive/interactive-short.test index 56b06c6910..360e1086a1 100644 --- a/test/test_files/ldbc/ldbc-interactive/interactive-short.test +++ b/test/test_files/ldbc/ldbc-interactive/interactive-short.test @@ -6,8 +6,8 @@ -CASE LDBCInteractiveShort --NAME IS1 --QUERY MATCH (n:Person {id: 933})-[:Person_isLocatedIn_Place]->(p:Place) +-LOG IS1 +-STATEMENT MATCH (n:Person {id: 933})-[:Person_isLocatedIn_Place]->(p:Place) WHERE p.label = "City" RETURN n.firstName AS firstName, n.lastName AS lastName, @@ -22,8 +22,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 # IS2 should be changed to use Kleene Star relationship once that is implemented. # The 'Case When' statement should be supported as coalesce(). --NAME IS2 --QUERY MATCH (:Person {id: 21990232555803})<-[:Post_hasCreator_Person|:Comment_hasCreator_Person]-(message) +-LOG IS2 +-STATEMENT MATCH (:Person {id: 21990232555803})<-[:Post_hasCreator_Person|:Comment_hasCreator_Person]-(message) WITH message,message.id AS messageId, message.creationDate AS messageCreationDate ORDER BY messageCreationDate DESC, messageId ASC LIMIT 10 MATCH (message)-[:Comment_replyOf_Post|:Comment_replyOf_Comment*1..2]->(post:Post), (post)-[:Post_hasCreator_Person]->(person) @@ -34,8 +34,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 1030792343876|thx|20120818110412997|1030792343869|21990232555803|Carlos|Lopez 1030792343986|fine|20120810030544084|1030792343978|21990232556837|Bing|Li --NAME IS3 --QUERY MATCH (n:Person {id: 1129})-[r:Person_knows_Person]-(friend) +-LOG IS3 +-STATEMENT MATCH (n:Person {id: 1129})-[r:Person_knows_Person]-(friend) RETURN friend.id AS personId, friend.firstName AS firstName, friend.lastName AS lastName, @@ -51,8 +51,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 2199023256437|Rudolf|Engel|20100413164422450 # The 'Case When' statement in query IS4 should be supported as coalesce() --NAME IS4 --QUERY MATCH (m:Post:Comment {id: 481036337190}) +-LOG IS4 +-STATEMENT MATCH (m:Post:Comment {id: 481036337190}) RETURN m.creationDate as messageCreationDate, CASE WHEN m.content is NULL THEN m.imageFile @@ -61,8 +61,8 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 ---- 1 20110407210642051|photo481036337190.jpg --NAME IS5 --QUERY MATCH (m:Post:Comment {id: 1030792151050})-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(p:Person) +-LOG IS5 +-STATEMENT MATCH (m:Post:Comment {id: 1030792151050})-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(p:Person) RETURN p.id AS personId, p.firstName AS firstName, p.lastName AS lastName; @@ -70,14 +70,14 @@ Mahinda|Perera|19891203|119.235.7.103|Firefox|1353|male|20100214153210447 2199023256077|Ibrahim Bare|Ousmane # IS6 should be changed to use Kleene Star relationship once that is implemented --NAME IS6 --QUERY MATCH (m:Comment {id: 962072675825 })-[:Comment_replyOf_Post|:Comment_replyOf_Comment*1..2]->(p:Post)<-[:Forum_containerOf_Post]-(f:Forum)-[:Forum_hasModerator_Person]->(mod:Person) +-LOG IS6 +-STATEMENT MATCH (m:Comment {id: 962072675825 })-[:Comment_replyOf_Post|:Comment_replyOf_Comment*1..2]->(p:Post)<-[:Forum_containerOf_Post]-(f:Forum)-[:Forum_hasModerator_Person]->(mod:Person) RETURN f.id AS forumId,f.title AS forumTitle,mod.id AS moderatorId,mod.firstName AS moderatorFirstName, mod.lastName AS moderatorLastName; ---- 1 687194767491|Wall of Faisal Malik|21990232556585|Faisal|Malik --NAME IS7 --QUERY MATCH (m:Post:Comment {id: 962072971887})<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(c:Comment)-[:Comment_hasCreator_Person]->(p:Person) +-LOG IS7 +-STATEMENT MATCH (m:Post:Comment {id: 962072971887})<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(c:Comment)-[:Comment_hasCreator_Person]->(p:Person) OPTIONAL MATCH (m)-[:Comment_hasCreator_Person|:Post_hasCreator_Person]->(a:Person)-[r:Person_knows_Person]-(p) RETURN c.id AS commentId, c.content AS commentContent, diff --git a/test/test_files/long_string_pk/long_string_pk.test b/test/test_files/long_string_pk/long_string_pk.test index 71de60a7f0..a7ae40d06d 100644 --- a/test/test_files/long_string_pk/long_string_pk.test +++ b/test/test_files/long_string_pk/long_string_pk.test @@ -5,7 +5,7 @@ -CASE LongStringPKTest --NAME LongStringPKTest --QUERY MATCH (a:Person)-[e:Knows]->(b:Person) WHERE a.name = "AAAAAAAAAAAAAAAAAAAA" RETURN COUNT(*) +-LOG LongStringPKTest +-STATEMENT MATCH (a:Person)-[e:Knows]->(b:Person) WHERE a.name = "AAAAAAAAAAAAAAAAAAAA" RETURN COUNT(*) ---- 1 1 diff --git a/test/test_files/long_string_pk/long_string_pk_parquet.test b/test/test_files/long_string_pk/long_string_pk_parquet.test index ec80f5fec0..d71febed81 100644 --- a/test/test_files/long_string_pk/long_string_pk_parquet.test +++ b/test/test_files/long_string_pk/long_string_pk_parquet.test @@ -5,7 +5,7 @@ -CASE LongStringPKTestParquet --NAME LongStringPKTestParquet --QUERY MATCH (a:Person)-[e:Knows]->(b:Person) WHERE a.name = "AAAAAAAAAAAAAAAAAAAA" RETURN COUNT(*) +-LOG LongStringPKTestParquet +-STATEMENT MATCH (a:Person)-[e:Knows]->(b:Person) WHERE a.name = "AAAAAAAAAAAAAAAAAAAA" RETURN COUNT(*) ---- 1 1 diff --git a/test/test_files/lsqb/lsqb_queries.test b/test/test_files/lsqb/lsqb_queries.test index 8bc0ab9a6e..f4cfe3debe 100644 --- a/test/test_files/lsqb/lsqb_queries.test +++ b/test/test_files/lsqb/lsqb_queries.test @@ -6,47 +6,47 @@ -CASE LSQBTest --NAME q1 --QUERY MATCH (:Country)<-[:City_isPartOf_Country]-(:City)<-[:Person_isLocatedIn_City]-(:Person)<-[:Forum_hasMember_Person]-(:Forum)-[:Forum_containerOf_Post]->(:Post)<-[Comment_replyOf_Post]-(:Comment)-[:Comment_hasTag_Tag]->(:Tag)-[:Tag_hasType_TagClass]->(:TagClass) RETURN count(*) as count; +-LOG q1 +-STATEMENT MATCH (:Country)<-[:City_isPartOf_Country]-(:City)<-[:Person_isLocatedIn_City]-(:Person)<-[:Forum_hasMember_Person]-(:Forum)-[:Forum_containerOf_Post]->(:Post)<-[Comment_replyOf_Post]-(:Comment)-[:Comment_hasTag_Tag]->(:Tag)-[:Tag_hasType_TagClass]->(:TagClass) RETURN count(*) as count; ---- 1 8773828 --NAME q2 --QUERY MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person), (person1)<-[:Comment_hasCreator_Person]-(comment:Comment)-[:Comment_replyOf_Post]->(Post:Post)-[:Post_hasCreator_Person]->(person2) RETURN count(*) AS count; +-LOG q2 +-STATEMENT MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person), (person1)<-[:Comment_hasCreator_Person]-(comment:Comment)-[:Comment_replyOf_Post]->(Post:Post)-[:Post_hasCreator_Person]->(person2) RETURN count(*) AS count; ---- 1 82990 --NAME q3 --QUERY MATCH (country:Country) MATCH (person1:Person)-[:Person_isLocatedIn_City]->(city1:City)-[:City_isPartOf_Country]->(country) MATCH (person2:Person)-[:Person_isLocatedIn_City]->(city2:City)-[:City_isPartOf_Country]->(country) MATCH (person3:Person)-[:Person_isLocatedIn_City]->(city3:City)-[:City_isPartOf_Country]->(country) MATCH (person1)-[:Person_knows_Person]-(person2)-[:Person_knows_Person]-(person3)-[:Person_knows_Person]-(person1) RETURN count(*) AS count; +-LOG q3 +-STATEMENT MATCH (country:Country) MATCH (person1:Person)-[:Person_isLocatedIn_City]->(city1:City)-[:City_isPartOf_Country]->(country) MATCH (person2:Person)-[:Person_isLocatedIn_City]->(city2:City)-[:City_isPartOf_Country]->(country) MATCH (person3:Person)-[:Person_isLocatedIn_City]->(city3:City)-[:City_isPartOf_Country]->(country) MATCH (person1)-[:Person_knows_Person]-(person2)-[:Person_knows_Person]-(person3)-[:Person_knows_Person]-(person1) RETURN count(*) AS count; ---- 1 30456 --NAME q4 --QUERY MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person), (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person), (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; +-LOG q4 +-STATEMENT MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person), (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person), (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; ---- 1 784511 --NAME q5 --QUERY MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Comment:Post)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE id(tag1) <> id(tag2) RETURN count(*) AS count; +-LOG q5 +-STATEMENT MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Comment:Post)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE id(tag1) <> id(tag2) RETURN count(*) AS count; ---- 1 1079722 --NAME q6 --QUERY MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE id(person1) <> id(person3) RETURN count(*) AS count; +-LOG q6 +-STATEMENT MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE id(person1) <> id(person3) RETURN count(*) AS count; ---- 1 55607896 --NAME q7 --QUERY MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person) OPTIONAL MATCH (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person) OPTIONAL MATCH (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; +-LOG q7 +-STATEMENT MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person) OPTIONAL MATCH (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person) OPTIONAL MATCH (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; ---- 1 1628132 --NAME q8 --QUERY MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE NOT EXISTS {MATCH (comment)-[:Comment_hasTag_Tag]->(tag1)} AND id(tag1) <> id(tag2) RETURN count(*) AS count; +-LOG q8 +-STATEMENT MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE NOT EXISTS {MATCH (comment)-[:Comment_hasTag_Tag]->(tag1)} AND id(tag1) <> id(tag2) RETURN count(*) AS count; ---- 1 537142 --NAME q9 --QUERY MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE NOT EXISTS {MATCH (person1)-[:Person_knows_Person]-(person3)} AND id(person1) <> id(person3) RETURN count(*) AS count; +-LOG q9 +-STATEMENT MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE NOT EXISTS {MATCH (person1)-[:Person_knows_Person]-(person3)} AND id(person1) <> id(person3) RETURN count(*) AS count; ---- 1 51009398 diff --git a/test/test_files/lsqb/lsqb_queries_parquet.disabled b/test/test_files/lsqb/lsqb_queries_parquet.disabled index 980ecf243e..f7e576de14 100644 --- a/test/test_files/lsqb/lsqb_queries_parquet.disabled +++ b/test/test_files/lsqb/lsqb_queries_parquet.disabled @@ -6,47 +6,47 @@ -CASE LSQBTestParquet --NAME q1 --QUERY MATCH (:Country)<-[:City_isPartOf_Country]-(:City)<-[:Person_isLocatedIn_City]-(:Person)<-[:Forum_hasMember_Person]-(:Forum)-[:Forum_containerOf_Post]->(:Post)<-[Comment_replyOf_Post]-(:Comment)-[:Comment_hasTag_Tag]->(:Tag)-[:Tag_hasType_TagClass]->(:TagClass) RETURN count(*) as count; +-LOG q1 +-STATEMENT MATCH (:Country)<-[:City_isPartOf_Country]-(:City)<-[:Person_isLocatedIn_City]-(:Person)<-[:Forum_hasMember_Person]-(:Forum)-[:Forum_containerOf_Post]->(:Post)<-[Comment_replyOf_Post]-(:Comment)-[:Comment_hasTag_Tag]->(:Tag)-[:Tag_hasType_TagClass]->(:TagClass) RETURN count(*) as count; ---- 1 8773828 --NAME q2 --QUERY MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person), (person1)<-[:Comment_hasCreator_Person]-(comment:Comment)-[:Comment_replyOf_Post]->(Post:Post)-[:Post_hasCreator_Person]->(person2) RETURN count(*) AS count; +-LOG q2 +-STATEMENT MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person), (person1)<-[:Comment_hasCreator_Person]-(comment:Comment)-[:Comment_replyOf_Post]->(Post:Post)-[:Post_hasCreator_Person]->(person2) RETURN count(*) AS count; ---- 1 82990 --NAME q3 --QUERY MATCH (country:Country) MATCH (person1:Person)-[:Person_isLocatedIn_City]->(city1:City)-[:City_isPartOf_Country]->(country) MATCH (person2:Person)-[:Person_isLocatedIn_City]->(city2:City)-[:City_isPartOf_Country]->(country) MATCH (person3:Person)-[:Person_isLocatedIn_City]->(city3:City)-[:City_isPartOf_Country]->(country) MATCH (person1)-[:Person_knows_Person]-(person2)-[:Person_knows_Person]-(person3)-[:Person_knows_Person]-(person1) RETURN count(*) AS count; +-LOG q3 +-STATEMENT MATCH (country:Country) MATCH (person1:Person)-[:Person_isLocatedIn_City]->(city1:City)-[:City_isPartOf_Country]->(country) MATCH (person2:Person)-[:Person_isLocatedIn_City]->(city2:City)-[:City_isPartOf_Country]->(country) MATCH (person3:Person)-[:Person_isLocatedIn_City]->(city3:City)-[:City_isPartOf_Country]->(country) MATCH (person1)-[:Person_knows_Person]-(person2)-[:Person_knows_Person]-(person3)-[:Person_knows_Person]-(person1) RETURN count(*) AS count; ---- 1 30456 --NAME q4 --QUERY MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person), (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person), (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; +-LOG q4 +-STATEMENT MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person), (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person), (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; ---- 1 784511 --NAME q5 --QUERY MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Comment:Post)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE id(tag1) <> id(tag2) RETURN count(*) AS count; +-LOG q5 +-STATEMENT MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Comment:Post)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE id(tag1) <> id(tag2) RETURN count(*) AS count; ---- 1 1079722 --NAME q6 --QUERY MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE id(person1) <> id(person3) RETURN count(*) AS count; +-LOG q6 +-STATEMENT MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE id(person1) <> id(person3) RETURN count(*) AS count; ---- 1 55607896 --NAME q7 --QUERY MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person) OPTIONAL MATCH (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person) OPTIONAL MATCH (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; +-LOG q7 +-STATEMENT MATCH (:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)-[:Post_hasCreator_Person|:Comment_hasCreator_Person]->(creator:Person) OPTIONAL MATCH (message)<-[:Person_likes_Comment|:Person_likes_Post]-(liker:Person) OPTIONAL MATCH (message)<-[:Comment_replyOf_Comment|:Comment_replyOf_Post]-(comment:Comment) RETURN count(*) AS count; ---- 1 1628132 --NAME q8 --QUERY MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE NOT EXISTS {MATCH (comment)-[:Comment_hasTag_Tag]->(tag1)} AND id(tag1) <> id(tag2) RETURN count(*) AS count; +-LOG q8 +-STATEMENT MATCH (tag1:Tag)<-[:Post_hasTag_Tag|:Comment_hasTag_Tag]-(message:Post:Comment)<-[:Comment_replyOf_Post|:Comment_replyOf_Comment]-(comment:Comment)-[:Comment_hasTag_Tag]->(tag2:Tag) WHERE NOT EXISTS {MATCH (comment)-[:Comment_hasTag_Tag]->(tag1)} AND id(tag1) <> id(tag2) RETURN count(*) AS count; ---- 1 537142 --NAME q9 --QUERY MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE NOT EXISTS {MATCH (person1)-[:Person_knows_Person]-(person3)} AND id(person1) <> id(person3) RETURN count(*) AS count; +-LOG q9 +-STATEMENT MATCH (person1:Person)-[:Person_knows_Person]-(person2:Person)-[:Person_knows_Person]-(person3:Person)-[:Person_hasInterest_Tag]->(tag:Tag) WHERE NOT EXISTS {MATCH (person1)-[:Person_knows_Person]-(person3)} AND id(person1) <> id(person3) RETURN count(*) AS count; ---- 1 51009398 diff --git a/test/test_files/npy-1d/match.test b/test/test_files/npy-1d/match.test index b94e1bbd5b..10a558260a 100644 --- a/test/test_files/npy-1d/match.test +++ b/test/test_files/npy-1d/match.test @@ -5,27 +5,27 @@ -CASE MatchNpy-1d --NAME count --QUERY MATCH (n:npytable) RETURN COUNT(*) +-LOG count +-STATEMENT MATCH (n:npytable) RETURN COUNT(*) ---- 1 3 --NAME i64 --QUERY MATCH (n:npytable) RETURN n.i64 ORDER BY n.i64 +-LOG i64 +-STATEMENT MATCH (n:npytable) RETURN n.i64 ORDER BY n.i64 ---- 3 1 2 3 --NAME i32 --QUERY MATCH (n:npytable) RETURN n.i32 ORDER BY n.i32 +-LOG i32 +-STATEMENT MATCH (n:npytable) RETURN n.i32 ORDER BY n.i32 ---- 3 1 2 3 --NAME i16 --QUERY MATCH (n:npytable) RETURN n.i16 ORDER BY n.i16 +-LOG i16 +-STATEMENT MATCH (n:npytable) RETURN n.i16 ORDER BY n.i16 ---- 3 1 2 @@ -33,8 +33,8 @@ # TODO: Foreach support # -FOREACH $size i64 i32 i16 -# -NAME $size -# -QUERY MATCH (n:npytable) RETURN $size ORDER BY $size +# -LOG $size +# -STATEMENT MATCH (n:npytable) RETURN $size ORDER BY $size # ---- 3 # 1 # 2 diff --git a/test/test_files/order_by/order_by.test b/test/test_files/order_by/order_by.test index e60179ab85..05993636a4 100644 --- a/test/test_files/order_by/order_by.test +++ b/test/test_files/order_by/order_by.test @@ -15,8 +15,8 @@ -CASE OrderByLargeDatasetTest --NAME OrderByWithLimitTest --QUERY MATCH (p:person) RETURN p.balance ORDER BY p.balance limit 25 +-LOG OrderByWithLimitTest +-STATEMENT MATCH (p:person) RETURN p.balance ORDER BY p.balance limit 25 -PARALLELISM 6 -CHECK_ORDER -ENUMERATE @@ -47,8 +47,8 @@ -492829 -492721 --NAME OrderByInt64Test --QUERY MATCH (p:person) RETURN p.studentID ORDER BY p.studentID +-LOG OrderByInt64Test +-STATEMENT MATCH (p:person) RETURN p.studentID ORDER BY p.studentID -PARALLELISM 2 -CHECK_ORDER -ENUMERATE diff --git a/test/test_files/order_by/order_by_parquet.test b/test/test_files/order_by/order_by_parquet.test index 4c602e1d7e..6b587d3c68 100644 --- a/test/test_files/order_by/order_by_parquet.test +++ b/test/test_files/order_by/order_by_parquet.test @@ -15,8 +15,8 @@ -CASE OrderByLargeDatasetTestParquet --NAME OrderByWithLimitTest --QUERY MATCH (p:person) RETURN p.balance ORDER BY p.balance limit 25 +-LOG OrderByWithLimitTest +-STATEMENT MATCH (p:person) RETURN p.balance ORDER BY p.balance limit 25 -PARALLELISM 6 -CHECK_ORDER -ENUMERATE @@ -47,8 +47,8 @@ -492829 -492721 --NAME OrderByInt64Test --QUERY MATCH (p:person) RETURN p.studentID ORDER BY p.studentID +-LOG OrderByInt64Test +-STATEMENT MATCH (p:person) RETURN p.studentID ORDER BY p.studentID -PARALLELISM 2 -CHECK_ORDER -ENUMERATE diff --git a/test/test_files/read_list/large_adj_list.test b/test/test_files/read_list/large_adj_list.test index 336e190085..bbf4f9818b 100644 --- a/test/test_files/read_list/large_adj_list.test +++ b/test/test_files/read_list/large_adj_list.test @@ -5,38 +5,38 @@ -CASE LargeAdjListTest --NAME NodeP0 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 0 RETURN COUNT(*) +-LOG NodeP0 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 0 RETURN COUNT(*) -ENUMERATE ---- 1 5001 --NAME NodeP1 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 1 RETURN b.ID +-LOG NodeP1 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 1 RETURN b.ID -ENUMERATE ---- 1 5000 --NAME NodeP5500 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 5500 RETURN b.ID +-LOG NodeP5500 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 5500 RETURN b.ID -ENUMERATE ---- 0 --NAME EdgeID --QUERY MATCH (a:person)-[r:knows]->(b:person) WHERE a.ID = 5000 RETURN ID(r) +-LOG EdgeID +-STATEMENT MATCH (a:person)-[r:knows]->(b:person) WHERE a.ID = 5000 RETURN ID(r) -ENUMERATE ---- 1 1:10000 --NAME CrossProduct1 --QUERY MATCH (a:person), (b:person) RETURN COUNT(*) +-LOG CrossProduct1 +-STATEMENT MATCH (a:person), (b:person) RETURN COUNT(*) -PARALLELISM 2 -ENUMERATE ---- 1 36000000 --NAME CrossProduct --QUERY MATCH (a:person) WITH AVG(a.ID) AS s MATCH (b:person) WHERE s > b.ID RETURN COUNT(*) +-LOG CrossProduct +-STATEMENT MATCH (a:person) WITH AVG(a.ID) AS s MATCH (b:person) WHERE s > b.ID RETURN COUNT(*) -PARALLELISM 8 -ENUMERATE ---- 1 diff --git a/test/test_files/read_list/large_adj_list_parquet.test b/test/test_files/read_list/large_adj_list_parquet.test index 5df5282586..3c98708fbb 100644 --- a/test/test_files/read_list/large_adj_list_parquet.test +++ b/test/test_files/read_list/large_adj_list_parquet.test @@ -5,38 +5,38 @@ -CASE LargeAdjListTestParquet --NAME NodeP0 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 0 RETURN COUNT(*) +-LOG NodeP0 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 0 RETURN COUNT(*) -ENUMERATE ---- 1 5001 --NAME NodeP1 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 1 RETURN b.ID +-LOG NodeP1 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 1 RETURN b.ID -ENUMERATE ---- 1 5000 --NAME NodeP5500 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 5500 RETURN b.ID +-LOG NodeP5500 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 5500 RETURN b.ID -ENUMERATE ---- 0 --NAME EdgeID --QUERY MATCH (a:person)-[r:knows]->(b:person) WHERE a.ID = 5000 RETURN ID(r) +-LOG EdgeID +-STATEMENT MATCH (a:person)-[r:knows]->(b:person) WHERE a.ID = 5000 RETURN ID(r) -ENUMERATE ---- 1 1:10000 --NAME CrossProduct1 --QUERY MATCH (a:person), (b:person) RETURN COUNT(*) +-LOG CrossProduct1 +-STATEMENT MATCH (a:person), (b:person) RETURN COUNT(*) -PARALLELISM 2 -ENUMERATE ---- 1 36000000 --NAME CrossProduct --QUERY MATCH (a:person) WITH AVG(a.ID) AS s MATCH (b:person) WHERE s > b.ID RETURN COUNT(*) +-LOG CrossProduct +-STATEMENT MATCH (a:person) WITH AVG(a.ID) AS s MATCH (b:person) WHERE s > b.ID RETURN COUNT(*) -PARALLELISM 8 -ENUMERATE ---- 1 diff --git a/test/test_files/read_list/large_list_sub_query.test b/test/test_files/read_list/large_list_sub_query.test index 14ab56bd2f..8b3fe50f4e 100644 --- a/test/test_files/read_list/large_list_sub_query.test +++ b/test/test_files/read_list/large_list_sub_query.test @@ -5,15 +5,15 @@ -CASE LargeListSubQueryTest --NAME KnowsVeryLargeAdjListSubQueryTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person)-[:knows]->(c:person) } RETURN count(*) +-LOG KnowsVeryLargeAdjListSubQueryTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person)-[:knows]->(c:person) } RETURN count(*) -PARALLELISM 1 -ENUMERATE ---- 1 1 --NAME KnowsVeryLargeAdjListVarLenWithSubQueryTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows*2..2]->(b:person) } RETURN count(*) +-LOG KnowsVeryLargeAdjListVarLenWithSubQueryTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows*2..2]->(b:person) } RETURN count(*) -PARALLELISM 1 -ENUMERATE ---- 1 diff --git a/test/test_files/read_list/small_large_property_list_reading.test b/test/test_files/read_list/small_large_property_list_reading.test index b378741a07..a08db9a477 100644 --- a/test/test_files/read_list/small_large_property_list_reading.test +++ b/test/test_files/read_list/small_large_property_list_reading.test @@ -6,8 +6,8 @@ -CASE PropLists4BytesPerEdgeTest # Result is 3 and 0 is omitted because 0->0 edge's int64Prop is null. --NAME ReadingLargeListOneHop --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.ID = 0 AND e1.int64Prop < 4 RETURN e1.int64Prop +-LOG ReadingLargeListOneHop +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.ID = 0 AND e1.int64Prop < 4 RETURN e1.int64Prop -ENUMERATE ---- 3 1 @@ -15,7 +15,7 @@ 3 # Result is 5001-6 because 0 has 6 edges that have null int64Prop values. --NAME ReadingLargeListSymmetricTwoHop --QUERY MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person) WHERE a.ID = 0 AND e1.int64Prop = e2.int64Prop RETURN COUNT(*) +-LOG ReadingLargeListSymmetricTwoHop +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person) WHERE a.ID = 0 AND e1.int64Prop = e2.int64Prop RETURN COUNT(*) ---- 1 4995 diff --git a/test/test_files/read_list/var_length_large_adj_list_extend.test b/test/test_files/read_list/var_length_large_adj_list_extend.test index 539d6cbe21..cb62354408 100644 --- a/test/test_files/read_list/var_length_large_adj_list_extend.test +++ b/test/test_files/read_list/var_length_large_adj_list_extend.test @@ -16,14 +16,14 @@ -CASE VarLengthExtendLargeAdjListTest --NAME KnowsVeryLargeAdjListTest --QUERY MATCH (a:person)-[:knows*2..4]->(b:person) RETURN COUNT(*) +-LOG KnowsVeryLargeAdjListTest +-STATEMENT MATCH (a:person)-[:knows*2..4]->(b:person) RETURN COUNT(*) ---- 1 60003 # By the above formula, 28th, 29th, and 30th levels will contain 29*5K + 1, 30*5K + 1, and 31*5K+1 = 90*5K+3=450003. --NAME KnowsVeryLargeAdjListLongPathTest --QUERY MATCH (a:person)-[:knows*28..30]->(b:person) RETURN COUNT(*) +-LOG KnowsVeryLargeAdjListLongPathTest +-STATEMENT MATCH (a:person)-[:knows*28..30]->(b:person) RETURN COUNT(*) -PARALLELISM 2 ---- 1 450003 diff --git a/test/test_files/shortest_path/all_shortest_path.test b/test/test_files/shortest_path/all_shortest_path.test index 42377e1fdd..6d15bb4e24 100644 --- a/test/test_files/shortest_path/all_shortest_path.test +++ b/test/test_files/shortest_path/all_shortest_path.test @@ -8,13 +8,13 @@ # 10 -> 7 -> 9 # 10 <- 7 -> 9 # 10 <- 8 -> 9 --NAME SingleSourceSingleDst --QUERY MATCH (a:person)-[r:knows* ALL SHORTEST 1..30]-(b:person) WHERE a.ID = 9 AND b.ID = 10 RETURN COUNT(*) +-LOG SingleSourceSingleDst +-STATEMENT MATCH (a:person)-[r:knows* ALL SHORTEST 1..30]-(b:person) WHERE a.ID = 9 AND b.ID = 10 RETURN COUNT(*) ---- 1 3 --NAME SingleSource --QUERY MATCH (a:person)-[r:knows* ALL SHORTEST 1..30]->(b:person) WHERE a.ID = 10 RETURN b.ID, length(r), COUNT(*) +-LOG SingleSource +-STATEMENT MATCH (a:person)-[r:knows* ALL SHORTEST 1..30]->(b:person) WHERE a.ID = 10 RETURN b.ID, length(r), COUNT(*) ---- 7 0|1|1 2|2|2 diff --git a/test/test_files/shortest_path/bfs_sssp.test b/test/test_files/shortest_path/bfs_sssp.test index dd784486e0..4d2b28e05f 100644 --- a/test/test_files/shortest_path/bfs_sssp.test +++ b/test/test_files/shortest_path/bfs_sssp.test @@ -12,8 +12,8 @@ #Alice|Farooq|{_NODES: [0:0,0:1,0:4,0:5], _RELS: [1:0,1:6,1:13]} #Alice|Greg|{_NODES: [0:0,0:1,0:4,0:6], _RELS: [1:0,1:6,1:14]} #Alice|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|{_NODES: [0:0,0:1,0:4,0:7], _RELS: [1:0,1:6,1:15]} --NAME SingleSourceAllDestinationsSSP --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN a.fName, b.fName, rels(r), (nodes(r)[2]).fName +-LOG SingleSourceAllDestinationsSSP +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN a.fName, b.fName, rels(r), (nodes(r)[2]).fName ---- 7 Alice|Bob|[{_ID: 1:0}]|Bob Alice|Carol|[{_ID: 1:1}]|Carol @@ -29,8 +29,8 @@ Alice|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|[{_ID: 1:0},{_ID: 1:6},{ #Elizabeth|Alice|{_NODES: [0:0,0:7,0:4], _RELS: [1:20,1:15]} #Farooq|Alice|{_NODES: [0:0,0:7,0:5], _RELS: [1:20,1:17]} #Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|Alice|{_NODES: [0:0,0:7], _RELS: [1:20]} --NAME AllSourcesSingleDestinationQuery --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.fName = 'Alice' RETURN a.fName, b.fName, rels(r), (nodes(r)[2]).fName +-LOG AllSourcesSingleDestinationQuery +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.fName = 'Alice' RETURN a.fName, b.fName, rels(r), (nodes(r)[2]).fName ---- 6 Bob|Alice|[{_ID: 1:3}]|Bob Carol|Alice|[{_ID: 1:7}]|Carol @@ -40,8 +40,8 @@ Farooq|Alice|[{_ID: 1:20},{_ID: 1:17}]|Hubert Blaine Wolfeschlegelsteinhausenber Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|Alice|[{_ID: 1:20}]|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME SingleSourceWithAllProperties --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN length(r), b, a +-LOG SingleSourceWithAllProperties +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN length(r), b, a ---- 7 1|(label:person, 0:1, {ID:2, fName:Bob, gender:2, isStudent:True, isWorker:False, age:30, eyeSight:5.100000, birthdate:1900-01-01, registerTime:2008-11-03 15:25:30.000526, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[12,8], usedNames:[Bobby], courseScoresPerTerm:[[8,9],[9,10]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) 1|(label:person, 0:2, {ID:3, fName:Carol, gender:1, isStudent:False, isWorker:True, age:45, eyeSight:5.000000, birthdate:1940-06-22, registerTime:1911-08-20 02:32:21, lastJobDuration:48:24:11, workedHours:[4,5], usedNames:[Carmen,Fred], courseScoresPerTerm:[[8,10]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) @@ -51,8 +51,8 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|Alice|[{_ID: 1:20}]|Hubert Bla 3|(label:person, 0:6, {ID:9, fName:Greg, gender:2, isStudent:False, isWorker:False, age:40, eyeSight:4.900000, birthdate:1980-10-26, registerTime:1976-12-23 04:41:42, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[1], usedNames:[Grad], courseScoresPerTerm:[[10]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) 3|(label:person, 0:7, {ID:10, fName:Hubert Blaine Wolfeschlegelsteinhausenbergerdorff, gender:2, isStudent:False, isWorker:True, age:83, eyeSight:4.900000, birthdate:1990-11-27, registerTime:2023-02-21 13:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,11,12,3,4,5,6,7], usedNames:[Ad,De,Hi,Kye,Orlan], courseScoresPerTerm:[[7],[10],[6,7]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) --NAME SingleSourceSingleDestination --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Bob' RETURN a.fName, b.fName, length(r) +-LOG SingleSourceSingleDestination +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Bob' RETURN a.fName, b.fName, length(r) ---- 1 Alice|Bob|1 @@ -61,8 +61,8 @@ Alice|Bob|1 #Elizabeth|Farooq|{_NODES: [0:4,0:5], _RELS: [1:13]} #Elizabeth|Greg|{_NODES: [0:4,0:6], _RELS: [1:14]} #Elizabeth|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|{_NODES: [0:4,0:7], _RELS: [1:15]} --NAME SingleSourceAllDestinations2 --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..2]->(b:person) WHERE a.fName = 'Elizabeth' RETURN a.fName, b.fName, rels(r), (nodes(r)[2]).fName +-LOG SingleSourceAllDestinations2 +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..2]->(b:person) WHERE a.fName = 'Elizabeth' RETURN a.fName, b.fName, rels(r), (nodes(r)[2]).fName ---- 5 Elizabeth|Alice|[{_ID: 1:15},{_ID: 1:20}]|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff Elizabeth|Dan|[{_ID: 1:15},{_ID: 1:21}]|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff @@ -71,13 +71,13 @@ Elizabeth|Greg|[{_ID: 1:14}]|Greg Elizabeth|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|[{_ID: 1:15}]|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME SingleSourceUnreachableDestination --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Alice11' RETURN a.fName, b.fName, r +-LOG SingleSourceUnreachableDestination +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Alice11' RETURN a.fName, b.fName, r ---- 0 --NAME MultipleSrcMultipleDstQuery --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..10]->(b:person) WHERE a.isStudent = true AND b.isWorker = true RETURN a.fName, b.fName, length(r) +-LOG MultipleSrcMultipleDstQuery +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..10]->(b:person) WHERE a.isStudent = true AND b.isWorker = true RETURN a.fName, b.fName, length(r) ---- 12 Alice|Carol|1 Alice|Dan|1 @@ -92,13 +92,13 @@ Farooq|Dan|2 Farooq|Elizabeth|1 Farooq|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|1 --NAME SSPWithExtend --QUERY MATCH (c:person)<-[:knows* SHORTEST 1..30]-(a:person)-[r:knows* SHORTEST 1..30]->(b:person), (b)-[:knows]->(c) WHERE a.fName = 'Alice' AND b.ID < 6 AND c.ID > 5 RETURN a.fName, b.fName, c.fName +-LOG SSPWithExtend +-STATEMENT MATCH (c:person)<-[:knows* SHORTEST 1..30]-(a:person)-[r:knows* SHORTEST 1..30]->(b:person), (b)-[:knows]->(c) WHERE a.fName = 'Alice' AND b.ID < 6 AND c.ID > 5 RETURN a.fName, b.fName, c.fName ---- 1 Alice|Bob|Elizabeth --NAME MultiPart --QUERY MATCH (a)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.ID > 6 AND a.fName = 'Alice' WITH a, b, r MATCH (c:person)<-[:knows]-(a:person) RETURN b.fName, length(r), COUNT(*) +-LOG MultiPart +-STATEMENT MATCH (a)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.ID > 6 AND a.fName = 'Alice' WITH a, b, r MATCH (c:person)<-[:knows]-(a:person) RETURN b.fName, length(r), COUNT(*) ---- 4 Elizabeth|2|3 Farooq|3|3 diff --git a/test/test_files/shortest_path/bfs_sssp_large.test b/test/test_files/shortest_path/bfs_sssp_large.test index c33bc7e250..9b68ff07ec 100644 --- a/test/test_files/shortest_path/bfs_sssp_large.test +++ b/test/test_files/shortest_path/bfs_sssp_large.test @@ -11,8 +11,8 @@ -CASE BfsLarge --NAME SingleSrcAllDstQueryLarge --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice11' RETURN a.fName, b.fName, length(r) +-LOG SingleSrcAllDstQueryLarge +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice11' RETURN a.fName, b.fName, length(r) ---- 300 Alice11|Alice100|9 Alice11|Alice101|9 @@ -315,8 +315,8 @@ Alice11|Alice97|9 Alice11|Alice98|9 Alice11|Alice99|9 --NAME MultipleSrcAllDstQueryLarge --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice11' OR a.fName = 'Alice' RETURN a.fName, b.fName, length(r) +-LOG MultipleSrcAllDstQueryLarge +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice11' OR a.fName = 'Alice' RETURN a.fName, b.fName, length(r) ---- 307 Alice11|Alice100|9 Alice11|Alice101|9 diff --git a/test/test_files/shortest_path/bfs_sssp_parquet.test b/test/test_files/shortest_path/bfs_sssp_parquet.test index e275b4fe58..fdb48ae8fa 100644 --- a/test/test_files/shortest_path/bfs_sssp_parquet.test +++ b/test/test_files/shortest_path/bfs_sssp_parquet.test @@ -7,8 +7,8 @@ -CASE BfsParquet --NAME SingleSourceAllDestinationsSSP --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN a.fName, b.fName, r +-LOG SingleSourceAllDestinationsSSP +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN a.fName, b.fName, r ---- 7 Alice|Bob|[0:0,1:0,0:1] Alice|Carol|[0:0,1:1,0:2] @@ -18,8 +18,8 @@ Alice|Farooq|[0:0,1:0,0:1,1:6,0:4,1:13,0:5] Alice|Greg|[0:0,1:0,0:1,1:6,0:4,1:14,0:6] Alice|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|[0:0,1:0,0:1,1:6,0:4,1:15,0:7] --NAME AllSourcesSingleDestinationQuery --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.fName = 'Alice' RETURN a.fName, b.fName, r +-LOG AllSourcesSingleDestinationQuery +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.fName = 'Alice' RETURN a.fName, b.fName, r ---- 6 Bob|Alice|[0:0,1:3,0:1] Carol|Alice|[0:0,1:7,0:2] @@ -28,8 +28,8 @@ Elizabeth|Alice|[0:0,1:20,0:7,1:15,0:4] Farooq|Alice|[0:0,1:20,0:7,1:17,0:5] Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|Alice|[0:0,1:20,0:7] --NAME SingleSourceWithAllProperties --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN length(r), b, a +-LOG SingleSourceWithAllProperties +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' RETURN length(r), b, a ---- 7 1|(label:person, 0:1, {ID:2, fName:Bob, gender:2, isStudent:True, isWorker:False, age:30, eyeSight:5.100000, birthdate:1900-01-01, registerTime:2008-11-03 15:25:30.000526, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[12,8], usedNames:[Bobby], courseScoresPerTerm:[[8,9],[9,10]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) 1|(label:person, 0:2, {ID:3, fName:Carol, gender:1, isStudent:False, isWorker:True, age:45, eyeSight:5.000000, birthdate:1940-06-22, registerTime:1911-08-20 02:32:21, lastJobDuration:48:24:11, workedHours:[4,5], usedNames:[Carmen,Fred], courseScoresPerTerm:[[8,10]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) @@ -39,13 +39,13 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|Alice|[0:0,1:20,0:7] 3|(label:person, 0:6, {ID:9, fName:Greg, gender:2, isStudent:False, isWorker:False, age:40, eyeSight:4.900000, birthdate:1980-10-26, registerTime:1976-12-23 04:41:42, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[1], usedNames:[Grad], courseScoresPerTerm:[[10]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) 3|(label:person, 0:7, {ID:10, fName:Hubert Blaine Wolfeschlegelsteinhausenbergerdorff, gender:2, isStudent:False, isWorker:True, age:83, eyeSight:4.900000, birthdate:1990-11-27, registerTime:2023-02-21 13:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,11,12,3,4,5,6,7], usedNames:[Ad,De,Hi,Kye,Orlan], courseScoresPerTerm:[[7],[10],[6,7]]})|(label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]]}) --NAME SingleSourceSingleDestination --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Bob' RETURN a.fName, b.fName, length(r) +-LOG SingleSourceSingleDestination +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Bob' RETURN a.fName, b.fName, length(r) ---- 1 Alice|Bob|1 --NAME SingleSourceAllDestinations2 --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..2]->(b:person) WHERE a.fName = 'Elizabeth' RETURN a.fName, b.fName, r +-LOG SingleSourceAllDestinations2 +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..2]->(b:person) WHERE a.fName = 'Elizabeth' RETURN a.fName, b.fName, r ---- 5 Elizabeth|Alice|[0:4,1:15,0:7,1:20,0:0] Elizabeth|Dan|[0:4,1:15,0:7,1:21,0:3] @@ -53,13 +53,13 @@ Elizabeth|Farooq|[0:4,1:13,0:5] Elizabeth|Greg|[0:4,1:14,0:6] Elizabeth|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|[0:4,1:15,0:7] --NAME SingleSourceUnreachableDestination --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Alice11' RETURN a.fName, b.fName, r +-LOG SingleSourceUnreachableDestination +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..30]->(b:person) WHERE a.fName = 'Alice' AND b.fName = 'Alice11' RETURN a.fName, b.fName, r ---- 0 --NAME MultipleSrcMultipleDstQuery --QUERY MATCH (a:person)-[r:knows* SHORTEST 1..10]->(b:person) WHERE a.isStudent = true AND b.isWorker = true RETURN a.fName, b.fName, length(r) +-LOG MultipleSrcMultipleDstQuery +-STATEMENT MATCH (a:person)-[r:knows* SHORTEST 1..10]->(b:person) WHERE a.isStudent = true AND b.isWorker = true RETURN a.fName, b.fName, length(r) ---- 12 Alice|Carol|1 Alice|Dan|1 @@ -74,13 +74,13 @@ Farooq|Dan|2 Farooq|Elizabeth|1 Farooq|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|1 --NAME SSPWithExtend --QUERY MATCH (c:person)<-[:knows* SHORTEST 1..30]-(a:person)-[r:knows* SHORTEST 1..30]->(b:person), (b)-[:knows]->(c) WHERE a.fName = 'Alice' AND b.ID < 6 AND c.ID > 5 RETURN a.fName, b.fName, c.fName +-LOG SSPWithExtend +-STATEMENT MATCH (c:person)<-[:knows* SHORTEST 1..30]-(a:person)-[r:knows* SHORTEST 1..30]->(b:person), (b)-[:knows]->(c) WHERE a.fName = 'Alice' AND b.ID < 6 AND c.ID > 5 RETURN a.fName, b.fName, c.fName ---- 1 Alice|Bob|Elizabeth --NAME MultiPart --QUERY MATCH (a)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.ID > 6 AND a.fName = 'Alice' WITH a, b, r MATCH (c:person)<-[:knows]-(a:person) RETURN b.fName, length(r), COUNT(*) +-LOG MultiPart +-STATEMENT MATCH (a)-[r:knows* SHORTEST 1..30]->(b:person) WHERE b.ID > 6 AND a.fName = 'Alice' WITH a, b, r MATCH (c:person)<-[:knows]-(a:person) RETURN b.fName, length(r), COUNT(*) ---- 4 Elizabeth|2|3 Farooq|3|3 diff --git a/test/test_files/tinysnb/acc/acc_hj.test b/test/test_files/tinysnb/acc/acc_hj.test index f0688ab091..32b6476c93 100644 --- a/test/test_files/tinysnb/acc/acc_hj.test +++ b/test/test_files/tinysnb/acc/acc_hj.test @@ -5,16 +5,16 @@ -CASE Acc --NAME AspBasic --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.age > 35 RETURN b.fName +-LOG AspBasic +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.age > 35 RETURN b.fName -ENCODED_JOIN HJ(b._id){E(b)S(a)}{S(b)} ---- 3 Alice Bob Dan --NAME AspMultiLabel --QUERY MATCH (a:person)-[e1:knows|:studyAt|:workAt]->(b:person:organisation) WHERE a.age > 35 RETURN b.fName, b.name +-LOG AspMultiLabel +-STATEMENT MATCH (a:person)-[e1:knows|:studyAt|:workAt]->(b:person:organisation) WHERE a.age > 35 RETURN b.fName, b.name -ENCODED_JOIN HJ(b._id){E(b)S(a)}{S(b)} ---- 4 Alice| @@ -22,8 +22,8 @@ Bob| Dan| |CsWork --NAME AspMultiKey --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE a.fName='Alice' RETURN b.fName, c.fName +-LOG AspMultiKey +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE a.fName='Alice' RETURN b.fName, c.fName #-ENCODED_JOIN HJ(c._id,b._id){E(b)E(c)S(a)}{HJ(b._id){S(b)}{E(b)S(c)}} -ENUMERATE ---- 6 @@ -34,23 +34,23 @@ Carol|Dan Dan|Bob Dan|Carol --NAME AspMultiMaskToOneScan --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE a.fName='Alice' AND c.fName='Bob' RETURN b.fName +-LOG AspMultiMaskToOneScan +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE a.fName='Alice' AND c.fName='Bob' RETURN b.fName #-ENCODED_JOIN HJ(b._id){E(b)S(a)}{HJ(b._id){E(b)S(c)}{S(b)}} -ENUMERATE ---- 2 Carol Dan --NAME AspOneMaskToMultiScan --QUERY MATCH (a:person)-[e1:knows]->(b:person), (a)-[e2:knows]->(b), (a)-[e3:knows]->(c:person)-[e4:knows]->(d:person) WHERE e1.date=date('1950-05-14') AND a.ID>0 AND c.fName='Bob' AND d.fName='Carol' RETURN a.fName, b.fName +-LOG AspOneMaskToMultiScan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person), (a)-[e2:knows]->(b), (a)-[e3:knows]->(c:person)-[e4:knows]->(d:person) WHERE e1.date=date('1950-05-14') AND a.ID>0 AND c.fName='Bob' AND d.fName='Carol' RETURN a.fName, b.fName -ENUMERATE ---- 2 Carol|Bob Dan|Bob --NAME AspIntersect --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE b.fName='Bob' AND a.fName='Alice' RETURN COUNT(*) +-LOG AspIntersect +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE b.fName='Bob' AND a.fName='Alice' RETURN COUNT(*) -ENUMERATE ---- 1 2 diff --git a/test/test_files/tinysnb/agg/distinct_agg.test b/test/test_files/tinysnb/agg/distinct_agg.test index f6455b508e..231d0d8383 100644 --- a/test/test_files/tinysnb/agg/distinct_agg.test +++ b/test/test_files/tinysnb/agg/distinct_agg.test @@ -5,19 +5,19 @@ -CASE AggDistinct --NAME SingleNodeDistinctAggTest1 --QUERY MATCH (a:person) RETURN COUNT(DISTINCT a.gender), COUNT(DISTINCT a.age) +-LOG SingleNodeDistinctAggTest1 +-STATEMENT MATCH (a:person) RETURN COUNT(DISTINCT a.gender), COUNT(DISTINCT a.age) ---- 1 2|7 --NAME SingleNodeDistinctAggTest2 --QUERY MATCH (a:person) RETURN a.gender, COUNT(DISTINCT a.isStudent) +-LOG SingleNodeDistinctAggTest2 +-STATEMENT MATCH (a:person) RETURN a.gender, COUNT(DISTINCT a.isStudent) ---- 2 1|2 2|2 --NAME TwoHopDistinctAggTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN a.ID, SUM(DISTINCT a.age), SUM(DISTINCT c.age) +-LOG TwoHopDistinctAggTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN a.ID, SUM(DISTINCT a.age), SUM(DISTINCT c.age) -ENUMERATE ---- 4 0|35|130 @@ -25,19 +25,19 @@ 3|45|130 5|20|130 --NAME OneHopDistinctAggTest --QUERY MATCH (p:person)-[:knows]->(:person) RETURN count(distinct p.ID) +-LOG OneHopDistinctAggTest +-STATEMENT MATCH (p:person)-[:knows]->(:person) RETURN count(distinct p.ID) -ENUMERATE ---- 1 5 --NAME SimpleDistinctCollectINT64Test --QUERY MATCH (p:person) RETURN collect(distinct p.age) +-LOG SimpleDistinctCollectINT64Test +-STATEMENT MATCH (p:person) RETURN collect(distinct p.age) ---- 1 [35,30,45,20,25,40,83] --NAME HashDistinctCollectDoubleTest --QUERY MATCH (p:person) RETURN p.gender, collect(distinct p.isStudent) +-LOG HashDistinctCollectDoubleTest +-STATEMENT MATCH (p:person) RETURN p.gender, collect(distinct p.isStudent) ---- 2 1|[True,False] 2|[True,False] diff --git a/test/test_files/tinysnb/agg/hash.test b/test/test_files/tinysnb/agg/hash.test index 0443daa077..7846616eef 100644 --- a/test/test_files/tinysnb/agg/hash.test +++ b/test/test_files/tinysnb/agg/hash.test @@ -5,8 +5,8 @@ -CASE AggHash --NAME SingleNodeAggTest --QUERY MATCH (a:person) RETURN a.age, MIN(a.ID), AVG(a.eyeSight), COUNT(*) +-LOG SingleNodeAggTest +-STATEMENT MATCH (a:person) RETURN a.age, MIN(a.ID), AVG(a.eyeSight), COUNT(*) ---- 7 20|5|4.750000|2 25|8|4.500000|1 @@ -16,8 +16,8 @@ 45|3|5.000000|1 83|10|4.900000|1 --NAME InMemOverflowBufferTest --QUERY MATCH (a:person) RETURN a.fName as name, COUNT(*) order by name desc +-LOG InMemOverflowBufferTest +-STATEMENT MATCH (a:person) RETURN a.fName as name, COUNT(*) order by name desc -PARALLELISM 1 ---- 8 Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|1 @@ -29,14 +29,14 @@ Carol|1 Bob|1 Alice|1 --NAME SingleNodeDistinctTest --QUERY MATCH (a:person) RETURN DISTINCT a.gender +-LOG SingleNodeDistinctTest +-STATEMENT MATCH (a:person) RETURN DISTINCT a.gender ---- 2 1 2 --NAME OneHopAggTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN a.age, a.gender, COUNT(*) +-LOG OneHopAggTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN a.age, a.gender, COUNT(*) -ENUMERATE -PARALLELISM 2 ---- 5 @@ -46,24 +46,24 @@ Alice|1 35|1|3 45|1|3 --NAME OneHopHashAggTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN a.gender, COUNT(*), SUM(b.age) +-LOG OneHopHashAggTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN a.gender, COUNT(*), SUM(b.age) -PARALLELISM 3 -ENUMERATE ---- 2 1|8|245 2|6|210 --NAME TwoHopAggTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN a.gender, COUNT(*), COUNT(DISTINCT b.age) +-LOG TwoHopAggTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN a.gender, COUNT(*), COUNT(DISTINCT b.age) -PARALLELISM 5 -ENUMERATE ---- 2 1|18|4 2|18|4 --NAME OneHopAggFlatUnflatVecTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN a.ID, b.gender, sum(b.age) +-LOG OneHopAggFlatUnflatVecTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN a.ID, b.gender, sum(b.age) -PARALLELISM 6 -ENUMERATE ---- 9 @@ -77,8 +77,8 @@ Alice|1 5|2|30 7|2|65 --NAME OneHopAggFlatUnflatVecWithNonHashKeyTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN a.ID, a.gender, b.gender, sum(b.age) +-LOG OneHopAggFlatUnflatVecWithNonHashKeyTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN a.ID, a.gender, b.gender, sum(b.age) -ENUMERATE ---- 9 0|1|1|45 @@ -91,8 +91,8 @@ Alice|1 5|2|2|30 7|1|2|65 --NAME OneHopDistinctTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN DISTINCT a.gender, b.isStudent +-LOG OneHopDistinctTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN DISTINCT a.gender, b.isStudent -ENUMERATE ---- 4 1|False @@ -100,8 +100,8 @@ Alice|1 2|False 2|True --NAME TwoHopDistinctTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN DISTINCT a.ID + 1 +-LOG TwoHopDistinctTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN DISTINCT a.ID + 1 -ENUMERATE ---- 4 1 @@ -109,14 +109,14 @@ Alice|1 4 6 --NAME HashCollectINT64Test --QUERY MATCH (p:person) RETURN p.gender, collect(p.age) +-LOG HashCollectINT64Test +-STATEMENT MATCH (p:person) RETURN p.gender, collect(p.age) ---- 2 1|[35,45,20] 2|[30,20,25,40,83] --NAME HashCollectFloatTest --QUERY MATCH (p:person) RETURN p.height, collect(p.eyeSight) +-LOG HashCollectFloatTest +-STATEMENT MATCH (p:person) RETURN p.height, collect(p.eyeSight) ---- 8 1.731000|[5.000000] 0.990000|[5.100000] @@ -127,8 +127,8 @@ Alice|1 1.600000|[4.900000] 1.323000|[4.900000] --NAME HashCollectSTRINGTest --QUERY MATCH (p:person) RETURN p.age, collect(p.fName) +-LOG HashCollectSTRINGTest +-STATEMENT MATCH (p:person) RETURN p.age, collect(p.fName) ---- 7 35|[Alice] 30|[Bob] @@ -138,27 +138,27 @@ Alice|1 40|[Greg] 83|[Hubert Blaine Wolfeschlegelsteinhausenbergerdorff] --NAME HashCollectBLOBTest --QUERY MATCH (m:movies) RETURN m.length > 130, collect(m.content) +-LOG HashCollectBLOBTest +-STATEMENT MATCH (m:movies) RETURN m.length > 130, collect(m.content) ---- 2 False|[\xAA\xABinteresting\x0B] True|[\xAB\xCD,pure ascii characters] --NAME HashCollectLISTOfINT64Test --QUERY MATCH (p:person) RETURN p.gender, collect(p.workedHours) +-LOG HashCollectLISTOfINT64Test +-STATEMENT MATCH (p:person) RETURN p.gender, collect(p.workedHours) ---- 2 1|[[10,5],[4,5],[2]] 2|[[12,8],[1,9],[3,4,5,6,7],[1],[10,11,12,3,4,5,6,7]] --NAME HashCollectLISTOfSTRINGTest --QUERY MATCH (p:person) RETURN p.isStudent, collect(p.usedNames) +-LOG HashCollectLISTOfSTRINGTest +-STATEMENT MATCH (p:person) RETURN p.isStudent, collect(p.usedNames) ---- 2 True|[[Aida],[Bobby],[Fesdwe]] False|[[Carmen,Fred],[Wolfeschlegelstein,Daniel],[Ein],[Grad],[Ad,De,Hi,Kye,Orlan]] --NAME HashCollectLISTOfLISTOfINT64Test --QUERY MATCH (p:person) RETURN p.ID, collect(p.courseScoresPerTerm) +-LOG HashCollectLISTOfLISTOfINT64Test +-STATEMENT MATCH (p:person) RETURN p.ID, collect(p.courseScoresPerTerm) ---- 8 0|[[[10,8],[6,7,8]]] 2|[[[8,9],[9,10]]] @@ -169,15 +169,15 @@ False|[[Carmen,Fred],[Wolfeschlegelstein,Daniel],[Ein],[Grad],[Ad,De,Hi,Kye,Orla 9|[[[10]]] 10|[[[7],[10],[6,7]]] --NAME HashCollectLISTOfSTRINGMultiThreadTest --QUERY MATCH (p:person) RETURN p.isStudent, collect(p.usedNames) +-LOG HashCollectLISTOfSTRINGMultiThreadTest +-STATEMENT MATCH (p:person) RETURN p.isStudent, collect(p.usedNames) -PARALLELISM 4 ---- 2 True|[[Aida],[Bobby],[Fesdwe]] False|[[Carmen,Fred],[Wolfeschlegelstein,Daniel],[Ein],[Grad],[Ad,De,Hi,Kye,Orlan]] --NAME HashCollectOneHopTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN a.fName, collect(b.age) +-LOG HashCollectOneHopTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN a.fName, collect(b.age) ---- 5 Alice|[30,45,20] Bob|[35,45,20] @@ -185,37 +185,37 @@ Carol|[35,30,20] Dan|[35,30,45] Elizabeth|[25,40] --NAME HashCollectOnInt32Test --QUERY MATCH (m:movies) RETURN m.length, collect(m.name) +-LOG HashCollectOnInt32Test +-STATEMENT MATCH (m:movies) RETURN m.length, collect(m.name) ---- 3 126|[Sóló cón tu párejâ] 2544|[The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie] 298|[Roma] --NAME HashCollectOnInt16Test --QUERY MATCH (:person)-[s:studyAt]->(:organisation) RETURN s.year, collect(s.length) +-LOG HashCollectOnInt16Test +-STATEMENT MATCH (:person)-[s:studyAt]->(:organisation) RETURN s.year, collect(s.length) ---- 2 2020|[55,22] 2021|[5] --NAME HashAggCountBlob --QUERY MATCH (m:movies) RETURN m.length > 2542, COUNT(m.content) +-LOG HashAggCountBlob +-STATEMENT MATCH (m:movies) RETURN m.length > 2542, COUNT(m.content) -PARALLELISM 4 -ENUMERATE ---- 2 False|2 True|1 --NAME HashAggMinBlob --QUERY MATCH (m:movies) RETURN m.length <> 298, MIN(m.content) +-LOG HashAggMinBlob +-STATEMENT MATCH (m:movies) RETURN m.length <> 298, MIN(m.content) -PARALLELISM 2 -ENUMERATE ---- 2 False|pure ascii characters True|\xAA\xABinteresting\x0B --NAME HashAggMaxBlob --QUERY MATCH (m:movies) RETURN m.length <> 126, MAX(m.content) +-LOG HashAggMaxBlob +-STATEMENT MATCH (m:movies) RETURN m.length <> 126, MAX(m.content) -PARALLELISM 1 -ENUMERATE ---- 2 diff --git a/test/test_files/tinysnb/agg/multi_label.test b/test/test_files/tinysnb/agg/multi_label.test index fbeb18bf20..0e25ef51ad 100644 --- a/test/test_files/tinysnb/agg/multi_label.test +++ b/test/test_files/tinysnb/agg/multi_label.test @@ -5,12 +5,12 @@ -CASE AggMultiLabel --NAME MultiLabelAggTest1 --QUERY MATCH (a:person)<-[e1:marries|studyAt]-(b:person)-[e2:knows]->(c:person) WHERE b.ID = 7 RETURN ID(e1), COUNT(*), MIN(e2.date) +-LOG MultiLabelAggTest1 +-STATEMENT MATCH (a:person)<-[e1:marries|studyAt]-(b:person)-[e2:knows]->(c:person) WHERE b.ID = 7 RETURN ID(e1), COUNT(*), MIN(e2.date) ---- 1 7:2|2|1905-12-12 --NAME MultiLabelAggTest2 --QUERY MATCH (a:person)-[e1:marries|studyAt]->(b:person) RETURN NULL, COUNT(*) +-LOG MultiLabelAggTest2 +-STATEMENT MATCH (a:person)-[e1:marries|studyAt]->(b:person) RETURN NULL, COUNT(*) ---- 1 |3 diff --git a/test/test_files/tinysnb/agg/multi_query_part.test b/test/test_files/tinysnb/agg/multi_query_part.test index 97c23663ef..a18cfd3c80 100644 --- a/test/test_files/tinysnb/agg/multi_query_part.test +++ b/test/test_files/tinysnb/agg/multi_query_part.test @@ -5,29 +5,29 @@ -CASE AggMultiQueryPart --NAME SimpleAvgWithFilterMultiQueryTest --QUERY MATCH (a:person) WHERE a.birthdate = date('1980-10-26') WITH AVG(a.age) AS avgAge, AVG(a.eyeSight) AS avgEyeSight RETURN avgAge > avgEyeSight +-LOG SimpleAvgWithFilterMultiQueryTest +-STATEMENT MATCH (a:person) WHERE a.birthdate = date('1980-10-26') WITH AVG(a.age) AS avgAge, AVG(a.eyeSight) AS avgEyeSight RETURN avgAge > avgEyeSight ---- 1 True --NAME SimpleCountMultiQueryTest2 --QUERY MATCH (p:person) WITH p AS f RETURN COUNT(f); +-LOG SimpleCountMultiQueryTest2 +-STATEMENT MATCH (p:person) WITH p AS f RETURN COUNT(f); ---- 1 8 --NAME SimpleCountMultiQueryTest3 --QUERY MATCH (a:person) WITH COUNT(*) AS s MATCH (c:person) WHERE c.ID > s RETURN c.ID +-LOG SimpleCountMultiQueryTest3 +-STATEMENT MATCH (a:person) WITH COUNT(*) AS s MATCH (c:person) WHERE c.ID > s RETURN c.ID ---- 2 10 9 --NAME SimpleCountMultiQueryTest4 --QUERY MATCH (a:person) WITH COUNT(*) AS s MATCH (b:person) WHERE b.ID < s RETURN COUNT(*) +-LOG SimpleCountMultiQueryTest4 +-STATEMENT MATCH (a:person) WITH COUNT(*) AS s MATCH (b:person) WHERE b.ID < s RETURN COUNT(*) ---- 1 5 --NAME GroupByMultiQueryTest --QUERY MATCH (a:person)-[:knows]->(b:person) WITH a.gender AS k, SUM(b.age) AS s MATCH (d:person)-[:workAt]->(c:organisation) WHERE c.orgCode > s RETURN d.ID, c.orgCode, s +-LOG GroupByMultiQueryTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WITH a.gender AS k, SUM(b.age) AS s MATCH (d:person)-[:workAt]->(c:organisation) WHERE c.orgCode > s RETURN d.ID, c.orgCode, s -ENUMERATE ---- 6 3|934|210 @@ -37,8 +37,8 @@ True 7|824|210 7|824|245 --NAME GroupByMultiQueryTest2 --QUERY MATCH (a:person)-[:knows]->(b:person) WITH a, COUNT(*) AS s MATCH (a)-[:knows]->(c:person) WHERE c.ID > s RETURN a.ID, c.ID, s +-LOG GroupByMultiQueryTest2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WITH a, COUNT(*) AS s MATCH (a)-[:knows]->(c:person) WHERE c.ID > s RETURN a.ID, c.ID, s ---- 5 0|5|3 2|5|3 @@ -46,8 +46,8 @@ True 7|8|2 7|9|2 --NAME GroupByMultiQueryTest3 --QUERY MATCH (a:person) WHERE a.ID > 4 WITH a, a.age AS foo MATCH (a)-[:knows]->(b:person) RETURN a.ID, foo, COUNT(*) +-LOG GroupByMultiQueryTest3 +-STATEMENT MATCH (a:person) WHERE a.ID > 4 WITH a, a.age AS foo MATCH (a)-[:knows]->(b:person) RETURN a.ID, foo, COUNT(*) ---- 2 5|20|3 7|20|2 diff --git a/test/test_files/tinysnb/agg/serial_hash.test b/test/test_files/tinysnb/agg/serial_hash.test index b0e6cfda1b..d53879391f 100644 --- a/test/test_files/tinysnb/agg/serial_hash.test +++ b/test/test_files/tinysnb/agg/serial_hash.test @@ -5,13 +5,13 @@ -CASE AggSerial --NAME SimpleAggSerial --QUERY MATCH (a:person) RETURN SUM(a.ID), AVG(a.age) +-LOG SimpleAggSerial +-STATEMENT MATCH (a:person) RETURN SUM(a.ID), AVG(a.age) ---- 1 28|37.250000 --NAME HashAggSerial --QUERY MATCH (a:person) RETURN a.ID, SUM(a.age) +-LOG HashAggSerial +-STATEMENT MATCH (a:person) RETURN a.ID, SUM(a.age) ---- 8 0|35 1|30 diff --git a/test/test_files/tinysnb/agg/simple.test b/test/test_files/tinysnb/agg/simple.test index 12415e9920..565a109e29 100644 --- a/test/test_files/tinysnb/agg/simple.test +++ b/test/test_files/tinysnb/agg/simple.test @@ -5,195 +5,195 @@ -CASE AggSimple --NAME OneHopSimpleAggTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN COUNT(a.ID), MIN(a.fName), MAX(c.ID) +-LOG OneHopSimpleAggTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN COUNT(a.ID), MIN(a.fName), MAX(c.ID) -PARALLELISM 8 -ENUMERATE ---- 1 36|Alice|5 --NAME SimpleAvgTest --QUERY MATCH (a:person) RETURN AVG(a.age), AVG(a.eyeSight) +-LOG SimpleAvgTest +-STATEMENT MATCH (a:person) RETURN AVG(a.age), AVG(a.eyeSight) ---- 1 37.250000|4.862500 --NAME SimpleAvgFloatTest --QUERY MATCH (a:person) RETURN AVG(a.height) + 5 +-LOG SimpleAvgFloatTest +-STATEMENT MATCH (a:person) RETURN AVG(a.height) + 5 ---- 1 6.364625 --NAME SimpleCountTest --QUERY MATCH (a:person) RETURN COUNT(a.age) + 1 +-LOG SimpleCountTest +-STATEMENT MATCH (a:person) RETURN COUNT(a.age) + 1 ---- 1 9 --NAME SimpleCountTest2 --QUERY MATCH (a:person)-[e1:knows]->(:person) RETURN COUNT(e1) +-LOG SimpleCountTest2 +-STATEMENT MATCH (a:person)-[e1:knows]->(:person) RETURN COUNT(e1) ---- 1 14 --NAME SimpleSumTest --QUERY MATCH (a:person) RETURN SUM(a.age), SUM(a.eyeSight) +-LOG SimpleSumTest +-STATEMENT MATCH (a:person) RETURN SUM(a.age), SUM(a.eyeSight) ---- 1 298|38.900000 --NAME SimpleSumTest2 --QUERY MATCH (a:person) WHERE a.birthdate = date('1980-10-26') RETURN SUM(a.age+10), SUM(a.age*2) +-LOG SimpleSumTest2 +-STATEMENT MATCH (a:person) WHERE a.birthdate = date('1980-10-26') RETURN SUM(a.age+10), SUM(a.age*2) ---- 1 115|170 --NAME SimpleSumTest3 --QUERY MATCH (a:person) WHERE a.birthdate = date('1980-10-26') RETURN SUM(a.age+10) > SUM(a.age*2) +-LOG SimpleSumTest3 +-STATEMENT MATCH (a:person) WHERE a.birthdate = date('1980-10-26') RETURN SUM(a.age+10) > SUM(a.age*2) ---- 1 False --NAME SimpleSumTest4 --QUERY MATCH (a:person) RETURN sum(a.height) + 2.2 +-LOG SimpleSumTest4 +-STATEMENT MATCH (a:person) RETURN sum(a.height) + 2.2 ---- 1 13.117001 --NAME SimpleAvgTest --QUERY MATCH (a:person) RETURN AVG(a.age), AVG(a.eyeSight) +-LOG SimpleAvgTest +-STATEMENT MATCH (a:person) RETURN AVG(a.age), AVG(a.eyeSight) ---- 1 37.250000|4.862500 --NAME SimpleAvgTest2 --QUERY MATCH (a:person) WHERE a.birthdate = date('1980-10-26') RETURN AVG(a.age), AVG(a.eyeSight) +-LOG SimpleAvgTest2 +-STATEMENT MATCH (a:person) WHERE a.birthdate = date('1980-10-26') RETURN AVG(a.age), AVG(a.eyeSight) ---- 1 28.333333|4.700000 --NAME SimpleMinMaxTest --QUERY MATCH (a:person) RETURN MIN(a.age), MAX(a.age), MIN(a.isStudent), MAX(a.isStudent), MIN(a.eyeSight), MAX(a.eyeSight), MIN(a.birthdate), MAX(a.birthdate) +-LOG SimpleMinMaxTest +-STATEMENT MATCH (a:person) RETURN MIN(a.age), MAX(a.age), MIN(a.isStudent), MAX(a.isStudent), MIN(a.eyeSight), MAX(a.eyeSight), MIN(a.birthdate), MAX(a.birthdate) ---- 1 20|83|False|True|4.500000|5.100000|1900-01-01|1990-11-27 --NAME SimpleMinTest --QUERY MATCH (m:movies) RETURN MIN(m.note) +-LOG SimpleMinTest +-STATEMENT MATCH (m:movies) RETURN MIN(m.note) ---- 1 the movie is very very good --NAME TwoHopTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN SUM(b.age), MIN(b.ID), AVG(b.eyeSight) +-LOG TwoHopTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN SUM(b.age), MIN(b.ID), AVG(b.eyeSight) -ENUMERATE ---- 1 455|0|4.935714 --NAME SimpleCollectINT64Test --QUERY MATCH (p:person) RETURN collect(p.age) +-LOG SimpleCollectINT64Test +-STATEMENT MATCH (p:person) RETURN collect(p.age) ---- 1 [35,30,45,20,20,25,40,83] --NAME SimpleCollectINT32Test --QUERY MATCH (m:movies) RETURN collect(m.length) +-LOG SimpleCollectINT32Test +-STATEMENT MATCH (m:movies) RETURN collect(m.length) ---- 1 [126,2544,298] --NAME SimpleCollectINT16Test --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN collect(e.length) +-LOG SimpleCollectINT16Test +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN collect(e.length) ---- 1 [5,55,22] --NAME SimpleCollectBLOBTest --QUERY MATCH (m:movies) RETURN collect(m.content) +-LOG SimpleCollectBLOBTest +-STATEMENT MATCH (m:movies) RETURN collect(m.content) ---- 1 [\xAA\xABinteresting\x0B,\xAB\xCD,pure ascii characters] --NAME SimpleCollectSTRINGTest --QUERY MATCH (p:person) RETURN collect(p.fName) +-LOG SimpleCollectSTRINGTest +-STATEMENT MATCH (p:person) RETURN collect(p.fName) ---- 1 [Alice,Bob,Carol,Dan,Elizabeth,Farooq,Greg,Hubert Blaine Wolfeschlegelsteinhausenbergerdorff] --NAME SimpleCollectFLOATTest --QUERY MATCH (p:person) RETURN collect(p.height) +-LOG SimpleCollectFLOATTest +-STATEMENT MATCH (p:person) RETURN collect(p.height) ---- 1 [1.731000,0.990000,1.000000,1.300000,1.463000,1.510000,1.600000,1.323000] --NAME SimpleCollectLISTOfINT64Test --QUERY MATCH (p:person) RETURN collect(p.workedHours) +-LOG SimpleCollectLISTOfINT64Test +-STATEMENT MATCH (p:person) RETURN collect(p.workedHours) ---- 1 [[10,5],[12,8],[4,5],[1,9],[2],[3,4,5,6,7],[1],[10,11,12,3,4,5,6,7]] --NAME SimpleCollectLISTOfSTRINGTest --QUERY MATCH (p:person) RETURN collect(p.usedNames) +-LOG SimpleCollectLISTOfSTRINGTest +-STATEMENT MATCH (p:person) RETURN collect(p.usedNames) ---- 1 [[Aida],[Bobby],[Carmen,Fred],[Wolfeschlegelstein,Daniel],[Ein],[Fesdwe],[Grad],[Ad,De,Hi,Kye,Orlan]] --NAME SimpleCollectLISTOfLISTOfINT64Test --QUERY MATCH (p:person) RETURN collect(p.courseScoresPerTerm) +-LOG SimpleCollectLISTOfLISTOfINT64Test +-STATEMENT MATCH (p:person) RETURN collect(p.courseScoresPerTerm) ---- 1 [[[10,8],[6,7,8]],[[8,9],[9,10]],[[8,10]],[[7,4],[8,8],[9]],[[6],[7],[8]],[[8]],[[10]],[[7],[10],[6,7]]] --NAME SimpleCollectLISTOfINT64MultiThreadTest --QUERY MATCH (p:person) RETURN collect(p.workedHours) +-LOG SimpleCollectLISTOfINT64MultiThreadTest +-STATEMENT MATCH (p:person) RETURN collect(p.workedHours) -PARALLELISM 8 ---- 1 [[10,5],[12,8],[4,5],[1,9],[2],[3,4,5,6,7],[1],[10,11,12,3,4,5,6,7]] --NAME SimpleAggMinTimestampTest --QUERY MATCH (a:person) RETURN MIN(a.registerTime) +-LOG SimpleAggMinTimestampTest +-STATEMENT MATCH (a:person) RETURN MIN(a.registerTime) -PARALLELISM 8 -ENUMERATE ---- 1 1911-08-20 02:32:21 --NAME SimpleAggMinDateTest --QUERY MATCH (a:person) RETURN MIN(a.birthdate) +-LOG SimpleAggMinDateTest +-STATEMENT MATCH (a:person) RETURN MIN(a.birthdate) -PARALLELISM 7 -ENUMERATE ---- 1 1900-01-01 --NAME SimpleAggMinIntervalTest --QUERY MATCH (a:person) RETURN MIN(a.lastJobDuration) +-LOG SimpleAggMinIntervalTest +-STATEMENT MATCH (a:person) RETURN MIN(a.lastJobDuration) -PARALLELISM 4 -ENUMERATE ---- 1 00:18:00.024 --NAME SimpleAggMaxFloatTest --QUERY MATCH (:person)-[w:workAt]->(:organisation) RETURN MAX(w.rating) +-LOG SimpleAggMaxFloatTest +-STATEMENT MATCH (:person)-[w:workAt]->(:organisation) RETURN MAX(w.rating) -PARALLELISM 3 -ENUMERATE ---- 1 9.200000 --NAME SimpleAggMaxInt16Test --QUERY MATCH (:person)-[s:studyAt]->(:organisation) RETURN MAX(s.length) +-LOG SimpleAggMaxInt16Test +-STATEMENT MATCH (:person)-[s:studyAt]->(:organisation) RETURN MAX(s.length) -PARALLELISM 4 -ENUMERATE ---- 1 55 --NAME SimpleAggSumInt16Test --QUERY MATCH (:person)-[s:studyAt]->(:organisation) RETURN SUM(s.length) +-LOG SimpleAggSumInt16Test +-STATEMENT MATCH (:person)-[s:studyAt]->(:organisation) RETURN SUM(s.length) -PARALLELISM 2 -ENUMERATE ---- 1 82 --NAME SimpleAggAvgInt16Test --QUERY MATCH (m:movies) RETURN AVG(m.length) +-LOG SimpleAggAvgInt16Test +-STATEMENT MATCH (m:movies) RETURN AVG(m.length) -PARALLELISM 7 -ENUMERATE ---- 1 989.333333 --NAME SimpleAggCountBlob --QUERY MATCH (m:movies) RETURN COUNT(m.content) +-LOG SimpleAggCountBlob +-STATEMENT MATCH (m:movies) RETURN COUNT(m.content) -PARALLELISM 3 -ENUMERATE ---- 1 3 --NAME SimpleAggMinBlob --QUERY MATCH (m:movies) RETURN MIN(m.content) +-LOG SimpleAggMinBlob +-STATEMENT MATCH (m:movies) RETURN MIN(m.content) -PARALLELISM 3 -ENUMERATE ---- 1 pure ascii characters --NAME SimpleAggMaxBlob --QUERY MATCH (m:movies) RETURN MAX(m.content) +-LOG SimpleAggMaxBlob +-STATEMENT MATCH (m:movies) RETURN MAX(m.content) -PARALLELISM 3 -ENUMERATE ---- 1 diff --git a/test/test_files/tinysnb/cyclic/multi_label.test b/test/test_files/tinysnb/cyclic/multi_label.test index 19d5bad9c0..c7a06fdefc 100644 --- a/test/test_files/tinysnb/cyclic/multi_label.test +++ b/test/test_files/tinysnb/cyclic/multi_label.test @@ -5,13 +5,13 @@ -CASE CyclicMultiLabel --NAME MultiLabelCyclicTest --QUERY MATCH (a:person)-[:workAt|:knows|:studyAt]->(b:organisation), (a)-[:workAt]->(b) RETURN COUNT(*) +-LOG MultiLabelCyclicTest +-STATEMENT MATCH (a:person)-[:workAt|:knows|:studyAt]->(b:organisation), (a)-[:workAt]->(b) RETURN COUNT(*) ---- 1 3 --NAME MultiLabelTriangleTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:studyAt|:meets]->(c:organisation:person), (a)-[:studyAt|:meets]->(c) RETURN COUNT(*) +-LOG MultiLabelTriangleTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:studyAt|:meets]->(c:organisation:person), (a)-[:studyAt|:meets]->(c) RETURN COUNT(*) -ENUMERATE ---- 1 4 diff --git a/test/test_files/tinysnb/cyclic/single_label.test b/test/test_files/tinysnb/cyclic/single_label.test index 03d1882ce0..5ce4363131 100644 --- a/test/test_files/tinysnb/cyclic/single_label.test +++ b/test/test_files/tinysnb/cyclic/single_label.test @@ -5,14 +5,14 @@ -CASE CyclicSingleLabel --NAME TwoNodeCycleTest --QUERY MATCH (a:person)-[:knows]->(b:person), (b)-[:knows]->(a) RETURN COUNT(*) +-LOG TwoNodeCycleTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person), (b)-[:knows]->(a) RETURN COUNT(*) -ENUMERATE ---- 1 12 --NAME TwoNodeCycleWithProjectionTest --QUERY MATCH (a:person)-[:knows]->(b:person), (b)-[:knows]->(a) RETURN a.fName, b.fName +-LOG TwoNodeCycleWithProjectionTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person), (b)-[:knows]->(a) RETURN a.fName, b.fName -ENUMERATE ---- 12 Alice|Bob @@ -28,14 +28,14 @@ Dan|Alice Dan|Bob Dan|Carol --NAME TriangleTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(c) RETURN COUNT(*) +-LOG TriangleTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(c) RETURN COUNT(*) -ENUMERATE ---- 1 24 --NAME TriangleTestWithEdgeFilter --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE e1.date=DATE('1950-05-14') RETURN a.fName, e1.date, b.fName, e2.date, c.fName, e3.date +-LOG TriangleTestWithEdgeFilter +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE e1.date=DATE('1950-05-14') RETURN a.fName, e1.date, b.fName, e2.date, c.fName, e3.date -ENUMERATE ---- 8 Bob|1950-05-14|Carol|2021-06-30|Alice|2021-06-30 @@ -47,46 +47,46 @@ Carol|1950-05-14|Bob|1950-05-14|Dan|2000-01-01 Dan|1950-05-14|Bob|2021-06-30|Alice|2021-06-30 Dan|1950-05-14|Bob|1950-05-14|Carol|2000-01-01 --NAME TriangleTest3 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:studyAt]->(c:organisation), (a)-[:studyAt]->(c) RETURN COUNT(*) +-LOG TriangleTest3 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:studyAt]->(c:organisation), (a)-[:studyAt]->(c) RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME TriangleTest4 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(c) WHERE a.ID = b.ID + c.ID RETURN a.ID,b.ID,c.ID +-LOG TriangleTest4 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(c) WHERE a.ID = b.ID + c.ID RETURN a.ID,b.ID,c.ID -ENUMERATE ---- 2 5|3|2 5|2|3 --NAME TriangleTest5 --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE e1.date = e2.date AND e2.date = e3.date RETURN a.ID, b.ID, c.ID +-LOG TriangleTest5 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE e1.date = e2.date AND e2.date = e3.date RETURN a.ID, b.ID, c.ID -ENUMERATE ---- 0 --NAME TriangleTest6 --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE a.fName='Alice' AND e1.meetTime=timestamp('1986-10-21 21:08:31.521') RETURN b.fName, c.fName +-LOG TriangleTest6 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person), (a)-[e3:knows]->(c) WHERE a.fName='Alice' AND e1.meetTime=timestamp('1986-10-21 21:08:31.521') RETURN b.fName, c.fName -ENUMERATE ---- 2 Bob|Carol Bob|Dan --NAME TriangleWithProjectionTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:studyAt]->(c:organisation), (a)-[e3:studyAt]->(c) RETURN a.fName, e1.date, b.fName, e2.year, c.name, e3.year +-LOG TriangleWithProjectionTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:studyAt]->(c:organisation), (a)-[e3:studyAt]->(c) RETURN a.fName, e1.date, b.fName, e2.year, c.name, e3.year -ENUMERATE ---- 2 Alice|2021-06-30|Bob|2020|ABFsUni|2021 Bob|2021-06-30|Alice|2021|ABFsUni|2020 --NAME TriangleFilterTest2 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:studyAt]->(c:organisation), (a)-[e:studyAt]->(c) WHERE a.fName='Alice' RETURN COUNT(*) +-LOG TriangleFilterTest2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:studyAt]->(c:organisation), (a)-[e:studyAt]->(c) WHERE a.fName='Alice' RETURN COUNT(*) -ENUMERATE ---- 1 1 --NAME TriangleFilterWithProjectionTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(c) WHERE a.ID(b:person)-[:knows]->(c:person), (a)-[:knows]->(c) WHERE a.ID(b:person)-[e2:studyAt]->(c:organisation), (a)-[e3:studyAt]->(c) WHERE a.fName='Bob' RETURN a.fName, e1.date, b.fName, e2.year, c.name, e3.year +-LOG TriangleFilterWithProjectionTest2 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:studyAt]->(c:organisation), (a)-[e3:studyAt]->(c) WHERE a.fName='Bob' RETURN a.fName, e1.date, b.fName, e2.year, c.name, e3.year -ENUMERATE ---- 1 Bob|2021-06-30|Alice|2021|ABFsUni|2020 --NAME SquareTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person), (a)-[:knows]->(d) RETURN COUNT(*) +-LOG SquareTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person), (a)-[:knows]->(d) RETURN COUNT(*) -ENUMERATE ---- 1 84 --NAME SquareTest2 --QUERY MATCH (a:person)<-[:knows]-(b:person)-[:knows]->(c:person)-[:studyAt]->(d:organisation), (a)-[:studyAt]->(d) RETURN COUNT(*) +-LOG SquareTest2 +-STATEMENT MATCH (a:person)<-[:knows]-(b:person)-[:knows]->(c:person)-[:studyAt]->(d:organisation), (a)-[:studyAt]->(d) RETURN COUNT(*) -ENUMERATE ---- 1 11 --NAME SquareFilterWithProjectionTest --QUERY MATCH (a:person)<-[:knows]-(b:person)-[:knows]->(c:person)-[:studyAt]->(d:organisation), (a)-[:studyAt]->(d) WHERE a.fName='Bob' RETURN a.fName, b.fName, c.fName, d.name +-LOG SquareFilterWithProjectionTest +-STATEMENT MATCH (a:person)<-[:knows]-(b:person)-[:knows]->(c:person)-[:studyAt]->(d:organisation), (a)-[:studyAt]->(d) WHERE a.fName='Bob' RETURN a.fName, b.fName, c.fName, d.name -ENUMERATE ---- 5 Bob|Alice|Bob|ABFsUni @@ -122,8 +122,8 @@ Bob|Carol|Bob|ABFsUni Bob|Dan|Alice|ABFsUni Bob|Dan|Bob|ABFsUni --NAME SquareFilterTest2 --QUERY MATCH (a:person)<-[:knows]-(b:person)-[:knows]->(c:person)-[:studyAt]->(d:organisation), (a)-[:studyAt]->(d) WHERE b.fName='Elizabeth' RETURN COUNT(*) +-LOG SquareFilterTest2 +-STATEMENT MATCH (a:person)<-[:knows]-(b:person)-[:knows]->(c:person)-[:studyAt]->(d:organisation), (a)-[:studyAt]->(d) WHERE b.fName='Elizabeth' RETURN COUNT(*) -ENUMERATE ---- 1 1 diff --git a/test/test_files/tinysnb/exception/exception.test b/test/test_files/tinysnb/exception/exception.test index 39b0b9c496..8da7e7ed71 100644 --- a/test/test_files/tinysnb/exception/exception.test +++ b/test/test_files/tinysnb/exception/exception.test @@ -4,27 +4,27 @@ -- -CASE DivideBy0Error --QUERY RETURN 1 / 0 +-STATEMENT RETURN 1 / 0 ---- error Runtime exception: Divide by zero. -CASE ModuloBy0Error --QUERY RETURN 1 % 0 +-STATEMENT RETURN 1 % 0 ---- error Runtime exception: Modulo by zero. -CASE EmptyQuery --QUERY +-STATEMENT ---- error Connection Exception: Query is empty. -CASE ReadAfterUpdate2 --QUERY MATCH (a:person) WHERE a.age = 35 DELETE a WITH a MATCH (a)-[:knows]->(b:person) RETURN a.age +-STATEMENT MATCH (a:person) WHERE a.age = 35 DELETE a WITH a MATCH (a)-[:knows]->(b:person) RETURN a.age ---- error Binder exception: Read after update is not supported. -CASE Overflow --QUERY RETURN to_int16(10000000000) +-STATEMENT RETURN to_int16(10000000000) ---- error Runtime exception: Cast failed. 10000000000 is not in INT16 range. @@ -34,6 +34,6 @@ Runtime exception: Cast failed. 10000000000 is not in INT16 range. Binder exception: Invalid primary key type: INT32. Expected STRING or INT64. -CASE UnalignedKeyAndValueList --QUERY RETURN MAP([4],[3,2]) +-STATEMENT RETURN MAP([4],[3,2]) ---- error Runtime exception: Unaligned key list and value list. diff --git a/test/test_files/tinysnb/exception/interval.test b/test/test_files/tinysnb/exception/interval.test index 88bf50652c..633e6b7110 100644 --- a/test/test_files/tinysnb/exception/interval.test +++ b/test/test_files/tinysnb/exception/interval.test @@ -5,27 +5,27 @@ -CASE CastStrToIntervalError --NAME MissingTheSpecifierString --QUERY MATCH (a:person) return interval("3 years 2 months 45") +-LOG MissingTheSpecifierString +-STATEMENT MATCH (a:person) return interval("3 years 2 months 45") ---- error Error occurred during parsing interval. Field name is missing. --NAME MissingTheNumberBeforeTheSpecifierString --QUERY MATCH (a:person) return interval("20 years 30 months 20 days minutes") +-LOG MissingTheNumberBeforeTheSpecifierString +-STATEMENT MATCH (a:person) return interval("20 years 30 months 20 days minutes") ---- error Error occurred during parsing interval. Given: "20 years 30 months 20 days minutes". --NAME NumbersAndSpecifierStringAreNotSeparatedBySpaces --QUERY MATCH (a:person) return interval("2 years 30 minutes20 seconds") +-LOG NumbersAndSpecifierStringAreNotSeparatedBySpaces +-STATEMENT MATCH (a:person) return interval("2 years 30 minutes20 seconds") ---- error Unrecognized interval specifier string: minutes20. --NAME UnrecognizedSpecifierStringMillseconds) --QUERY MATCH (a:person) return interval("10 years 2 days 48 hours 28 seconds 12 millseconds") +-LOG UnrecognizedSpecifierStringMillseconds) +-STATEMENT MATCH (a:person) return interval("10 years 2 days 48 hours 28 seconds 12 millseconds") ---- error Unrecognized interval specifier string: millseconds. --NAME MultipleSpecifierStrings --QUERY MATCH (a:person) return interval("10 years 2 days 48 hours 28 seconds microseconds") +-LOG MultipleSpecifierStrings +-STATEMENT MATCH (a:person) return interval("10 years 2 days 48 hours 28 seconds microseconds") ---- error Error occurred during parsing interval. Given: "10 years 2 days 48 hours 28 seconds microseconds". diff --git a/test/test_files/tinysnb/exception/list.test b/test/test_files/tinysnb/exception/list.test index 37b9ac481d..4cd8be7740 100644 --- a/test/test_files/tinysnb/exception/list.test +++ b/test/test_files/tinysnb/exception/list.test @@ -4,27 +4,27 @@ -- -CASE SetListPropertyError --QUERY MATCH (a:person) SET a.workedHours=['A', 'B'] +-STATEMENT MATCH (a:person) SET a.workedHours=['A', 'B'] ---- error Binder exception: Expression LIST_CREATION(A,B) has data type STRING[] but expect INT64[]. Implicit cast is not supported. -CASE ListFunctionMatchError1 --QUERY MATCH (a:person) RETURN array_concat(a.workedHours, a.age) +-STATEMENT MATCH (a:person) RETURN array_concat(a.workedHours, a.age) ---- error Binder exception: Cannot match a built-in function for given function ARRAY_CONCAT(VAR_LIST,INT64). Supported inputs are (VAR_LIST,VAR_LIST) -> VAR_LIST -CASE ListFunctionMatchError2 --QUERY MATCH (a:person) RETURN array_concat(a.workedHours, ['A']) +-STATEMENT MATCH (a:person) RETURN array_concat(a.workedHours, ['A']) ---- error Binder exception: Cannot bind LIST_CONCAT with parameter type INT64[] and STRING[]. -CASE ListFunctionMatchError3 --QUERY MATCH (a:person) RETURN [a.age, a.fName] +-STATEMENT MATCH (a:person) RETURN [a.age, a.fName] ---- error Binder exception: Cannot bind LIST_CREATION with parameter type INT64 and STRING. -CASE ListPrepareError --QUERY MATCH (a:person) RETURN len($1) +-STATEMENT MATCH (a:person) RETURN len($1) ---- error Binder exception: Cannot resolve recursive data type for expression $1. diff --git a/test/test_files/tinysnb/exception/multi_label_update.test b/test/test_files/tinysnb/exception/multi_label_update.test index 1fc9fe79a7..23751ebf9d 100644 --- a/test/test_files/tinysnb/exception/multi_label_update.test +++ b/test/test_files/tinysnb/exception/multi_label_update.test @@ -20,7 +20,7 @@ Binder exception: Delete node a with multiple node labels is not supported. ---- error Binder exception: Delete rel e with multiple rel labels or bound by multiple node labels is not supported. --QUERY MATCH (a:person:organisation) SET a.age = 0 +-STATEMENT MATCH (a:person:organisation) SET a.age = 0 ---- error Binder exception: Set property of node a with multiple node labels is not supported. diff --git a/test/test_files/tinysnb/exception/relation.test b/test/test_files/tinysnb/exception/relation.test index 211c243d18..e8443a98ce 100644 --- a/test/test_files/tinysnb/exception/relation.test +++ b/test/test_files/tinysnb/exception/relation.test @@ -4,16 +4,16 @@ -- -CASE ReadVarlengthRelPropertyTest1 --QUERY MATCH (a:person)-[e:knows*1..3]->(b:person) RETURN e.age +-STATEMENT MATCH (a:person)-[e:knows*1..3]->(b:person) RETURN e.age ---- error Binder exception: e has data type RECURSIVE_REL. (NODE,REL,STRUCT) was expected. -CASE ReadVarlengthRelPropertyTest2 --QUERY MATCH (a:person)-[e:knows*1..3]->(b:person) WHERE ID(e) = 0 RETURN COUNT(*) +-STATEMENT MATCH (a:person)-[e:knows*1..3]->(b:person) WHERE ID(e) = 0 RETURN COUNT(*) ---- error Binder exception: e has data type RECURSIVE_REL. (NODE,REL,STRUCT) was expected. -CASE AccessRelInternalIDTest --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE e._id > 1 RETURN COUNT(*) +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE e._id > 1 RETURN COUNT(*) ---- error Binder exception: _id is reserved for system usage. External access is not allowed. diff --git a/test/test_files/tinysnb/exception/timestamp.test b/test/test_files/tinysnb/exception/timestamp.test index 14a345fc8d..bafc632773 100644 --- a/test/test_files/tinysnb/exception/timestamp.test +++ b/test/test_files/tinysnb/exception/timestamp.test @@ -5,37 +5,37 @@ -CASE CastStrToTimestampError --NAME MissingDay --QUERY MATCH (a:person) return timestamp("2112-08 08:21:23.005612") +-LOG MissingDay +-STATEMENT MATCH (a:person) return timestamp("2112-08 08:21:23.005612") ---- error Error occurred during parsing timestamp. Given: "2112-08 08:21:23.005612". Expected format: (YYYY-MM-DD hh:mm:ss[.zzzzzz][+-TT[:tt]]) --NAME MissingSecond --QUERY MATCH (a:person) return timestamp("2112-08-04 08:23.005612") +-LOG MissingSecond +-STATEMENT MATCH (a:person) return timestamp("2112-08-04 08:23.005612") ---- error Error occurred during parsing timestamp. Given: "2112-08-04 08:23.005612". Expected format: (YYYY-MM-DD hh:mm:ss[.zzzzzz][+-TT[:tt]]) --NAME MissingADigitInDay --QUERY MATCH (a:person) return timestamp("2112-08-0") +-LOG MissingADigitInDay +-STATEMENT MATCH (a:person) return timestamp("2112-08-0") ---- error Date out of range: 2112-8-0. --NAME InvalidTimezoneFormat --QUERY MATCH (a:person) return timestamp("1992-04-28T09:33:56-XX:DD") +-LOG InvalidTimezoneFormat +-STATEMENT MATCH (a:person) return timestamp("1992-04-28T09:33:56-XX:DD") ---- error Error occurred during parsing timestamp. Given: "1992-04-28T09:33:56-XX:DD". Expected format: (YYYY-MM-DD hh:mm:ss[.zzzzzz][+-TT[:tt]]) --NAME MissingPlusMinusSign --QUERY MATCH (a:person) return timestamp("2112-08-21 08:21:23.005612Z02:00") +-LOG MissingPlusMinusSign +-STATEMENT MATCH (a:person) return timestamp("2112-08-21 08:21:23.005612Z02:00") ---- error Error occurred during parsing timestamp. Given: "2112-08-21 08:21:23.005612Z02:00". Expected format: (YYYY-MM-DD hh:mm:ss[.zzzzzz][+-TT[:tt]]) --NAME IncorrectTimezoneMinutes --QUERY MATCH (a:person) return timestamp("2112-08-21 08:21:23.005612Z+02:100") +-LOG IncorrectTimezoneMinutes +-STATEMENT MATCH (a:person) return timestamp("2112-08-21 08:21:23.005612Z+02:100") ---- error Error occurred during parsing timestamp. Given: "2112-08-21 08:21:23.005612Z+02:100". Expected format: (YYYY-MM-DD hh:mm:ss[.zzzzzz][+-TT[:tt]]) --NAME IncorrectTimezoneHours --QUERY MATCH (a:person) return timestamp("2112-08-21 08:21:23.005612Z+021") +-LOG IncorrectTimezoneHours +-STATEMENT MATCH (a:person) return timestamp("2112-08-21 08:21:23.005612Z+021") ---- error Error occurred during parsing timestamp. Given: "2112-08-21 08:21:23.005612Z+021". Expected format: (YYYY-MM-DD hh:mm:ss[.zzzzzz][+-TT[:tt]]) diff --git a/test/test_files/tinysnb/exception/transaction.test b/test/test_files/tinysnb/exception/transaction.test index c9cd7e7a30..d658607b04 100644 --- a/test/test_files/tinysnb/exception/transaction.test +++ b/test/test_files/tinysnb/exception/transaction.test @@ -8,12 +8,12 @@ -BEGIN_WRITE_TRANSACTION -STATEMENT CREATE (p:person {ID: 100}) ---- ok --QUERY MATCH (:person) RETURN count(*) +-STATEMENT MATCH (:person) RETURN count(*) ---- 1 9 --QUERY RETURN make_date(2011,1,32) +-STATEMENT RETURN make_date(2011,1,32) ---- error Date out of range: 2011-1-32. --QUERY MATCH (:person) RETURN count(*) +-STATEMENT MATCH (:person) RETURN count(*) ---- 1 8 diff --git a/test/test_files/tinysnb/filter/four_five_hop.test b/test/test_files/tinysnb/filter/four_five_hop.test index 8e1dd6b26b..8aabd0d0ed 100644 --- a/test/test_files/tinysnb/filter/four_five_hop.test +++ b/test/test_files/tinysnb/filter/four_five_hop.test @@ -4,15 +4,15 @@ -- -CASE FourHopFilter --NAME FourHopKnowsFilterTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:knows]->(e:person) WHERE a.fName = 'Alice' OR e.fName = 'Alice' RETURN COUNT(*) +-LOG FourHopKnowsFilterTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:knows]->(e:person) WHERE a.fName = 'Alice' OR e.fName = 'Alice' RETURN COUNT(*) -ENUMERATE ---- 1 141 -CASE FiveHopFilter --NAME FiveHopKnowsFilterTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:knows]->(e:person)-[:knows]->(f:person) WHERE a.age = 35 AND f.age = a.age RETURN COUNT(*) +-LOG FiveHopKnowsFilterTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:knows]->(e:person)-[:knows]->(f:person) WHERE a.age = 35 AND f.age = a.age RETURN COUNT(*) -ENUMERATE ---- 1 60 diff --git a/test/test_files/tinysnb/filter/multi_label.test b/test/test_files/tinysnb/filter/multi_label.test index ac7c009b57..b15ea6a74b 100644 --- a/test/test_files/tinysnb/filter/multi_label.test +++ b/test/test_files/tinysnb/filter/multi_label.test @@ -5,20 +5,20 @@ -CASE FilterMultiLabel --NAME MultiLabelOneHopTest1 --QUERY MATCH (a:person)-[e:knows|:marries]->(b:person) WHERE e.date=date('2021-06-30') RETURN COUNT(*) +-LOG MultiLabelOneHopTest1 +-STATEMENT MATCH (a:person)-[e:knows|:marries]->(b:person) WHERE e.date=date('2021-06-30') RETURN COUNT(*) -ENUMERATE ---- 1 6 -#-NAME MultiLabelTwoHopTest1 -#-QUERY MATCH (a:person)<-[e:knows|:meets]-(b:person)-[:knows|:meets]->(c:person) WHERE b.ID = 7 AND a.ID = c.ID RETURN COUNT(*) +#-LOG MultiLabelTwoHopTest1 +#-STATEMENT MATCH (a:person)<-[e:knows|:meets]-(b:person)-[:knows|:meets]->(c:person) WHERE b.ID = 7 AND a.ID = c.ID RETURN COUNT(*) #-ENUMERATE #---- 1 #3 -#-NAME MultiLabelTwoHopTest2 -#-QUERY MATCH (a:person)<-[e1:knows|:meets]-(b:person)-[e2:knows|:meets]->(c:person) WHERE b.ID = 0 AND ID(e1)<>ID(e2) RETURN COUNT(*) +#-LOG MultiLabelTwoHopTest2 +#-STATEMENT MATCH (a:person)<-[e1:knows|:meets]-(b:person)-[e2:knows|:meets]->(c:person) WHERE b.ID = 0 AND ID(e1)<>ID(e2) RETURN COUNT(*) #-ENUMERATE #---- 1 #12 diff --git a/test/test_files/tinysnb/filter/multi_query_part.test b/test/test_files/tinysnb/filter/multi_query_part.test index 6db2e50fd8..7fb1d75474 100644 --- a/test/test_files/tinysnb/filter/multi_query_part.test +++ b/test/test_files/tinysnb/filter/multi_query_part.test @@ -5,26 +5,26 @@ -CASE FilterMultiQuery --NAME MultiQueryOneHopKnowsFilteredTest1 --QUERY MATCH (a:person) WHERE a.gender = 1 WITH a AS k MATCH (k)-[e:knows]->(b:person) WHERE b.gender = 2 RETURN COUNT(*) +-LOG MultiQueryOneHopKnowsFilteredTest1 +-STATEMENT MATCH (a:person) WHERE a.gender = 1 WITH a AS k MATCH (k)-[e:knows]->(b:person) WHERE b.gender = 2 RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME MultiQueryOneHopKnowsFilteredTest2 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE (a.gender/2 <= 0.5) WITH b WHERE b.gender*3.5 = 7.0 RETURN COUNT(*) +-LOG MultiQueryOneHopKnowsFilteredTest2 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE (a.gender/2 <= 0.5) WITH b WHERE b.gender*3.5 = 7.0 RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME MultiQueryTwoHopKnowsFilteredTest1 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH a, b WHERE b.age=35 MATCH (b)-[e2:knows]->(c:person {age:a.age}) RETURN COUNT(*) +-LOG MultiQueryTwoHopKnowsFilteredTest1 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH a, b WHERE b.age=35 MATCH (b)-[e2:knows]->(c:person {age:a.age}) RETURN COUNT(*) -ENUMERATE ---- 1 3 --NAME MultiQueryTwoHopKnowsFilteredTest2 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH a.age AS foo, b MATCH (b)-[e2:knows]->(c:person {age:foo}) RETURN COUNT(*) +-LOG MultiQueryTwoHopKnowsFilteredTest2 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH a.age AS foo, b MATCH (b)-[e2:knows]->(c:person {age:foo}) RETURN COUNT(*) -ENUMERATE ---- 1 12 diff --git a/test/test_files/tinysnb/filter/node.test b/test/test_files/tinysnb/filter/node.test index cc300caff3..0e04e2ff4e 100644 --- a/test/test_files/tinysnb/filter/node.test +++ b/test/test_files/tinysnb/filter/node.test @@ -5,139 +5,139 @@ -CASE FilterNode --NAME PersonNodesAgeFilteredTest1 --QUERY MATCH (a:person) WHERE a.age <= 25 RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest1 +-STATEMENT MATCH (a:person) WHERE a.age <= 25 RETURN COUNT(*) ---- 1 3 --NAME PersonNodesAgeFilteredTest2 --QUERY MATCH (a:person) WHERE a.age < 25 RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest2 +-STATEMENT MATCH (a:person) WHERE a.age < 25 RETURN COUNT(*) ---- 1 2 --NAME PersonNodesAgeFilteredTest3 --QUERY MATCH (a:person) WHERE a.age >= 25 RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest3 +-STATEMENT MATCH (a:person) WHERE a.age >= 25 RETURN COUNT(*) ---- 1 6 --NAME PersonNodesAgeFilteredTest4 --QUERY MATCH (a:person) WHERE a.age > 25 RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest4 +-STATEMENT MATCH (a:person) WHERE a.age > 25 RETURN COUNT(*) ---- 1 5 --NAME PersonNodesAgeFilteredTest5 --QUERY MATCH (a:person {age:25}) RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest5 +-STATEMENT MATCH (a:person {age:25}) RETURN COUNT(*) ---- 1 1 --NAME PersonNodesAgeFilteredTest6 --QUERY MATCH (a:person) WHERE a.age <> 25 RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest6 +-STATEMENT MATCH (a:person) WHERE a.age <> 25 RETURN COUNT(*) ---- 1 7 --NAME PersonNodesAgeFilteredTest7 --QUERY MATCH (a:person) WHERE a.age IS NULL RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest7 +-STATEMENT MATCH (a:person) WHERE a.age IS NULL RETURN COUNT(*) ---- 1 0 --NAME PersonNodesAgeFilteredTest8 --QUERY MATCH (a:person) WHERE a.age IS NOT NULL RETURN COUNT(*) +-LOG PersonNodesAgeFilteredTest8 +-STATEMENT MATCH (a:person) WHERE a.age IS NOT NULL RETURN COUNT(*) ---- 1 8 --NAME SingletonKnowsFilteredTest --QUERY MATCH (a:person) WHERE a.gender * 2.1 = 2.1 * a.gender RETURN COUNT(*) +-LOG SingletonKnowsFilteredTest +-STATEMENT MATCH (a:person) WHERE a.gender * 2.1 = 2.1 * a.gender RETURN COUNT(*) ---- 1 8 --NAME PersonNodesIsStudentFilteredTest --QUERY MATCH (a:person) WHERE a.isStudent RETURN COUNT(*) +-LOG PersonNodesIsStudentFilteredTest +-STATEMENT MATCH (a:person) WHERE a.isStudent RETURN COUNT(*) ---- 1 3 --NAME PersonNodesIsWorkerFilteredTest --QUERY MATCH (a:person {isWorker:true}) RETURN COUNT(*) +-LOG PersonNodesIsWorkerFilteredTest +-STATEMENT MATCH (a:person {isWorker:true}) RETURN COUNT(*) ---- 1 4 --NAME PersonNodesIsWorkerFilteredTest1 --QUERY MATCH (a:person) WHERE a.isWorker AND a.isStudent RETURN COUNT(*) +-LOG PersonNodesIsWorkerFilteredTest1 +-STATEMENT MATCH (a:person) WHERE a.isWorker AND a.isStudent RETURN COUNT(*) ---- 1 0 --NAME PersonNodesIsWorkerFilteredTest2 --QUERY MATCH (a:person) WHERE a.isWorker OR a.isStudent RETURN COUNT(*) +-LOG PersonNodesIsWorkerFilteredTest2 +-STATEMENT MATCH (a:person) WHERE a.isWorker OR a.isStudent RETURN COUNT(*) ---- 1 7 --NAME PersonNodesIsWorkerFilteredTest3 --QUERY MATCH (a:person) WHERE a.isWorker XOR a.isStudent RETURN COUNT(*) +-LOG PersonNodesIsWorkerFilteredTest3 +-STATEMENT MATCH (a:person) WHERE a.isWorker XOR a.isStudent RETURN COUNT(*) ---- 1 7 --NAME PersonNodesIsWorkerFilteredTest4 --QUERY MATCH (a:person) WHERE NOT a.isWorker RETURN COUNT(*) +-LOG PersonNodesIsWorkerFilteredTest4 +-STATEMENT MATCH (a:person) WHERE NOT a.isWorker RETURN COUNT(*) ---- 1 4 --NAME OrganisationNodesMarkFilteredTest --QUERY MATCH (a:organisation) WHERE a.mark >= 3.7 RETURN COUNT(*) +-LOG OrganisationNodesMarkFilteredTest +-STATEMENT MATCH (a:organisation) WHERE a.mark >= 3.7 RETURN COUNT(*) ---- 1 3 --NAME PersonNodesGenderFilteredTest1 --QUERY MATCH (a:person) WHERE (a.gender/2 <= 0.5) RETURN COUNT(*) +-LOG PersonNodesGenderFilteredTest1 +-STATEMENT MATCH (a:person) WHERE (a.gender/2 <= 0.5) RETURN COUNT(*) ---- 1 3 --NAME PersonNodesGenderFilteredTest2 --QUERY MATCH (a:person) WHERE (a.gender*3.5 = 7.0) RETURN COUNT(*) +-LOG PersonNodesGenderFilteredTest2 +-STATEMENT MATCH (a:person) WHERE (a.gender*3.5 = 7.0) RETURN COUNT(*) ---- 1 5 --NAME PersonNodesFNameFilteredTest1 --QUERY MATCH (a:person) WHERE a.fName = 'Farooq' RETURN COUNT(*) +-LOG PersonNodesFNameFilteredTest1 +-STATEMENT MATCH (a:person) WHERE a.fName = 'Farooq' RETURN COUNT(*) ---- 1 1 --NAME PersonNodesFNameFilteredTest2 --QUERY MATCH (a:person) WHERE a.fName <> 'Farooq' RETURN COUNT(*) +-LOG PersonNodesFNameFilteredTest2 +-STATEMENT MATCH (a:person) WHERE a.fName <> 'Farooq' RETURN COUNT(*) ---- 1 7 --NAME PersonNodesFNameFilteredTest3 --QUERY MATCH (a:person) WHERE a.fName < 'Carom' RETURN COUNT(*) +-LOG PersonNodesFNameFilteredTest3 +-STATEMENT MATCH (a:person) WHERE a.fName < 'Carom' RETURN COUNT(*) ---- 1 3 --NAME PersonNodesFNameFilteredTest4 --QUERY MATCH (a:person) WHERE a.fName >= 'Eliz' RETURN COUNT(*) +-LOG PersonNodesFNameFilteredTest4 +-STATEMENT MATCH (a:person) WHERE a.fName >= 'Eliz' RETURN COUNT(*) ---- 1 4 --NAME FilterNullTest1 --QUERY MATCH (a:person) WHERE a.age <= null RETURN COUNT(*) +-LOG FilterNullTest1 +-STATEMENT MATCH (a:person) WHERE a.age <= null RETURN COUNT(*) ---- 1 0 --NAME FilterNullTest2 --QUERY MATCH (a:person) WHERE a.age + null <= 200 RETURN COUNT(*) +-LOG FilterNullTest2 +-STATEMENT MATCH (a:person) WHERE a.age + null <= 200 RETURN COUNT(*) ---- 1 0 --NAME FilterNullTest3 --QUERY MATCH (a:person) WHERE a.isStudent OR null RETURN COUNT(*) +-LOG FilterNullTest3 +-STATEMENT MATCH (a:person) WHERE a.isStudent OR null RETURN COUNT(*) ---- 1 3 -#-NAME nodeCrossProduct -#-QUERY MATCH (a:person), (b:person {ID:a.ID}) WHERE a.ID < 4 RETURN COUNT(*) +#-LOG nodeCrossProduct +#-STATEMENT MATCH (a:person), (b:person {ID:a.ID}) WHERE a.ID < 4 RETURN COUNT(*) #-ENUMERATE #---- 1 #3 -#-NAME nodeCrossProduct -#-QUERY MATCH (a:person {ID:1000}), (b:person) RETURN COUNT(*) +#-LOG nodeCrossProduct +#-STATEMENT MATCH (a:person {ID:1000}), (b:person) RETURN COUNT(*) #-ENUMERATE #---- 1 #0 diff --git a/test/test_files/tinysnb/filter/one_hop.test b/test/test_files/tinysnb/filter/one_hop.test index 7108c58736..11ee980846 100644 --- a/test/test_files/tinysnb/filter/one_hop.test +++ b/test/test_files/tinysnb/filter/one_hop.test @@ -5,48 +5,48 @@ -CASE FilterOneHop --NAME OneHopKnowsFilteredTest3 --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE (a.gender/2 <= 0.5) AND (b.gender*3.5 = 7.0) RETURN COUNT(*) +-LOG OneHopKnowsFilteredTest3 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE (a.gender/2 <= 0.5) AND (b.gender*3.5 = 7.0) RETURN COUNT(*) ---- 1 6 --NAME TwoHopKnowsIDLessThanTest --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE id(a) < id(b) RETURN COUNT(*) +-LOG TwoHopKnowsIDLessThanTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE id(a) < id(b) RETURN COUNT(*) ---- 1 8 --NAME OneHopKnowsFilteredTest --QUERY MATCH (a:person {gender:1})-[e:knows]->(b:person{gender:2}) RETURN COUNT(*) +-LOG OneHopKnowsFilteredTest +-STATEMENT MATCH (a:person {gender:1})-[e:knows]->(b:person{gender:2}) RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME OneHopKnowsFilteredTest2 --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.age > 22 RETURN COUNT(*) +-LOG OneHopKnowsFilteredTest2 +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.age > 22 RETURN COUNT(*) -ENUMERATE ---- 1 9 --NAME OneHopOrgCodeFilter --QUERY MATCH (a:person)-[e1:studyAt]->(b:organisation) WHERE b.orgCode > 100 RETURN COUNT(*) +-LOG OneHopOrgCodeFilter +-STATEMENT MATCH (a:person)-[e1:studyAt]->(b:organisation) WHERE b.orgCode > 100 RETURN COUNT(*) -ENUMERATE ---- 1 3 --NAME OneHopKnowsIDGreaterThanTest --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE id(a) > id(b) RETURN COUNT(*) +-LOG OneHopKnowsIDGreaterThanTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE id(a) > id(b) RETURN COUNT(*) -ENUMERATE ---- 1 6 -#-NAME OneHopCrossProduct -#-QUERY MATCH (a:person {age:30}), (c:person)-[:knows]->(d:person{fName:'Greg'}) RETURN a.ID, c.ID +#-LOG OneHopCrossProduct +#-STATEMENT MATCH (a:person {age:30}), (c:person)-[:knows]->(d:person{fName:'Greg'}) RETURN a.ID, c.ID #-ENUMERATE #---- 1 #2|7 -#-NAME EdgeFilter -#-QUERY MATCH (a:person)-[e1:knows {date:date('1905-12-12')}]->(b:person) RETURN a.ID, b.ID +#-LOG EdgeFilter +#-STATEMENT MATCH (a:person)-[e1:knows {date:date('1905-12-12')}]->(b:person) RETURN a.ID, b.ID #-ENUMERATE #---- 2 #7|8 diff --git a/test/test_files/tinysnb/filter/serial.test b/test/test_files/tinysnb/filter/serial.test index 6028d2ba86..22ad9980e5 100644 --- a/test/test_files/tinysnb/filter/serial.test +++ b/test/test_files/tinysnb/filter/serial.test @@ -5,36 +5,36 @@ -CASE SerialComparison --NAME SerialGreaterThan --QUERY MATCH (a:person) WHERE a.ID > 4 RETURN a +-LOG SerialGreaterThan +-STATEMENT MATCH (a:person) WHERE a.ID > 4 RETURN a ---- 3 (label:person, 0:5, {ID:5, fName:Farooq, gender:2, isStudent:True, isWorker:False, age:25, eyeSight:4.500000, birthdate:1980-10-26, registerTime:1972-07-31 13:22:30.678559, lastJobDuration:00:18:00.024, workedHours:[3,4,5,6,7], usedNames:[Fesdwe], courseScoresPerTerm:[[8]], grades:[80,78,34,83], height:1.510000}) (label:person, 0:6, {ID:6, fName:Greg, gender:2, isStudent:False, isWorker:False, age:40, eyeSight:4.900000, birthdate:1980-10-26, registerTime:1976-12-23 04:41:42, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[1], usedNames:[Grad], courseScoresPerTerm:[[10]], grades:[43,83,67,43], height:1.600000}) (label:person, 0:7, {ID:7, fName:Hubert Blaine Wolfeschlegelsteinhausenbergerdorff, gender:2, isStudent:False, isWorker:True, age:83, eyeSight:4.900000, birthdate:1990-11-27, registerTime:2023-02-21 13:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,11,12,3,4,5,6,7], usedNames:[Ad,De,Hi,Kye,Orlan], courseScoresPerTerm:[[7],[10],[6,7]], grades:[77,64,100,54], height:1.323000}) --NAME SerialGreaterThanOrEqualTo --QUERY MATCH (a:person) WHERE a.ID >= 4 RETURN a +-LOG SerialGreaterThanOrEqualTo +-STATEMENT MATCH (a:person) WHERE a.ID >= 4 RETURN a ---- 4 (label:person, 0:4, {ID:4, fName:Elizabeth, gender:1, isStudent:False, isWorker:True, age:20, eyeSight:4.700000, birthdate:1980-10-26, registerTime:1976-12-23 11:21:42, lastJobDuration:48:24:11, workedHours:[2], usedNames:[Ein], courseScoresPerTerm:[[6],[7],[8]], grades:[96,59,65,88], height:1.463000}) (label:person, 0:5, {ID:5, fName:Farooq, gender:2, isStudent:True, isWorker:False, age:25, eyeSight:4.500000, birthdate:1980-10-26, registerTime:1972-07-31 13:22:30.678559, lastJobDuration:00:18:00.024, workedHours:[3,4,5,6,7], usedNames:[Fesdwe], courseScoresPerTerm:[[8]], grades:[80,78,34,83], height:1.510000}) (label:person, 0:6, {ID:6, fName:Greg, gender:2, isStudent:False, isWorker:False, age:40, eyeSight:4.900000, birthdate:1980-10-26, registerTime:1976-12-23 04:41:42, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[1], usedNames:[Grad], courseScoresPerTerm:[[10]], grades:[43,83,67,43], height:1.600000}) (label:person, 0:7, {ID:7, fName:Hubert Blaine Wolfeschlegelsteinhausenbergerdorff, gender:2, isStudent:False, isWorker:True, age:83, eyeSight:4.900000, birthdate:1990-11-27, registerTime:2023-02-21 13:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,11,12,3,4,5,6,7], usedNames:[Ad,De,Hi,Kye,Orlan], courseScoresPerTerm:[[7],[10],[6,7]], grades:[77,64,100,54], height:1.323000}) --NAME SerialEqualTo --QUERY MATCH (a:person) WHERE a.ID = 4 RETURN a +-LOG SerialEqualTo +-STATEMENT MATCH (a:person) WHERE a.ID = 4 RETURN a ---- 1 (label:person, 0:4, {ID:4, fName:Elizabeth, gender:1, isStudent:False, isWorker:True, age:20, eyeSight:4.700000, birthdate:1980-10-26, registerTime:1976-12-23 11:21:42, lastJobDuration:48:24:11, workedHours:[2], usedNames:[Ein], courseScoresPerTerm:[[6],[7],[8]], grades:[96,59,65,88], height:1.463000}) --NAME SerialSmallerThan --QUERY MATCH (a:person) WHERE a.ID < 4 RETURN a +-LOG SerialSmallerThan +-STATEMENT MATCH (a:person) WHERE a.ID < 4 RETURN a ---- 4 (label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]], grades:[96,54,86,92], height:1.731000}) (label:person, 0:1, {ID:1, fName:Bob, gender:2, isStudent:True, isWorker:False, age:30, eyeSight:5.100000, birthdate:1900-01-01, registerTime:2008-11-03 15:25:30.000526, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[12,8], usedNames:[Bobby], courseScoresPerTerm:[[8,9],[9,10]], grades:[98,42,93,88], height:0.990000}) (label:person, 0:2, {ID:2, fName:Carol, gender:1, isStudent:False, isWorker:True, age:45, eyeSight:5.000000, birthdate:1940-06-22, registerTime:1911-08-20 02:32:21, lastJobDuration:48:24:11, workedHours:[4,5], usedNames:[Carmen,Fred], courseScoresPerTerm:[[8,10]], grades:[91,75,21,95], height:1.000000}) (label:person, 0:3, {ID:3, fName:Dan, gender:2, isStudent:False, isWorker:True, age:20, eyeSight:4.800000, birthdate:1950-07-23, registerTime:2031-11-30 12:25:30, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[1,9], usedNames:[Wolfeschlegelstein,Daniel], courseScoresPerTerm:[[7,4],[8,8],[9]], grades:[76,88,99,89], height:1.300000}) --NAME SerialSmallerThanOrEqualTo --QUERY MATCH (a:person) WHERE a.ID <= 4 RETURN a +-LOG SerialSmallerThanOrEqualTo +-STATEMENT MATCH (a:person) WHERE a.ID <= 4 RETURN a ---- 5 (label:person, 0:0, {ID:0, fName:Alice, gender:1, isStudent:True, isWorker:False, age:35, eyeSight:5.000000, birthdate:1900-01-01, registerTime:2011-08-20 11:25:30, lastJobDuration:3 years 2 days 13:02:00, workedHours:[10,5], usedNames:[Aida], courseScoresPerTerm:[[10,8],[6,7,8]], grades:[96,54,86,92], height:1.731000}) (label:person, 0:1, {ID:1, fName:Bob, gender:2, isStudent:True, isWorker:False, age:30, eyeSight:5.100000, birthdate:1900-01-01, registerTime:2008-11-03 15:25:30.000526, lastJobDuration:10 years 5 months 13:00:00.000024, workedHours:[12,8], usedNames:[Bobby], courseScoresPerTerm:[[8,9],[9,10]], grades:[98,42,93,88], height:0.990000}) diff --git a/test/test_files/tinysnb/filter/two_hop.test b/test/test_files/tinysnb/filter/two_hop.test index 5744671b57..cff624e687 100644 --- a/test/test_files/tinysnb/filter/two_hop.test +++ b/test/test_files/tinysnb/filter/two_hop.test @@ -5,52 +5,52 @@ -CASE FilterTwoHop --NAME TwoHopKnowsIDNotEqualTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) <> id(c) RETURN COUNT(*) +-LOG TwoHopKnowsIDNotEqualTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) <> id(c) RETURN COUNT(*) ---- 1 24 --NAME TwoHopKnowsIDGreaterThanEqualsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) >= id(c) RETURN COUNT(*) +-LOG TwoHopKnowsIDGreaterThanEqualsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) >= id(c) RETURN COUNT(*) ---- 1 24 --NAME TwoHopKnowsIDLessThanEqualsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) <= id(c) RETURN COUNT(*) +-LOG TwoHopKnowsIDLessThanEqualsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) <= id(c) RETURN COUNT(*) ---- 1 24 --NAME RelIDComparison2 --QUERY MATCH (a:person)<-[r1:knows]-(b:person)-[r2:knows]->(c:person) WHERE id(r1) <> id(r2) RETURN COUNT(*) +-LOG RelIDComparison2 +-STATEMENT MATCH (a:person)<-[r1:knows]-(b:person)-[r2:knows]->(c:person) WHERE id(r1) <> id(r2) RETURN COUNT(*) ---- 1 26 --NAME TwoHopKnowsFilteredTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person {age:a.age}) WHERE a.age = c.age RETURN COUNT(*) +-LOG TwoHopKnowsFilteredTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person {age:a.age}) WHERE a.age = c.age RETURN COUNT(*) -ENUMERATE ---- 1 12 --NAME TwoHopKnowsIDEqualTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) = id(c) RETURN COUNT(*) +-LOG TwoHopKnowsIDEqualTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WHERE id(a) = id(c) RETURN COUNT(*) -ENUMERATE ---- 1 12 --NAME TwoHopKnowsFilteredTest2 --QUERY MATCH (a:person)-[e1:knows]->(b:person), (a:person)-[e2:knows {date:e1.date}]->(c:person) WHERE e1.date = e2.date RETURN COUNT(*) +-LOG TwoHopKnowsFilteredTest2 +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person), (a:person)-[e2:knows {date:e1.date}]->(c:person) WHERE e1.date = e2.date RETURN COUNT(*) -ENUMERATE ---- 1 24 --NAME SymmetricTwoHop --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE b.fName = 'Bob' AND e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*) +-LOG SymmetricTwoHop +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE b.fName = 'Bob' AND e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME RelIDComparison1 --QUERY MATCH (a:person)<-[r1:knows]-(b:person)-[r2:knows]->(c:person) WHERE ID(r1) = ID(r2) RETURN COUNT(*) +-LOG RelIDComparison1 +-STATEMENT MATCH (a:person)<-[r1:knows]-(b:person)-[r2:knows]->(c:person) WHERE ID(r1) = ID(r2) RETURN COUNT(*) -ENUMERATE ---- 1 14 diff --git a/test/test_files/tinysnb/function/arithmetic.test b/test/test_files/tinysnb/function/arithmetic.test index 3ac590aaea..491751f30d 100644 --- a/test/test_files/tinysnb/function/arithmetic.test +++ b/test/test_files/tinysnb/function/arithmetic.test @@ -5,15 +5,15 @@ -CASE FunctionArithmetic --NAME moduloFunctionOnDoubleDoubleTest --QUERY MATCH (a:organisation) RETURN a.orgCode % a.rating +-LOG moduloFunctionOnDoubleDoubleTest +-STATEMENT MATCH (a:organisation) RETURN a.orgCode % a.rating ---- 3 0.000000 0.340000 0.320000 --NAME moduloFunctionOnDoubleFloatTest --QUERY MATCH (a:person) RETURN a.eyeSight % a.height +-LOG moduloFunctionOnDoubleFloatTest +-STATEMENT MATCH (a:person) RETURN a.eyeSight % a.height ---- 8 1.538000 0.150000 @@ -24,36 +24,36 @@ 0.100000 0.931000 --NAME moduloFunctionOnINT64INT16Test --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN e.year % e.length +-LOG moduloFunctionOnINT64INT16Test +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN e.year % e.length ---- 3 1 40 18 --NAME moduloFunctionOnINT32INT32Test --QUERY MATCH (m:movies) RETURN m.length % m.length +-LOG moduloFunctionOnINT32INT32Test +-STATEMENT MATCH (m:movies) RETURN m.length % m.length ---- 3 0 0 0 --NAME sinFunctionOnDoubleTest --QUERY MATCH (a:organisation) WHERE a.name <> 'abc' RETURN sin(a.mark) +-LOG sinFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) WHERE a.name <> 'abc' RETURN sin(a.mark) ---- 3 -0.529836 -0.818277 -0.818277 --NAME sinFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN sin(a.orgCode) +-LOG sinFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN sin(a.orgCode) ---- 3 -0.988036 -0.811656 0.785018 --NAME sinFunctionOnFloatTest --QUERY MATCH (a:person) RETURN sin(a.height) +-LOG sinFunctionOnFloatTest +-STATEMENT MATCH (a:person) RETURN sin(a.height) ---- 8 0.987195 0.836026 @@ -64,113 +64,113 @@ 0.999574 0.969455 --NAME cosFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN cos(a.mark) +-LOG cosFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN cos(a.mark) ---- 3 -0.848100 -0.574824 -0.574824 --NAME cosFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN cos(a.orgCode) +-LOG cosFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN cos(a.orgCode) ---- 3 -0.154222 -0.584135 0.619473 --NAME cosFunctionOnInt32Test --QUERY MATCH (m:movies) RETURN cos(m.length) +-LOG cosFunctionOnInt32Test +-STATEMENT MATCH (m:movies) RETURN cos(m.length) ---- 3 0.943984 0.771215 -0.899880 --NAME tanFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN tan(a.mark) +-LOG tanFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN tan(a.mark) ---- 3 0.624733 1.423526 1.423526 --NAME tanFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN tan(a.orgCode) +-LOG tanFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN tan(a.orgCode) ---- 3 6.406598 1.389500 1.267234 --NAME cotFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN cot(a.mark) +-LOG cotFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN cot(a.mark) ---- 3 1.600684 0.702481 0.702481 --NAME cotFunctionOnInt16Test --QUERY MATCH (:person)-[s:studyAt]->(:organisation) RETURN cot(s.length) +-LOG cotFunctionOnInt16Test +-STATEMENT MATCH (:person)-[s:studyAt]->(:organisation) RETURN cot(s.length) ---- 3 -0.295813 -0.022132 112.973210 --NAME cotFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN cot(a.orgCode) +-LOG cotFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN cot(a.orgCode) ---- 3 0.156089 0.719683 0.789120 --NAME asinFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN asin(a.rating) +-LOG asinFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN asin(a.rating) ---- 3 1.570796 0.894666 0.546851 --NAME asinFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN asin(a.orgCode % 2 - 1) +-LOG asinFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN asin(a.orgCode % 2 - 1) ---- 3 0.000000 -1.570796 -1.570796 --NAME acosFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN acos(a.rating) +-LOG acosFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN acos(a.rating) ---- 3 0.000000 0.676131 1.023945 --NAME acosFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN acos(a.orgCode % 2 - 1) +-LOG acosFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN acos(a.orgCode % 2 - 1) ---- 3 1.570796 3.141593 3.141593 --NAME atanFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN atan(a.rating) +-LOG atanFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN atan(a.rating) ---- 3 0.785398 0.662426 0.479519 --NAME atanFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN atan(a.orgCode % 2 - 1) +-LOG atanFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN atan(a.orgCode % 2 - 1) ---- 3 0.000000 -0.785398 -0.785398 --NAME evenFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN even(a.mark) +-LOG evenFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN even(a.mark) ---- 3 4.000000 6.000000 6.000000 --NAME evenFunctionOnFloatTest --QUERY MATCH (a:person) RETURN even(a.height) +-LOG evenFunctionOnFloatTest +-STATEMENT MATCH (a:person) RETURN even(a.height) ---- 8 2.000000 2.000000 @@ -181,197 +181,197 @@ 2.000000 2.000000 --NAME evenFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN even(a.orgCode) +-LOG evenFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN even(a.orgCode) ---- 3 326.000000 934.000000 824.000000 --NAME factorialFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN factorial(a.orgCode % 20) +-LOG factorialFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN factorial(a.orgCode % 20) ---- 3 120 24 87178291200 --NAME factorialFunctionSyntaxInt64Test --QUERY MATCH (a:organisation) RETURN (a.orgCode % 20)! +-LOG factorialFunctionSyntaxInt64Test +-STATEMENT MATCH (a:organisation) RETURN (a.orgCode % 20)! ---- 3 120 24 87178291200 --NAME signFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN sign(a.mark) +-LOG signFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN sign(a.mark) ---- 3 1 1 1 --NAME signFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN sign(a.orgCode) +-LOG signFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN sign(a.orgCode) ---- 3 1 1 1 --NAME sqrtFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN sqrt(a.mark) +-LOG sqrtFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN sqrt(a.mark) ---- 3 1.923538 2.024846 2.024846 --NAME sqrtFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN sqrt(a.orgCode) +-LOG sqrtFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN sqrt(a.orgCode) ---- 3 18.027756 30.561414 28.705400 --NAME cbrtFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN cbrt(a.mark) +-LOG cbrtFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN cbrt(a.mark) ---- 3 1.546680 1.600521 1.600521 --NAME cbrtFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN cbrt(a.orgCode) +-LOG cbrtFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN cbrt(a.orgCode) ---- 3 6.875344 9.774974 9.375096 --NAME gammaFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN gamma(a.mark) +-LOG gammaFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN gamma(a.mark) ---- 3 4.170652 6.812623 6.812623 --NAME gammaFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN gamma(a.orgCode % 10) +-LOG gammaFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN gamma(a.orgCode % 10) ---- 3 24.000000 6.000000 6.000000 --NAME lgammaFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN lgamma(a.mark) +-LOG lgammaFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN lgamma(a.mark) ---- 3 1.428072 1.918777 1.918777 --NAME lgammaFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN lgamma(a.orgCode) +-LOG lgammaFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN lgamma(a.orgCode) ---- 3 1552.770467 5451.570283 4706.038471 --NAME lnFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN ln(a.mark) +-LOG lnFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN ln(a.mark) ---- 3 1.308333 1.410987 1.410987 --NAME lnFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN ln(a.orgCode) +-LOG lnFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN ln(a.orgCode) ---- 3 5.783825 6.839476 6.714171 --NAME logFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN log(a.mark) +-LOG logFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN log(a.mark) ---- 3 0.568202 0.612784 0.612784 --NAME logFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN log(a.orgCode) +-LOG logFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN log(a.orgCode) ---- 3 2.511883 2.970347 2.915927 --NAME log2FunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN log2(a.mark) +-LOG log2FunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN log2(a.mark) ---- 3 1.887525 2.035624 2.035624 --NAME log2FunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN log2(a.orgCode) +-LOG log2FunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN log2(a.orgCode) ---- 3 8.344296 9.867279 9.686501 --NAME degreesFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN degrees(a.mark) +-LOG degreesFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN degrees(a.mark) ---- 3 211.994384 234.912696 234.912696 --NAME degreesFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN degrees(a.orgCode) +-LOG degreesFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN degrees(a.orgCode) ---- 3 18621.128342 53514.258065 47211.722319 --NAME radiansFunctionOnDoubleTest --QUERY MATCH (a:organisation) RETURN radians(a.mark) +-LOG radiansFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) RETURN radians(a.mark) ---- 3 0.064577 0.071558 0.071558 --NAME radiansFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN radians(a.orgCode) +-LOG radiansFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN radians(a.orgCode) ---- 3 5.672320 16.301375 14.381513 --NAME atan2FunctionOnDoubleDoubleTest --QUERY MATCH (a:organisation) RETURN atan2(a.mark, a.mark) +-LOG atan2FunctionOnDoubleDoubleTest +-STATEMENT MATCH (a:organisation) RETURN atan2(a.mark, a.mark) ---- 3 0.785398 0.785398 0.785398 --NAME atan2FunctionOnDoubleInt64Test --QUERY MATCH (a:organisation) RETURN atan2(a.mark, a.orgCode) +-LOG atan2FunctionOnDoubleInt64Test +-STATEMENT MATCH (a:organisation) RETURN atan2(a.mark, a.orgCode) ---- 3 0.011384 0.004390 0.004976 --NAME atan2FunctionOnInt64Int64Test --QUERY MATCH (a:organisation) RETURN atan2(a.orgCode, a.orgCode) +-LOG atan2FunctionOnInt64Int64Test +-STATEMENT MATCH (a:organisation) RETURN atan2(a.orgCode, a.orgCode) ---- 3 0.785398 0.785398 0.785398 --NAME atan2FunctionOnInt64DoubleTest --QUERY MATCH (a:organisation) RETURN atan2(a.orgCode, a.mark) +-LOG atan2FunctionOnInt64DoubleTest +-STATEMENT MATCH (a:organisation) RETURN atan2(a.orgCode, a.mark) ---- 3 1.559412 1.566407 1.565821 --NAME atan2FunctionOnFloatDoubleTest --QUERY MATCH (a:person) RETURN atan2(a.height, a.eyeSight) +-LOG atan2FunctionOnFloatDoubleTest +-STATEMENT MATCH (a:person) RETURN atan2(a.height, a.eyeSight) ---- 8 0.191733 0.197396 @@ -382,50 +382,50 @@ 0.323749 0.333286 --NAME roundFunctionOnDoubleTest --QUERY MATCH (a:organisation) WHERE a.ID <> 2 RETURN round(a.rating, 1) +-LOG roundFunctionOnDoubleTest +-STATEMENT MATCH (a:organisation) WHERE a.ID <> 2 RETURN round(a.rating, 1) ---- 3 0.800000 0.500000 1.000000 --NAME roundFunctionOnInt64Test --QUERY MATCH (a:organisation) RETURN round(a.orgCode, 2) +-LOG roundFunctionOnInt64Test +-STATEMENT MATCH (a:organisation) RETURN round(a.orgCode, 2) ---- 3 325.000000 824.000000 934.000000 --NAME piFunctionAddStrIntTest --QUERY MATCH (a:organisation) RETURN a.orgCode + pi() +-LOG piFunctionAddStrIntTest +-STATEMENT MATCH (a:organisation) RETURN a.orgCode + pi() ---- 3 328.141593 937.141593 827.141593 --NAME AbsFunctionStrInt --QUERY MATCH (a:organisation) RETURN abs(a.score) +-LOG AbsFunctionStrInt +-STATEMENT MATCH (a:organisation) RETURN abs(a.score) ---- 3 100 2 7 --NAME FloorFunctionStrInt --QUERY MATCH (a:organisation) RETURN floor(a.score) +-LOG FloorFunctionStrInt +-STATEMENT MATCH (a:organisation) RETURN floor(a.score) ---- 3 -2 -100 7 --NAME CeilFunctionStrInt --QUERY MATCH (a:organisation) RETURN ceil(a.score) +-LOG CeilFunctionStrInt +-STATEMENT MATCH (a:organisation) RETURN ceil(a.score) ---- 3 -2 -100 7 --NAME BitwiseAndFunctionTest --QUERY MATCH (p:person) RETURN p.age & 21 +-LOG BitwiseAndFunctionTest +-STATEMENT MATCH (p:person) RETURN p.age & 21 ---- 8 1 20 @@ -436,15 +436,15 @@ 0 17 --NAME BitwiseOrFunctionTest --QUERY MATCH (o:organisation) RETURN o.score | 35 +-LOG BitwiseOrFunctionTest +-STATEMENT MATCH (o:organisation) RETURN o.score | 35 ---- 3 -1 -65 39 --NAME BitshiftLeftFunctionTest --QUERY MATCH (p:person) RETURN p.age << 2 +-LOG BitshiftLeftFunctionTest +-STATEMENT MATCH (p:person) RETURN p.age << 2 ---- 8 140 120 @@ -455,29 +455,29 @@ 160 332 --NAME BitshiftRightFunctionTest --QUERY MATCH (o:organisation) RETURN o.orgCode >> 3 +-LOG BitshiftRightFunctionTest +-STATEMENT MATCH (o:organisation) RETURN o.orgCode >> 3 ---- 3 40 116 103 --NAME BitwiseOperatorPrecedenceTest --QUERY MATCH (o:organisation) RETURN o.orgCode >> 2 | o.score & 2 << 1 +-LOG BitwiseOperatorPrecedenceTest +-STATEMENT MATCH (o:organisation) RETURN o.orgCode >> 2 | o.score & 2 << 1 ---- 3 85 237 206 --NAME NumericalOperatorPrecedenceTest1 --QUERY MATCH (o:organisation) RETURN 3 & (o.score + 50) +-LOG NumericalOperatorPrecedenceTest1 +-STATEMENT MATCH (o:organisation) RETURN 3 & (o.score + 50) ---- 3 0 2 1 --NAME NumericalOperatorPrecedenceTest2 --QUERY MATCH (o:organisation) RETURN 2 + 3 << 5 + 2 & 1 + o.orgCode +-LOG NumericalOperatorPrecedenceTest2 +-STATEMENT MATCH (o:organisation) RETURN 2 + 3 << 5 + 2 & 1 + o.orgCode ---- 3 0 640 diff --git a/test/test_files/tinysnb/function/blob.test b/test/test_files/tinysnb/function/blob.test index 7ed4d6e18b..5392216545 100644 --- a/test/test_files/tinysnb/function/blob.test +++ b/test/test_files/tinysnb/function/blob.test @@ -5,78 +5,78 @@ -CASE FunctionBlob --NAME ReturnBlobHexOnly --QUERY RETURN BLOB('\\xAA\\xBB\\xCD\\x1A'); +-LOG ReturnBlobHexOnly +-STATEMENT RETURN BLOB('\\xAA\\xBB\\xCD\\x1A'); ---- 1 \xAA\xBB\xCD\x1A --NAME ReturnBlobASCIIOnly --QUERY RETURN BLOB('THIS IS A ASCII ONLY BLOB DATA'); +-LOG ReturnBlobASCIIOnly +-STATEMENT RETURN BLOB('THIS IS A ASCII ONLY BLOB DATA'); ---- 1 THIS IS A ASCII ONLY BLOB DATA --NAME ReturnBlobASCIIAndHex --QUERY RETURN BLOB('THIS IS A MIxed of ASCII and \\xB2 \\xD3ONLY BLOB DATA\\xA5'); +-LOG ReturnBlobASCIIAndHex +-STATEMENT RETURN BLOB('THIS IS A MIxed of ASCII and \\xB2 \\xD3ONLY BLOB DATA\\xA5'); ---- 1 THIS IS A MIxed of ASCII and \xB2 \xD3ONLY BLOB DATA\xA5 --NAME Octet_length --QUERY RETURN OCTET_LENGTH(BLOB('\\xAA\\xB3 AD NC \\xD2')) +-LOG Octet_length +-STATEMENT RETURN OCTET_LENGTH(BLOB('\\xAA\\xB3 AD NC \\xD2')) ---- 1 10 --NAME ReturnEncodeUTF8String --QUERY RETURN encode('encode this utf-8 char: ü') +-LOG ReturnEncodeUTF8String +-STATEMENT RETURN encode('encode this utf-8 char: ü') ---- 1 encode this utf-8 char: \xC3\xBC --NAME ReturnDecodeUTF8String --QUERY RETURN decode(BLOB('decode this utf-8 char: \\xC3\\xBC')) +-LOG ReturnDecodeUTF8String +-STATEMENT RETURN decode(BLOB('decode this utf-8 char: \\xC3\\xBC')) ---- 1 decode this utf-8 char: ü --NAME ReturnInvalidUTF8String --QUERY RETURN decode(BLOB('decode this invalid utf-8 char: \\xA1\\xBC')) +-LOG ReturnInvalidUTF8String +-STATEMENT RETURN decode(BLOB('decode this invalid utf-8 char: \\xA1\\xBC')) ---- error Runtime exception: Failure in decode: could not convert blob to UTF8 string, the blob contained invalid UTF8 characters --NAME BlobGreaterThan --QUERY MATCH (m:movies) RETURN m.content > BLOB("test"); +-LOG BlobGreaterThan +-STATEMENT MATCH (m:movies) RETURN m.content > BLOB("test"); ---- 3 True True False --NAME BlobGreaterThanOrEqualTo --QUERY MATCH (m:movies) RETURN m.content >= BLOB("\\xAA\\xABinteresting\\x0B"); +-LOG BlobGreaterThanOrEqualTo +-STATEMENT MATCH (m:movies) RETURN m.content >= BLOB("\\xAA\\xABinteresting\\x0B"); ---- 3 True True False --NAME BlobEqualTo --QUERY MATCH (m:movies) RETURN m.content = BLOB("\\xAA\\xABinteresting\\x0B"); +-LOG BlobEqualTo +-STATEMENT MATCH (m:movies) RETURN m.content = BLOB("\\xAA\\xABinteresting\\x0B"); ---- 3 True False False --NAME BlobNotEqualTo --QUERY MATCH (m:movies) RETURN m.content <> BLOB("\\xAA\\xABinteresting\\x0B"); +-LOG BlobNotEqualTo +-STATEMENT MATCH (m:movies) RETURN m.content <> BLOB("\\xAA\\xABinteresting\\x0B"); ---- 3 False True True --NAME BlobGreaterThan --QUERY MATCH (m:movies) RETURN m.content < BLOB("\\xAB\\xCD"); +-LOG BlobGreaterThan +-STATEMENT MATCH (m:movies) RETURN m.content < BLOB("\\xAB\\xCD"); ---- 3 True False True --NAME BlobGreaterThanOrEqualTo --QUERY MATCH (m:movies) RETURN m.content <= BLOB("pure ascii characters"); +-LOG BlobGreaterThanOrEqualTo +-STATEMENT MATCH (m:movies) RETURN m.content <= BLOB("pure ascii characters"); ---- 3 False False diff --git a/test/test_files/tinysnb/function/boolean.test b/test/test_files/tinysnb/function/boolean.test index 4b8db2465d..1c0d46ad64 100644 --- a/test/test_files/tinysnb/function/boolean.test +++ b/test/test_files/tinysnb/function/boolean.test @@ -5,8 +5,8 @@ -CASE FunctionBoolean --NAME AndExecTest1 --QUERY MATCH (a:person) RETURN a.ID, a.isStudent AND a.isWorker ORDER BY a.ID +-LOG AndExecTest1 +-STATEMENT MATCH (a:person) RETURN a.ID, a.isStudent AND a.isWorker ORDER BY a.ID ---- 8 0|False 10|False @@ -17,8 +17,8 @@ 8|False 9|False --NAME OrExecTest1 --QUERY MATCH (a:person) RETURN a.ID, a.isStudent OR a.isWorker ORDER BY a.ID +-LOG OrExecTest1 +-STATEMENT MATCH (a:person) RETURN a.ID, a.isStudent OR a.isWorker ORDER BY a.ID ---- 8 0|True 10|True @@ -29,8 +29,8 @@ 8|True 9|False --NAME XorExecTest1 --QUERY MATCH (a:person) RETURN a.ID, a.isStudent XOR a.isWorker ORDER BY a.ID +-LOG XorExecTest1 +-STATEMENT MATCH (a:person) RETURN a.ID, a.isStudent XOR a.isWorker ORDER BY a.ID ---- 8 0|True 10|True @@ -41,41 +41,41 @@ 8|True 9|False --NAME BoolEqualTest --QUERY MATCH (a:person) WHERE a.isStudent = a.isWorker RETURN a.fName +-LOG BoolEqualTest +-STATEMENT MATCH (a:person) WHERE a.isStudent = a.isWorker RETURN a.fName ---- 1 Greg --NAME BoolNotEqualTest --QUERY MATCH (a:person) WHERE a.isStudent <> a.isWorker RETURN count(a.fName) +-LOG BoolNotEqualTest +-STATEMENT MATCH (a:person) WHERE a.isStudent <> a.isWorker RETURN count(a.fName) ---- 1 7 --NAME BoolExecTest4 --QUERY MATCH (a:person) WHERE a.fName = 'Alice' RETURN a.isStudent and a.isWorker +-LOG BoolExecTest4 +-STATEMENT MATCH (a:person) WHERE a.fName = 'Alice' RETURN a.isStudent and a.isWorker ---- 1 False --NAME BoolExecTest5 --QUERY MATCH (a:person) WHERE a.isWorker and (a.fName='Elizabeth' OR a.fName='Hubert Blaine Wolfeschlegelsteinhausenbergerdorff') RETURN a.fName +-LOG BoolExecTest5 +-STATEMENT MATCH (a:person) WHERE a.isWorker and (a.fName='Elizabeth' OR a.fName='Hubert Blaine Wolfeschlegelsteinhausenbergerdorff') RETURN a.fName ---- 2 Elizabeth Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME BoolExecTest6 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.isWorker and (b.fName='Elizabeth' OR a.fName='Elizabeth') RETURN a.fName +-LOG BoolExecTest6 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.isWorker and (b.fName='Elizabeth' OR a.fName='Elizabeth') RETURN a.fName ---- 2 Elizabeth Elizabeth --NAME BoolExecTest7 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.isWorker and (a.fName='Elizabeth' OR b.fName='Elizabeth') RETURN a.fName +-LOG BoolExecTest7 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.isWorker and (a.fName='Elizabeth' OR b.fName='Elizabeth') RETURN a.fName ---- 2 Elizabeth Elizabeth --NAME BoolExecTest1 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.fName = 'Alice' RETURN a.fName, a.isStudent, b.fName, b.isStudent, c.fName, c.isStudent, a.isStudent AND b.isStudent AND c.isStudent +-LOG BoolExecTest1 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.fName = 'Alice' RETURN a.fName, a.isStudent, b.fName, b.isStudent, c.fName, c.isStudent, a.isStudent AND b.isStudent AND c.isStudent ---- 9 Alice|True|Bob|True|Alice|True|True Alice|True|Bob|True|Carol|False|False @@ -87,8 +87,8 @@ Alice|True|Dan|False|Alice|True|False Alice|True|Dan|False|Bob|True|False Alice|True|Dan|False|Carol|False|False --NAME BoolExecTest2 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.fName = 'Alice' RETURN a.fName, a.isStudent, b.fName, b.isStudent, c.fName, c.isStudent, (a.isStudent AND b.isStudent) OR c.isStudent +-LOG BoolExecTest2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.fName = 'Alice' RETURN a.fName, a.isStudent, b.fName, b.isStudent, c.fName, c.isStudent, (a.isStudent AND b.isStudent) OR c.isStudent -ENUMERATE ---- 9 Alice|True|Bob|True|Alice|True|True @@ -101,8 +101,8 @@ Alice|True|Dan|False|Alice|True|True Alice|True|Dan|False|Bob|True|True Alice|True|Dan|False|Carol|False|False --NAME BoolExecTest3 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE b.fName <> 'Elizabeth' RETURN a.isStudent and b.isWorker +-LOG BoolExecTest3 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE b.fName <> 'Elizabeth' RETURN a.isStudent and b.isWorker -ENUMERATE ---- 14 False diff --git a/test/test_files/tinysnb/function/case.test b/test/test_files/tinysnb/function/case.test index c05c9bf1ae..00cd049020 100644 --- a/test/test_files/tinysnb/function/case.test +++ b/test/test_files/tinysnb/function/case.test @@ -5,46 +5,46 @@ -CASE FunctionCase --NAME CaseIntTest --QUERY MATCH (a:person) WHERE a.ID < 6 RETURN CASE a.age WHEN 35 THEN a.age + 1 ELSE 0 END +-LOG CaseIntTest +-STATEMENT MATCH (a:person) WHERE a.ID < 6 RETURN CASE a.age WHEN 35 THEN a.age + 1 ELSE 0 END ---- 4 36 0 0 0 --NAME CaseStringTest --QUERY MATCH (a:person) WHERE a.ID > 6 RETURN CASE WHEN true THEN a.fName ELSE 'a' END +-LOG CaseStringTest +-STATEMENT MATCH (a:person) WHERE a.ID > 6 RETURN CASE WHEN true THEN a.fName ELSE 'a' END ---- 4 Elizabeth Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME CaseDoubleTest --QUERY MATCH (a:person) WHERE a.ID < 6 RETURN CASE WHEN a.eyeSight > 4.9 THEN a.eyeSight ELSE 1.0 END + 2.0 +-LOG CaseDoubleTest +-STATEMENT MATCH (a:person) WHERE a.ID < 6 RETURN CASE WHEN a.eyeSight > 4.9 THEN a.eyeSight ELSE 1.0 END + 2.0 ---- 4 3.000000 7.000000 7.000000 7.100000 --NAME CaseListTest --QUERY MATCH (a:person) WHERE a.ID > 6 RETURN CASE WHEN len(a.workedHours) = 1 THEN a.courseScoresPerTerm END +-LOG CaseListTest +-STATEMENT MATCH (a:person) WHERE a.ID > 6 RETURN CASE WHEN len(a.workedHours) = 1 THEN a.courseScoresPerTerm END ---- 4 [[10]] [[6],[7],[8]] --NAME CaseIntTest --QUERY MATCH (a:person) WHERE CASE a.fName WHEN 'Bob' THEN a.isStudent WHEN 'Carol' THEN NOT a.isStudent END RETURN a.fName +-LOG CaseIntTest +-STATEMENT MATCH (a:person) WHERE CASE a.fName WHEN 'Bob' THEN a.isStudent WHEN 'Carol' THEN NOT a.isStudent END RETURN a.fName ---- 2 Bob Carol --NAME Case2HopTest --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN CASE a.age WHEN 35 THEN b.fName ELSE "abcdefghijklmnopq" END +-LOG Case2HopTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN CASE a.age WHEN 35 THEN b.fName ELSE "abcdefghijklmnopq" END -ENUMERATE ---- 14 Bob @@ -62,8 +62,8 @@ abcdefghijklmnopq abcdefghijklmnopq abcdefghijklmnopq --NAME Case2HopTest2 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 0 RETURN CASE WHEN (a.ID = 0 AND b.ID = 2) THEN a.ID WHEN true THEN b.ID ELSE 111 END +-LOG Case2HopTest2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 0 RETURN CASE WHEN (a.ID = 0 AND b.ID = 2) THEN a.ID WHEN true THEN b.ID ELSE 111 END -ENUMERATE ---- 3 0 diff --git a/test/test_files/tinysnb/function/cast.test b/test/test_files/tinysnb/function/cast.test index 6ae030f345..8b25a3964b 100644 --- a/test/test_files/tinysnb/function/cast.test +++ b/test/test_files/tinysnb/function/cast.test @@ -5,33 +5,33 @@ -CASE FunctionCast --NAME CastFromINT16 --QUERY MATCH (p:person)-[e:studyAt]->(o:organisation) WHERE p.ID=0 RETURN to_int32(e.length), to_int64(e.length), to_float(e.length), to_double(e.length) +-LOG CastFromINT16 +-STATEMENT MATCH (p:person)-[e:studyAt]->(o:organisation) WHERE p.ID=0 RETURN to_int32(e.length), to_int64(e.length), to_float(e.length), to_double(e.length) ---- 1 5|5|5.000000|5.000000 --NAME CastFromINT32 --QUERY MATCH (m:movies) WHERE m.name='Roma' RETURN to_int16(m.length), to_int64(m.length), to_float(m.length), to_double(m.length) +-LOG CastFromINT32 +-STATEMENT MATCH (m:movies) WHERE m.name='Roma' RETURN to_int16(m.length), to_int64(m.length), to_float(m.length), to_double(m.length) ---- 1 298|298|298.000000|298.000000 --NAME CastFromINT64 --QUERY MATCH (p:person) WHERE p.ID=0 RETURN to_int16(p.gender), to_int32(p.gender), to_float(p.gender), to_double(p.gender) +-LOG CastFromINT64 +-STATEMENT MATCH (p:person) WHERE p.ID=0 RETURN to_int16(p.gender), to_int32(p.gender), to_float(p.gender), to_double(p.gender) ---- 1 1|1|1.000000|1.000000 --NAME CastFromFLOAT --QUERY MATCH (p:person) WHERE p.ID=0 RETURN to_int16(p.height), to_int32(p.height), to_int64(p.height), to_double(p.height) +-LOG CastFromFLOAT +-STATEMENT MATCH (p:person) WHERE p.ID=0 RETURN to_int16(p.height), to_int32(p.height), to_int64(p.height), to_double(p.height) ---- 1 1|1|1|1.731000 --NAME CastFromDOUBLE --QUERY MATCH (p:person) WHERE p.ID=0 RETURN to_int16(p.eyeSight), to_int32(p.eyeSight), to_int64(p.eyeSight), to_float(p.eyeSight) +-LOG CastFromDOUBLE +-STATEMENT MATCH (p:person) WHERE p.ID=0 RETURN to_int16(p.eyeSight), to_int32(p.eyeSight), to_int64(p.eyeSight), to_float(p.eyeSight) ---- 1 5|5|5|5.000000 --NAME CastBoolToString --QUERY MATCH (p:person) RETURN string(p.isStudent) +-LOG CastBoolToString +-STATEMENT MATCH (p:person) RETURN string(p.isStudent) ---- 8 True True @@ -42,8 +42,8 @@ True False False --NAME CastInt64ToString --QUERY MATCH (p:person) RETURN string(p.age) +-LOG CastInt64ToString +-STATEMENT MATCH (p:person) RETURN string(p.age) ---- 8 35 30 @@ -54,22 +54,22 @@ False 40 83 --NAME CastInt32ToString --QUERY MATCH (m:movies) RETURN string(m.length) +-LOG CastInt32ToString +-STATEMENT MATCH (m:movies) RETURN string(m.length) ---- 3 126 2544 298 --NAME CastInt16ToString --QUERY MATCH (p:person)-[s:studyAt]->(o:organisation) RETURN string(s.length) +-LOG CastInt16ToString +-STATEMENT MATCH (p:person)-[s:studyAt]->(o:organisation) RETURN string(s.length) ---- 3 5 55 22 --NAME CastDoubleToString --QUERY MATCH (p:person) RETURN string(p.eyeSight) +-LOG CastDoubleToString +-STATEMENT MATCH (p:person) RETURN string(p.eyeSight) ---- 8 5.000000 5.100000 @@ -80,8 +80,8 @@ False 4.900000 4.900000 --NAME CastFloatToString --QUERY MATCH (p:person) RETURN string(p.height) +-LOG CastFloatToString +-STATEMENT MATCH (p:person) RETURN string(p.height) ---- 8 1.731000 0.990000 @@ -92,8 +92,8 @@ False 1.600000 1.323000 --NAME CastDateToString --QUERY MATCH (p:person) RETURN string(p.birthdate) +-LOG CastDateToString +-STATEMENT MATCH (p:person) RETURN string(p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -104,8 +104,8 @@ False 1980-10-26 1990-11-27 --NAME CastTimestampToString --QUERY MATCH (p:person) RETURN string(p.registerTime) +-LOG CastTimestampToString +-STATEMENT MATCH (p:person) RETURN string(p.registerTime) ---- 8 2011-08-20 11:25:30 2008-11-03 15:25:30.000526 @@ -116,8 +116,8 @@ False 1976-12-23 04:41:42 2023-02-21 13:25:30 --NAME CastIntervalToString --QUERY MATCH (p:person) RETURN string(p.lastJobDuration) +-LOG CastIntervalToString +-STATEMENT MATCH (p:person) RETURN string(p.lastJobDuration) ---- 8 3 years 2 days 13:02:00 10 years 5 months 13:00:00.000024 @@ -128,8 +128,8 @@ False 10 years 5 months 13:00:00.000024 3 years 2 days 13:02:00 --NAME CastStringToString --QUERY MATCH (p:person) RETURN string(p.fName) +-LOG CastStringToString +-STATEMENT MATCH (p:person) RETURN string(p.fName) ---- 8 Alice Bob @@ -140,8 +140,8 @@ Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME CastListOfIntsToString --QUERY MATCH (p:person) RETURN string(p.workedHours) +-LOG CastListOfIntsToString +-STATEMENT MATCH (p:person) RETURN string(p.workedHours) ---- 8 [10,5] [12,8] @@ -152,8 +152,8 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff [1] [10,11,12,3,4,5,6,7] --NAME CastListOfListOfIntsToString --QUERY MATCH (p:person) RETURN string(p.courseScoresPerTerm) +-LOG CastListOfListOfIntsToString +-STATEMENT MATCH (p:person) RETURN string(p.courseScoresPerTerm) ---- 8 [[10,8],[6,7,8]] [[8,9],[9,10]] @@ -164,8 +164,8 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff [[10]] [[7],[10],[6,7]] --NAME CastInternalIDToString --QUERY MATCH (p:person) RETURN string(id(p)) +-LOG CastInternalIDToString +-STATEMENT MATCH (p:person) RETURN string(id(p)) ---- 8 0:0 0:1 @@ -176,64 +176,64 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff 0:6 0:7 --NAME CastStructToString --QUERY MATCH (o:organisation) RETURN string(o.state) +-LOG CastStructToString +-STATEMENT MATCH (o:organisation) RETURN string(o.state) ---- 3 {138,['toronto', 'montr,eal'],{[96,56],1000}} {152,["vanco,uver north area"],{[15,78,671],432}} {558,['very long city name', 'new york'],{[22],99}} --NAME CastInt16ToDouble --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_double(e.length) +-LOG CastInt16ToDouble +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_double(e.length) ---- 3 5.000000 55.000000 22.000000 --NAME CastInt16ToFloat --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_float(e.length) +-LOG CastInt16ToFloat +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_float(e.length) ---- 3 5.000000 55.000000 22.000000 --NAME CastInt16ToInt64 --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_int64(e.length) +-LOG CastInt16ToInt64 +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_int64(e.length) ---- 3 5 55 22 --NAME CastInt16ToInt32 --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_int32(e.length) +-LOG CastInt16ToInt32 +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN to_int32(e.length) ---- 3 5 55 22 --NAME CastInt32ToDouble --QUERY MATCH (m:movies) RETURN to_double(m.length) +-LOG CastInt32ToDouble +-STATEMENT MATCH (m:movies) RETURN to_double(m.length) ---- 3 126.000000 2544.000000 298.000000 --NAME CastInt32ToFloat --QUERY MATCH (m:movies) RETURN to_float(m.length) +-LOG CastInt32ToFloat +-STATEMENT MATCH (m:movies) RETURN to_float(m.length) ---- 3 126.000000 2544.000000 298.000000 --NAME CastInt32ToInt64 --QUERY MATCH (m:movies) RETURN to_int64(m.length) +-LOG CastInt32ToInt64 +-STATEMENT MATCH (m:movies) RETURN to_int64(m.length) ---- 3 126 2544 298 --NAME CastInt64ToDouble --QUERY MATCH (p:person) RETURN to_double(p.age) +-LOG CastInt64ToDouble +-STATEMENT MATCH (p:person) RETURN to_double(p.age) ---- 8 35.000000 30.000000 @@ -244,8 +244,8 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff 40.000000 83.000000 --NAME CastInt64ToFloat --QUERY MATCH (p:person) RETURN to_float(p.gender) +-LOG CastInt64ToFloat +-STATEMENT MATCH (p:person) RETURN to_float(p.gender) ---- 8 1.000000 2.000000 @@ -256,8 +256,8 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff 2.000000 2.000000 --NAME CastFloatToDouble --QUERY MATCH (p:person) RETURN to_double(p.height) +-LOG CastFloatToDouble +-STATEMENT MATCH (p:person) RETURN to_double(p.height) ---- 8 1.731000 0.990000 diff --git a/test/test_files/tinysnb/function/comparison.test b/test/test_files/tinysnb/function/comparison.test index 2e0ab93647..017ff8786a 100644 --- a/test/test_files/tinysnb/function/comparison.test +++ b/test/test_files/tinysnb/function/comparison.test @@ -5,13 +5,13 @@ -CASE FunctionComparison --NAME INT64Equal --QUERY MATCH (p:person) WHERE p.ID = 5 RETURN p.fName; +-LOG INT64Equal +-STATEMENT MATCH (p:person) WHERE p.ID = 5 RETURN p.fName; ---- 1 Dan --NAME INT64NotEqual --QUERY MATCH (p:person) WHERE p.ID <> 2 RETURN p.ID; +-LOG INT64NotEqual +-STATEMENT MATCH (p:person) WHERE p.ID <> 2 RETURN p.ID; ---- 7 0 3 @@ -21,16 +21,16 @@ Dan 9 10 --NAME INT64Greater --QUERY MATCH (p:person) WHERE p.ID > 5 RETURN p.fName; +-LOG INT64Greater +-STATEMENT MATCH (p:person) WHERE p.ID > 5 RETURN p.fName; ---- 4 Elizabeth Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME INT64GreaterEqual --QUERY MATCH (p:person) WHERE p.ID >= 5 RETURN p.fName; +-LOG INT64GreaterEqual +-STATEMENT MATCH (p:person) WHERE p.ID >= 5 RETURN p.fName; ---- 5 Dan Elizabeth @@ -38,28 +38,28 @@ Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME INT64Less --QUERY MATCH (p:person) WHERE p.ID < 5 RETURN p.fName; +-LOG INT64Less +-STATEMENT MATCH (p:person) WHERE p.ID < 5 RETURN p.fName; ---- 3 Alice Bob Carol --NAME INT64LessEqual --QUERY MATCH (p:person) WHERE p.ID <= 5 RETURN p.fName; +-LOG INT64LessEqual +-STATEMENT MATCH (p:person) WHERE p.ID <= 5 RETURN p.fName; ---- 4 Alice Bob Carol Dan --NAME StringEqual --QUERY MATCH (p:person) WHERE p.fName = 'Alice' RETURN p.ID; +-LOG StringEqual +-STATEMENT MATCH (p:person) WHERE p.fName = 'Alice' RETURN p.ID; ---- 1 0 --NAME StringNotEqual --QUERY MATCH (p:person) WHERE p.fName <> 'Alice' RETURN p.ID; +-LOG StringNotEqual +-STATEMENT MATCH (p:person) WHERE p.fName <> 'Alice' RETURN p.ID; ---- 7 2 3 @@ -69,16 +69,16 @@ Dan 9 10 --NAME StringGreater --QUERY MATCH (p:person) WHERE p.fName > 'Dan' RETURN p.fName; +-LOG StringGreater +-STATEMENT MATCH (p:person) WHERE p.fName > 'Dan' RETURN p.fName; ---- 4 Elizabeth Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME StringGreaterEqual --QUERY MATCH (p:person) WHERE p.fName >= 'Dan' RETURN p.fName; +-LOG StringGreaterEqual +-STATEMENT MATCH (p:person) WHERE p.fName >= 'Dan' RETURN p.fName; ---- 5 Dan Elizabeth @@ -86,28 +86,28 @@ Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME StringLess --QUERY MATCH (p:person) WHERE p.fName < 'Dan' RETURN p.fName; +-LOG StringLess +-STATEMENT MATCH (p:person) WHERE p.fName < 'Dan' RETURN p.fName; ---- 3 Alice Bob Carol --NAME StringLessEqual --QUERY MATCH (p:person) WHERE p.fName <= 'Dan' RETURN p.fName; +-LOG StringLessEqual +-STATEMENT MATCH (p:person) WHERE p.fName <= 'Dan' RETURN p.fName; ---- 4 Alice Bob Carol Dan --NAME ListOfInt64Equal --QUERY MATCH (p:person) WHERE p.workedHours = [12, 8] RETURN p.ID; +-LOG ListOfInt64Equal +-STATEMENT MATCH (p:person) WHERE p.workedHours = [12, 8] RETURN p.ID; ---- 1 2 --NAME ListOfInt64NotEqual --QUERY MATCH (p:person) WHERE p.workedHours <> [12, 8] RETURN p.ID; +-LOG ListOfInt64NotEqual +-STATEMENT MATCH (p:person) WHERE p.workedHours <> [12, 8] RETURN p.ID; ---- 7 0 3 @@ -117,8 +117,8 @@ Dan 9 10 --NAME ListOfInt64Greater --QUERY MATCH (p:person) WHERE p.workedHours > [2] RETURN p.fName; +-LOG ListOfInt64Greater +-STATEMENT MATCH (p:person) WHERE p.workedHours > [2] RETURN p.fName; ---- 5 Alice Bob @@ -126,23 +126,23 @@ Carol Farooq Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME ListOfInt64GreaterEqual --QUERY MATCH (p:person) WHERE p.workedHours >= [4,5] RETURN p.fName; +-LOG ListOfInt64GreaterEqual +-STATEMENT MATCH (p:person) WHERE p.workedHours >= [4,5] RETURN p.fName; ---- 4 Alice Bob Carol Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME ListOfInt64Less --QUERY MATCH (p:person) WHERE p.workedHours < [3,4,5] RETURN p.fName; +-LOG ListOfInt64Less +-STATEMENT MATCH (p:person) WHERE p.workedHours < [3,4,5] RETURN p.fName; ---- 3 Dan Elizabeth Greg --NAME ListOfInt64LessEqual --QUERY MATCH (p:person) WHERE p.workedHours <= [8] RETURN p.fName; +-LOG ListOfInt64LessEqual +-STATEMENT MATCH (p:person) WHERE p.workedHours <= [8] RETURN p.fName; ---- 5 Carol Dan @@ -150,13 +150,13 @@ Elizabeth Farooq Greg --NAME ListOfListOfInt64Equal --QUERY MATCH (p:person) WHERE p.courseScoresPerTerm = [[8,9],[9,10]] RETURN p.ID; +-LOG ListOfListOfInt64Equal +-STATEMENT MATCH (p:person) WHERE p.courseScoresPerTerm = [[8,9],[9,10]] RETURN p.ID; ---- 1 2 --NAME ListOfListOfInt64NotEqual --QUERY MATCH (p:person) WHERE p.courseScoresPerTerm <> [[8,9],[9,10]] RETURN p.ID; +-LOG ListOfListOfInt64NotEqual +-STATEMENT MATCH (p:person) WHERE p.courseScoresPerTerm <> [[8,9],[9,10]] RETURN p.ID; ---- 7 0 3 @@ -166,21 +166,21 @@ Greg 9 10 --NAME ListOfListOfInt64Greater --QUERY MATCH (p:person) WHERE p.courseScoresPerTerm > [[8,9],[6,4]] RETURN p.fName; +-LOG ListOfListOfInt64Greater +-STATEMENT MATCH (p:person) WHERE p.courseScoresPerTerm > [[8,9],[6,4]] RETURN p.fName; ---- 4 Alice Bob Carol Greg --NAME ListOfListOfInt64GreaterEqual --QUERY MATCH (p:person) WHERE p.courseScoresPerTerm >= [[10,8],[6,7,8]] RETURN p.fName; +-LOG ListOfListOfInt64GreaterEqual +-STATEMENT MATCH (p:person) WHERE p.courseScoresPerTerm >= [[10,8],[6,7,8]] RETURN p.fName; ---- 1 Alice --NAME ListOfListOfInt64Less --QUERY MATCH (p:person) WHERE p.courseScoresPerTerm < [[8,9,2]] RETURN p.fName; +-LOG ListOfListOfInt64Less +-STATEMENT MATCH (p:person) WHERE p.courseScoresPerTerm < [[8,9,2]] RETURN p.fName; ---- 5 Bob Dan @@ -188,77 +188,77 @@ Elizabeth Farooq Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME ListOfListOfInt64LessEqual --QUERY MATCH (p:person) WHERE p.courseScoresPerTerm <= [[8]] RETURN p.fName; +-LOG ListOfListOfInt64LessEqual +-STATEMENT MATCH (p:person) WHERE p.courseScoresPerTerm <= [[8]] RETURN p.fName; ---- 4 Dan Elizabeth Farooq Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME ListGreaterWithNull --QUERY RETURN [3,4] > [3,NULL] +-LOG ListGreaterWithNull +-STATEMENT RETURN [3,4] > [3,NULL] ---- 1 False --NAME ListGreaterWithNull --QUERY RETURN [3, NULL, 2] > [3,NULL] +-LOG ListGreaterWithNull +-STATEMENT RETURN [3, NULL, 2] > [3,NULL] ---- 1 True --NAME ListNotEqualWithNull --QUERY RETURN [NULL, 2] <> [NULL] +-LOG ListNotEqualWithNull +-STATEMENT RETURN [NULL, 2] <> [NULL] ---- 1 True --NAME StructEqual --QUERY MATCH (m:movies) WHERE m.description = {a: 7.0, b: 982, c: timestamp('2018-11-13 13:33:11'), d: date('2014-09-12')} RETURN m.name; +-LOG StructEqual +-STATEMENT MATCH (m:movies) WHERE m.description = {a: 7.0, b: 982, c: timestamp('2018-11-13 13:33:11'), d: date('2014-09-12')} RETURN m.name; ---- 1 The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie --NAME StructNotEqual --QUERY MATCH (m:movies) WHERE m.description <> {rating: 1223.0, views: 10003, release: timestamp('2011-02-11 16:44:22'), film: date('2013-02-22')} RETURN m.name; +-LOG StructNotEqual +-STATEMENT MATCH (m:movies) WHERE m.description <> {rating: 1223.0, views: 10003, release: timestamp('2011-02-11 16:44:22'), film: date('2013-02-22')} RETURN m.name; ---- 2 Sóló cón tu párejâ The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie --NAME StructGreater --QUERY MATCH (m:movies) WHERE m.description > {rating: 5.3, views: 152, release: timestamp('2011-08-20 11:25:30'), film: date('2012-05-11')} RETURN m.name; +-LOG StructGreater +-STATEMENT MATCH (m:movies) WHERE m.description > {rating: 5.3, views: 152, release: timestamp('2011-08-20 11:25:30'), film: date('2012-05-11')} RETURN m.name; ---- 2 The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie Roma --NAME StructGreaterEqual --QUERY MATCH (m:movies) WHERE m.description >= {rating: 5.3, views: 152, release: timestamp('2011-08-20 11:25:30'), film: date('2012-05-11')} RETURN m.name; +-LOG StructGreaterEqual +-STATEMENT MATCH (m:movies) WHERE m.description >= {rating: 5.3, views: 152, release: timestamp('2011-08-20 11:25:30'), film: date('2012-05-11')} RETURN m.name; ---- 3 Sóló cón tu párejâ The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie Roma --NAME StructLess --QUERY MATCH (m:movies) WHERE m.description < {rating: 7.0, views: 1000, release: timestamp('2018-11-13 13:33:11'), film: date('2014-09-12')} RETURN m.name; +-LOG StructLess +-STATEMENT MATCH (m:movies) WHERE m.description < {rating: 7.0, views: 1000, release: timestamp('2018-11-13 13:33:11'), film: date('2014-09-12')} RETURN m.name; ---- 2 Sóló cón tu párejâ The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie --NAME StructLessEqual --QUERY MATCH (m:movies) WHERE m.description <= {rating: 1223.0, views: 10004, release: timestamp('2011-02-11 16:44:22'), film: date('2013-02-22')} RETURN m.name; +-LOG StructLessEqual +-STATEMENT MATCH (m:movies) WHERE m.description <= {rating: 1223.0, views: 10004, release: timestamp('2011-02-11 16:44:22'), film: date('2013-02-22')} RETURN m.name; ---- 3 Sóló cón tu párejâ The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie Roma --NAME StructGreaterWithNull --QUERY RETURN {a: 2, b: null} > {a: 2, b: 3} +-LOG StructGreaterWithNull +-STATEMENT RETURN {a: 2, b: null} > {a: 2, b: 3} ---- 1 True --NAME StructGreaterWithNull --QUERY RETURN {a: 2, b: null} > {a: 2, b: null} +-LOG StructGreaterWithNull +-STATEMENT RETURN {a: 2, b: null} > {a: 2, b: null} ---- 1 False --NAME StructNotEqualWithNull --QUERY RETURN {a: 2, b: null} <> {a: 2, b: null} +-LOG StructNotEqualWithNull +-STATEMENT RETURN {a: 2, b: null} <> {a: 2, b: null} ---- 1 False diff --git a/test/test_files/tinysnb/function/date.test b/test/test_files/tinysnb/function/date.test index 637758dc51..236e3771fe 100644 --- a/test/test_files/tinysnb/function/date.test +++ b/test/test_files/tinysnb/function/date.test @@ -5,13 +5,13 @@ -CASE FunctionDate --NAME DateLiteralEqualityComparison --QUERY MATCH (a:person) WHERE a.birthdate = date('1900-1-1') RETURN COUNT(*) +-LOG DateLiteralEqualityComparison +-STATEMENT MATCH (a:person) WHERE a.birthdate = date('1900-1-1') RETURN COUNT(*) ---- 1 2 --NAME StructuredDateArithmeticAddInt --QUERY MATCH (a:person) RETURN a.birthdate + 32 +-LOG StructuredDateArithmeticAddInt +-STATEMENT MATCH (a:person) RETURN a.birthdate + 32 ---- 8 1900-02-02 1900-02-02 @@ -22,8 +22,8 @@ 1980-11-27 1990-12-29 --NAME IntArithmeticAddStructuredDate --QUERY MATCH (a:person) RETURN 32 + a.birthdate +-LOG IntArithmeticAddStructuredDate +-STATEMENT MATCH (a:person) RETURN 32 + a.birthdate ---- 8 1900-02-02 1900-02-02 @@ -34,8 +34,8 @@ 1980-11-27 1990-12-29 --NAME StructuredDateArithmeticAddInterval1 --QUERY MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate + interval('2 years 3 months 4 days') +-LOG StructuredDateArithmeticAddInterval1 +-STATEMENT MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate + interval('2 years 3 months 4 days') ---- 6 1942-09-26 1952-10-27 @@ -44,8 +44,8 @@ 1983-01-30 1993-03-03 --NAME StructuredDateArithmeticAddInterval2 --QUERY MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate + interval('47 hours 60 minutes') +-LOG StructuredDateArithmeticAddInterval2 +-STATEMENT MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate + interval('47 hours 60 minutes') ---- 6 1940-06-24 1950-07-25 @@ -54,8 +54,8 @@ 1980-10-28 1990-11-29 --NAME structuredDateArithmeticSubtractInt --QUERY MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate - 25 +-LOG structuredDateArithmeticSubtractInt +-STATEMENT MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate - 25 ---- 6 1940-05-28 1950-06-28 @@ -64,8 +64,8 @@ 1980-10-01 1990-11-02 --NAME StructuredDateArithmeticSubtractInterval --QUERY MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate - interval('4 years 11 months 31 days 100 seconds') +-LOG StructuredDateArithmeticSubtractInterval +-STATEMENT MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN a.birthdate - interval('4 years 11 months 31 days 100 seconds') ---- 6 1935-06-21 1945-07-23 @@ -74,8 +74,8 @@ 1975-10-26 1985-11-26 --NAME StructuredDateArithmeticSubtractDate --QUERY MATCH (a:person) RETURN a.birthdate - date('1920-03-21') +-LOG StructuredDateArithmeticSubtractDate +-STATEMENT MATCH (a:person) RETURN a.birthdate - date('1920-03-21') ---- 8 -7384 -7384 @@ -86,8 +86,8 @@ 25818 7398 --NAME StructuredDateMixedArithmeticOperations --QUERY MATCH (a:person) RETURN a.birthdate + 10 - interval('4 years 2 months 3 days') - 20 - date('1912-04-12'); +-LOG StructuredDateMixedArithmeticOperations +-STATEMENT MATCH (a:person) RETURN a.birthdate + 10 - interval('4 years 2 months 3 days') - 20 - date('1912-04-12'); ---- 8 -6019 -6019 @@ -98,8 +98,8 @@ 23499 27183 --NAME StructuredDateConcatenateString --QUERY MATCH (a:person) RETURN concat(concat('Birthdate: ', string(a.birthdate)), ' test') +-LOG StructuredDateConcatenateString +-STATEMENT MATCH (a:person) RETURN concat(concat('Birthdate: ', string(a.birthdate)), ' test') ---- 8 Birthdate: 1900-01-01 test Birthdate: 1900-01-01 test @@ -110,8 +110,8 @@ Birthdate: 1980-10-26 test Birthdate: 1980-10-26 test Birthdate: 1990-11-27 test --NAME StructuredDateDayNameFuncTest --QUERY MATCH (p:person) RETURN dayname(p.birthdate) +-LOG StructuredDateDayNameFuncTest +-STATEMENT MATCH (p:person) RETURN dayname(p.birthdate) ---- 8 Monday Monday @@ -122,8 +122,8 @@ Sunday Sunday Tuesday --NAME StructuredDateMonthNameFuncTest --QUERY MATCH (p:person) RETURN monthname(p.birthdate) +-LOG StructuredDateMonthNameFuncTest +-STATEMENT MATCH (p:person) RETURN monthname(p.birthdate) ---- 8 January January @@ -134,8 +134,8 @@ October October November --NAME StructuredDateLastDayFuncTest --QUERY MATCH (p:person) RETURN last_day(p.birthdate) +-LOG StructuredDateLastDayFuncTest +-STATEMENT MATCH (p:person) RETURN last_day(p.birthdate) ---- 8 1900-01-31 1900-01-31 @@ -146,8 +146,8 @@ November 1980-10-31 1990-11-30 --NAME StructuredDateExtractYearFuncTest --QUERY MATCH (p:person) RETURN date_part("year", p.birthdate) +-LOG StructuredDateExtractYearFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("year", p.birthdate) ---- 8 1900 1900 @@ -158,8 +158,8 @@ November 1980 1990 --NAME StructuredDateExtractMonthFuncTest --QUERY MATCH (p:person) RETURN date_part("month", p.birthdate) +-LOG StructuredDateExtractMonthFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("month", p.birthdate) ---- 8 1 1 @@ -170,8 +170,8 @@ November 10 11 --NAME StructuredDateExtractDayFuncTest --QUERY MATCH (p:person) RETURN date_part("Day", p.birthdate) +-LOG StructuredDateExtractDayFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("Day", p.birthdate) ---- 8 1 1 @@ -182,8 +182,8 @@ November 26 27 --NAME StructuredDateExtractDecadeFuncTest --QUERY MATCH (p:person) RETURN date_part("decadE", p.birthdate) +-LOG StructuredDateExtractDecadeFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("decadE", p.birthdate) ---- 8 190 190 @@ -194,8 +194,8 @@ November 198 199 --NAME StructuredDateExtractCenturyFuncTest --QUERY MATCH (p:person) RETURN date_part("cenTury", p.birthdate) +-LOG StructuredDateExtractCenturyFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("cenTury", p.birthdate) ---- 8 19 19 @@ -206,8 +206,8 @@ November 20 20 --NAME StructuredDateExtractMillenniumFuncTest --QUERY MATCH (p:person) RETURN date_part("millenniuM", p.birthdate) +-LOG StructuredDateExtractMillenniumFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("millenniuM", p.birthdate) ---- 8 2 2 @@ -218,8 +218,8 @@ November 2 2 --NAME StructuredDateExtractQuarterFuncTest --QUERY MATCH (p:person) RETURN date_part("quarTer", p.birthdate) +-LOG StructuredDateExtractQuarterFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("quarTer", p.birthdate) ---- 8 1 1 @@ -230,8 +230,8 @@ November 4 4 --NAME StructuredDateExtractMicroSecondsFuncTest --QUERY MATCH (p:person) RETURN date_part("microseconds", p.birthdate) +-LOG StructuredDateExtractMicroSecondsFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("microseconds", p.birthdate) ---- 8 0 0 @@ -242,8 +242,8 @@ November 0 0 --NAME StructuredDateTruncYearFuncTest --QUERY MATCH (p:person) RETURN date_trunc("year", p.birthdate) +-LOG StructuredDateTruncYearFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("year", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -254,8 +254,8 @@ November 1980-01-01 1990-01-01 --NAME StructuredDateTruncMonthFuncTest --QUERY MATCH (p:person) RETURN date_trunc("month", p.birthdate) +-LOG StructuredDateTruncMonthFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("month", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -266,8 +266,8 @@ November 1980-10-01 1990-11-01 --NAME StructuredDateTruncDayFuncTest --QUERY MATCH (p:person) RETURN date_trunc("Day", p.birthdate) +-LOG StructuredDateTruncDayFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("Day", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -278,8 +278,8 @@ November 1980-10-26 1990-11-27 --NAME StructuredDateTruncDecadeFuncTest --QUERY MATCH (p:person) RETURN date_trunc("decadE", p.birthdate) +-LOG StructuredDateTruncDecadeFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("decadE", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -290,8 +290,8 @@ November 1980-01-01 1990-01-01 --NAME StructuredDateTruncCenturyFuncTest --QUERY MATCH (p:person) RETURN date_trunc("cenTury", p.birthdate) +-LOG StructuredDateTruncCenturyFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("cenTury", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -302,8 +302,8 @@ November 1900-01-01 1900-01-01 --NAME StructuredDateTruncMillenniumFuncTest --QUERY MATCH (p:person) RETURN date_trunc("millenniuM", p.birthdate) +-LOG StructuredDateTruncMillenniumFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("millenniuM", p.birthdate) ---- 8 1000-01-01 1000-01-01 @@ -314,8 +314,8 @@ November 1000-01-01 1000-01-01 --NAME StructuredDateTruncQuarterFuncTest --QUERY MATCH (p:person) RETURN date_trunc("quarTer", p.birthdate) +-LOG StructuredDateTruncQuarterFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("quarTer", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -326,8 +326,8 @@ November 1980-10-01 1990-10-01 --NAME StructuredDateTruncSecondFuncTest --QUERY MATCH (p:person) RETURN date_trunc("second", p.birthdate) +-LOG StructuredDateTruncSecondFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("second", p.birthdate) ---- 8 1900-01-01 1900-01-01 @@ -338,8 +338,8 @@ November 1980-10-26 1990-11-27 --NAME StructuredDateGreatestFuncTest --QUERY MATCH (p:person) RETURN greatest(p.birthdate, date("1980-10-02")) +-LOG StructuredDateGreatestFuncTest +-STATEMENT MATCH (p:person) RETURN greatest(p.birthdate, date("1980-10-02")) ---- 8 1980-10-02 1980-10-02 @@ -350,8 +350,8 @@ November 1980-10-26 1990-11-27 --NAME StructuredDateLeastFuncTest --QUERY MATCH (p:person) RETURN least(p.birthdate, date("1980-10-02")) +-LOG StructuredDateLeastFuncTest +-STATEMENT MATCH (p:person) RETURN least(p.birthdate, date("1980-10-02")) ---- 8 1900-01-01 1900-01-01 @@ -362,67 +362,67 @@ November 1980-10-02 1980-10-02 --NAME StructuredIntMakeDateTest --QUERY MATCH (o:organisation) RETURN make_date(o.orgCode * 3, o.ID, 20) +-LOG StructuredIntMakeDateTest +-STATEMENT MATCH (o:organisation) RETURN make_date(o.orgCode * 3, o.ID, 20) ---- 3 0975-01-20 2802-04-20 2472-06-20 --NAME StructuredDateComparisonAcrossNodesNonEquality --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate <> b.birthdate RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossNodesNonEquality +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate <> b.birthdate RETURN COUNT(*) ---- 1 10 --NAME StructuredDateComparisonAcrossNodesLessThan --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate < b.birthdate RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossNodesLessThan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate < b.birthdate RETURN COUNT(*) ---- 1 5 --NAME StructuredDateComparisonAcrossNodesLessThanOrEqualTo --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate <= b.birthdate RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossNodesLessThanOrEqualTo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate <= b.birthdate RETURN COUNT(*) ---- 1 9 --NAME StructuredDateComparisonAcrossNodesGreaterThan --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate > b.birthdate RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossNodesGreaterThan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate > b.birthdate RETURN COUNT(*) ---- 1 5 --NAME DateLiteralGreaterThanComparison --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE b.birthdate > date('1970-09-11') RETURN COUNT(*) +-LOG DateLiteralGreaterThanComparison +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE b.birthdate > date('1970-09-11') RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME DateLiteralLessThanComparison --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE e1.date < date('1960-09-11') RETURN COUNT(*) +-LOG DateLiteralLessThanComparison +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE e1.date < date('1960-09-11') RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME StructuredDateComparisonAcrossNodesEquality --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate = b.birthdate RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossNodesEquality +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate = b.birthdate RETURN COUNT(*) -ENUMERATE ---- 1 4 --NAME StructuredDateComparisonAcrossNodesGreaterThanOrEqualTo --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate >= b.birthdate RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossNodesGreaterThanOrEqualTo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate >= b.birthdate RETURN COUNT(*) -ENUMERATE ---- 1 9 --NAME StructuredDateComparisonAcrossEdges --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossEdges +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE e1.date = e2.date AND id(a) <> id(c) RETURN COUNT(*) -ENUMERATE ---- 1 10 # For the below query, these are the 3 edges that should pass the filter: (1) 5, 2,1950-05-14 (5's birthday is 1950-7-23) # (2-3) 7,8,1905-12-12 and 7,9,1905-12-12 (7's birthday is 1980-10-26) --NAME StructuredDateComparisonAcrossEdgeAndNode --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate > e1.date RETURN COUNT(*) +-LOG StructuredDateComparisonAcrossEdgeAndNode +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.birthdate > e1.date RETURN COUNT(*) -ENUMERATE ---- 1 3 diff --git a/test/test_files/tinysnb/function/interval.test b/test/test_files/tinysnb/function/interval.test index 13e7ae8b59..d59a736ffd 100644 --- a/test/test_files/tinysnb/function/interval.test +++ b/test/test_files/tinysnb/function/interval.test @@ -5,20 +5,20 @@ -CASE FunctionInterval --NAME IntervalFunctionOnCol --QUERY MATCH (o:organisation) RETURN interval(o.history) + interval('31 months 20 days 10 hours 100us') +-LOG IntervalFunctionOnCol +-STATEMENT MATCH (o:organisation) RETURN interval(o.history) + interval('31 months 20 days 10 hours 100us') ---- 3 13 years 20 days 23:00:00.000124 4 years 7 months 20 days 14:34:00.000122 4 years 7 months 24 days 20:00:00.0001 --NAME IntervalFunctionEqualityComparison --QUERY MATCH (a:person) WHERE a.lastJobDuration = interval('3 years 2 days 13 hours 2 minutes') RETURN COUNT(*) +-LOG IntervalFunctionEqualityComparison +-STATEMENT MATCH (a:person) WHERE a.lastJobDuration = interval('3 years 2 days 13 hours 2 minutes') RETURN COUNT(*) ---- 1 2 --NAME StructuredIntervalAdd --QUERY MATCH (a:person) RETURN a.lastJobDuration + interval('47 hours 30 minutes 30 seconds') +-LOG StructuredIntervalAdd +-STATEMENT MATCH (a:person) RETURN a.lastJobDuration + interval('47 hours 30 minutes 30 seconds') ---- 8 10 years 5 months 60:30:30.000024 10 years 5 months 60:30:30.000024 @@ -29,8 +29,8 @@ 95:54:41 95:54:41 --NAME StructuredIntervalAddStructuredDate --QUERY MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN interval('47 hours 60 minutes') + a.birthdate +-LOG StructuredIntervalAddStructuredDate +-STATEMENT MATCH (a:person) WHERE a.birthdate <> date('1900-01-01') RETURN interval('47 hours 60 minutes') + a.birthdate ---- 6 1940-06-24 1950-07-25 @@ -39,8 +39,8 @@ 1980-10-28 1990-11-29 --NAME StructuredIntervalAddStructuredTimestamp --QUERY MATCH (a:person) RETURN interval('2 years 3 days 34 h 28 minutes 300 milliseconds 20 us') + a.registerTime +-LOG StructuredIntervalAddStructuredTimestamp +-STATEMENT MATCH (a:person) RETURN interval('2 years 3 days 34 h 28 minutes 300 milliseconds 20 us') + a.registerTime ---- 8 1913-08-24 13:00:21.30002 1974-08-04 23:50:30.978579 @@ -51,8 +51,8 @@ 2025-02-25 23:53:30.30002 2033-12-04 22:53:30.30002 --NAME StructuredIntervalSubtract --QUERY MATCH (a:person) RETURN a.lastJobDuration - interval('52 days 42 hours 31 seconds 22 milliseconds') +-LOG StructuredIntervalSubtract +-STATEMENT MATCH (a:person) RETURN a.lastJobDuration - interval('52 days 42 hours 31 seconds 22 milliseconds') ---- 8 -52 days -41:42:30.998 -52 days 06:23:39.978 @@ -63,8 +63,8 @@ 3 years -50 days -28:58:31.022 3 years -50 days -28:58:31.022 --NAME StructuredIntervalMixedArithmeticOperations --QUERY MATCH (a:person) RETURN a.lastJobDuration + interval('2 hours 48 minutes 1000 seconds') - interval('188 days 48 hours') + interval('5 years 100 microseconds') +-LOG StructuredIntervalMixedArithmeticOperations +-STATEMENT MATCH (a:person) RETURN a.lastJobDuration + interval('2 hours 48 minutes 1000 seconds') - interval('188 days 48 hours') + interval('5 years 100 microseconds') ---- 8 15 years 5 months -188 days -31:55:19.999876 15 years 5 months -188 days -31:55:19.999876 @@ -75,15 +75,15 @@ 8 years -186 days -31:53:19.9999 8 years -186 days -31:53:19.9999 --NAME StructuredIntervalConcatenateString --QUERY MATCH (o:organisation) RETURN concat(concat('The license is valid until ', string(o.licenseValidInterval)), ' test') +-LOG StructuredIntervalConcatenateString +-STATEMENT MATCH (o:organisation) RETURN concat(concat('The license is valid until ', string(o.licenseValidInterval)), ' test') ---- 3 The license is valid until 26 years 52 days 48:00:00 test The license is valid until 3 years 5 days test The license is valid until 82:00:00.1 test --NAME StructuredIntervalDivideInt --QUERY MATCH (p:person) RETURN p.lastJobDuration / 3 +-LOG StructuredIntervalDivideInt +-STATEMENT MATCH (p:person) RETURN p.lastJobDuration / 3 ---- 8 00:06:00.008 1 year 20:20:40 @@ -94,8 +94,8 @@ The license is valid until 82:00:00.1 test 3 years 5 months 20 days 04:20:00.000008 3 years 5 months 20 days 04:20:00.000008 --NAME StructuredIntervalDivideTwoInts --QUERY MATCH (p:person) RETURN p.lastJobDuration / 3 / 6 +-LOG StructuredIntervalDivideTwoInts +-STATEMENT MATCH (p:person) RETURN p.lastJobDuration / 3 / 6 ---- 8 00:01:00.001333 02:41:20.611111 @@ -106,8 +106,8 @@ The license is valid until 82:00:00.1 test 6 months 28 days 08:43:20.000001 6 months 28 days 08:43:20.000001 --NAME EdgeIntervalDivideInt --QUERY MATCH (a:person)-[e1:knows]->(b:person) RETURN e1.validInterval / 5 +-LOG EdgeIntervalDivideInt +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) RETURN e1.validInterval / 5 ---- 14 00:00:00.000096 00:00:00.06 @@ -124,8 +124,8 @@ The license is valid until 82:00:00.1 test 4 years 6 days 09:36:00 8 days 06:00:00 --NAME StructuredIntervalExtractYearFuncTest --QUERY MATCH (p:person) RETURN date_part("yeAr", p.lastJobDuration) +-LOG StructuredIntervalExtractYearFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("yeAr", p.lastJobDuration) ---- 8 3 10 @@ -136,8 +136,8 @@ The license is valid until 82:00:00.1 test 10 3 --NAME StructuredIntervalExtractMonthFuncTest --QUERY MATCH (p:person) RETURN date_part("month", p.lastJobDuration) +-LOG StructuredIntervalExtractMonthFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("month", p.lastJobDuration) ---- 8 0 5 @@ -148,8 +148,8 @@ The license is valid until 82:00:00.1 test 5 0 --NAME StructuredIntervalExtractDayFuncTest --QUERY MATCH (p:person) RETURN date_part("day", p.lastJobDuration) +-LOG StructuredIntervalExtractDayFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("day", p.lastJobDuration) ---- 8 2 0 @@ -160,8 +160,8 @@ The license is valid until 82:00:00.1 test 0 2 --NAME StructuredIntervalExtractDecadeFuncTest --QUERY MATCH (p:person) RETURN date_part("Decade", p.lastJobDuration) +-LOG StructuredIntervalExtractDecadeFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("Decade", p.lastJobDuration) ---- 8 0 1 @@ -172,8 +172,8 @@ The license is valid until 82:00:00.1 test 1 0 --NAME StructuredIntervalExtractCenturyFuncTest --QUERY MATCH (p:person) RETURN date_part("century", p.lastJobDuration) +-LOG StructuredIntervalExtractCenturyFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("century", p.lastJobDuration) ---- 8 0 0 @@ -184,8 +184,8 @@ The license is valid until 82:00:00.1 test 0 0 --NAME StructuredIntervalExtractMillenniumFuncTest --QUERY MATCH (p:person) RETURN date_part("MILLENNIUM", p.lastJobDuration) +-LOG StructuredIntervalExtractMillenniumFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("MILLENNIUM", p.lastJobDuration) ---- 8 0 0 @@ -196,8 +196,8 @@ The license is valid until 82:00:00.1 test 0 0 --NAME StructuredIntervalExtractQuarterFuncTest --QUERY MATCH (p:person) RETURN date_part("QUARTER", p.lastJobDuration) +-LOG StructuredIntervalExtractQuarterFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("QUARTER", p.lastJobDuration) ---- 8 1 2 @@ -208,8 +208,8 @@ The license is valid until 82:00:00.1 test 2 1 --NAME StructuredIntervalExtractMicrosecondFuncTest --QUERY MATCH (p:person) RETURN date_part("MICROSECOND", p.lastJobDuration) +-LOG StructuredIntervalExtractMicrosecondFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("MICROSECOND", p.lastJobDuration) ---- 8 0 24 @@ -220,8 +220,8 @@ The license is valid until 82:00:00.1 test 24 0 --NAME StructuredIntervalExtractMillisecondFuncTest --QUERY MATCH (p:person) RETURN date_part("MILLISECOND", p.lastJobDuration) +-LOG StructuredIntervalExtractMillisecondFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("MILLISECOND", p.lastJobDuration) ---- 8 0 0 @@ -232,8 +232,8 @@ The license is valid until 82:00:00.1 test 0 0 --NAME StructuredIntervalExtractSecondFuncTest --QUERY MATCH (p:person) RETURN date_part("second", p.lastJobDuration) +-LOG StructuredIntervalExtractSecondFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("second", p.lastJobDuration) ---- 8 0 0 @@ -245,8 +245,8 @@ The license is valid until 82:00:00.1 test 0 --NAME StructuredIntervalExtractMinuteFuncTest --QUERY MATCH (p:person) RETURN date_part("minutes", p.lastJobDuration) +-LOG StructuredIntervalExtractMinuteFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("minutes", p.lastJobDuration) ---- 8 2 0 @@ -257,8 +257,8 @@ The license is valid until 82:00:00.1 test 0 2 --NAME StructuredIntervalExtractHourFuncTest --QUERY MATCH (p:person) RETURN date_part("hours", p.lastJobDuration) +-LOG StructuredIntervalExtractHourFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("hours", p.lastJobDuration) ---- 8 13 13 @@ -269,8 +269,8 @@ The license is valid until 82:00:00.1 test 13 13 --NAME StructuredInt64ToYearFuncTest --QUERY MATCH (p:person) RETURN to_years(p.age) +-LOG StructuredInt64ToYearFuncTest +-STATEMENT MATCH (p:person) RETURN to_years(p.age) ---- 8 35 years 30 years @@ -281,8 +281,8 @@ The license is valid until 82:00:00.1 test 40 years 83 years --NAME StructuredInt64ToMonthsFuncTest --QUERY MATCH (p:person) RETURN to_months(p.age) +-LOG StructuredInt64ToMonthsFuncTest +-STATEMENT MATCH (p:person) RETURN to_months(p.age) ---- 8 2 years 11 months 2 years 6 months @@ -293,8 +293,8 @@ The license is valid until 82:00:00.1 test 3 years 4 months 6 years 11 months --NAME StructuredInt64ToDaysFuncTest --QUERY MATCH (p:person) RETURN to_days(p.age) +-LOG StructuredInt64ToDaysFuncTest +-STATEMENT MATCH (p:person) RETURN to_days(p.age) ---- 8 35 days 30 days @@ -305,8 +305,8 @@ The license is valid until 82:00:00.1 test 40 days 83 days --NAME StructuredInt64ToHoursFuncTest --QUERY MATCH (p:person) RETURN to_hours(p.age) +-LOG StructuredInt64ToHoursFuncTest +-STATEMENT MATCH (p:person) RETURN to_hours(p.age) ---- 8 35:00:00 30:00:00 @@ -317,8 +317,8 @@ The license is valid until 82:00:00.1 test 40:00:00 83:00:00 --NAME StructuredInt64ToMinutesFuncTest --QUERY MATCH (p:person) RETURN to_minutes(p.age) +-LOG StructuredInt64ToMinutesFuncTest +-STATEMENT MATCH (p:person) RETURN to_minutes(p.age) ---- 8 00:35:00 00:30:00 @@ -329,8 +329,8 @@ The license is valid until 82:00:00.1 test 00:40:00 01:23:00 --NAME StructuredInt64ToSecondsFuncTest --QUERY MATCH (p:person) RETURN to_seconds(p.age) +-LOG StructuredInt64ToSecondsFuncTest +-STATEMENT MATCH (p:person) RETURN to_seconds(p.age) ---- 8 00:00:35 00:00:30 @@ -341,8 +341,8 @@ The license is valid until 82:00:00.1 test 00:00:40 00:01:23 --NAME StructuredInt64ToMillisecondsFuncTest --QUERY MATCH (p:person) RETURN to_milliseconds(p.age) +-LOG StructuredInt64ToMillisecondsFuncTest +-STATEMENT MATCH (p:person) RETURN to_milliseconds(p.age) ---- 8 00:00:00.035 00:00:00.03 @@ -353,8 +353,8 @@ The license is valid until 82:00:00.1 test 00:00:00.04 00:00:00.083 --NAME StructuredInt64ToMicrosecondsFuncTest --QUERY MATCH (p:person) RETURN to_microseconds(p.age) +-LOG StructuredInt64ToMicrosecondsFuncTest +-STATEMENT MATCH (p:person) RETURN to_microseconds(p.age) ---- 8 00:00:00.000035 00:00:00.00003 @@ -365,58 +365,58 @@ The license is valid until 82:00:00.1 test 00:00:00.00004 00:00:00.000083 --NAME StructuredIntervalComparisonAcrossNodesNonEquality --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration <> b.lastJobDuration RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossNodesNonEquality +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration <> b.lastJobDuration RETURN COUNT(*) ---- 1 12 --NAME StructuredIntervalComparisonAcrossNodesLessThan --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration < b.lastJobDuration RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossNodesLessThan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration < b.lastJobDuration RETURN COUNT(*) ---- 1 6 --NAME StructuredIntervalComparisonAcrossNodesLessThanOrEqualTo --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration <= b.lastJobDuration RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossNodesLessThanOrEqualTo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration <= b.lastJobDuration RETURN COUNT(*) ---- 1 8 --NAME StructuredIntervalComparisonAcrossNodesGreaterThan --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration > b.lastJobDuration RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossNodesGreaterThan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration > b.lastJobDuration RETURN COUNT(*) ---- 1 6 --NAME IntervalGreaterThanComparison --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE b.lastJobDuration > interval('2 years 18 months 3 days') RETURN COUNT(*) +-LOG IntervalGreaterThanComparison +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE b.lastJobDuration > interval('2 years 18 months 3 days') RETURN COUNT(*) -ENUMERATE ---- 1 7 --NAME IntervalLessThanComparison --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE e1.validInterval < interval('3 years 5 months') RETURN COUNT(*) +-LOG IntervalLessThanComparison +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE e1.validInterval < interval('3 years 5 months') RETURN COUNT(*) -ENUMERATE ---- 1 10 --NAME StructuredIntervalComparisonAcrossNodesEquality --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration = b.lastJobDuration RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossNodesEquality +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration = b.lastJobDuration RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME StructuredIntervalComparisonAcrossNodesGreaterThanOrEqualTo --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration >= b.lastJobDuration RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossNodesGreaterThanOrEqualTo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration >= b.lastJobDuration RETURN COUNT(*) -ENUMERATE ---- 1 8 --NAME StructuredIntervalComparisonAcrossEdges --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE e1.validInterval = e2.validInterval AND id(a) <> id(c) RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossEdges +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE e1.validInterval = e2.validInterval AND id(a) <> id(c) RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME StructuredIntervalComparisonAcrossEdgeAndNode --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration > e1.validInterval RETURN COUNT(*) +-LOG StructuredIntervalComparisonAcrossEdgeAndNode +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.lastJobDuration > e1.validInterval RETURN COUNT(*) -ENUMERATE ---- 1 9 diff --git a/test/test_files/tinysnb/function/list.test b/test/test_files/tinysnb/function/list.test index 69c4eaae2c..1d70f46aa9 100644 --- a/test/test_files/tinysnb/function/list.test +++ b/test/test_files/tinysnb/function/list.test @@ -5,8 +5,8 @@ -CASE FunctionList --NAME NodeLISTStructuredPropertiesTest --QUERY MATCH (a:person) RETURN a.workedHours, a.usedNames, a.courseScoresPerTerm +-LOG NodeLISTStructuredPropertiesTest +-STATEMENT MATCH (a:person) RETURN a.workedHours, a.usedNames, a.courseScoresPerTerm ---- 8 [1,9]|[Wolfeschlegelstein,Daniel]|[[7,4],[8,8],[9]] [10,11,12,3,4,5,6,7]|[Ad,De,Hi,Kye,Orlan]|[[7],[10],[6,7]] @@ -17,8 +17,8 @@ [3,4,5,6,7]|[Fesdwe]|[[8]] [4,5]|[Carmen,Fred]|[[8,10]] --NAME RelLISTPropertyTest --QUERY MATCH (a:person)-[e:knows]->(b:person) RETURN e.comments +-LOG RelLISTPropertyTest +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) RETURN e.comments ---- 14 [rnme,m8sihsdnf2990nfiwf] [njnojppo9u0jkmf,fjiojioh9h9h89hph] @@ -35,8 +35,8 @@ [ahu2333333333333,12weeeeeeeeeeeeeeeeee] [peweeeeeeeeeeeeeeeee,kowje9w0eweeeeeeeee] --NAME ListCreate1 --QUERY MATCH (a:person) RETURN [a.age + 1, a.age * 2], [a.eyeSight], [a.isStudent AND a.isWorker], [a.birthdate], [a.registerTime], [a.lastJobDuration] +-LOG ListCreate1 +-STATEMENT MATCH (a:person) RETURN [a.age + 1, a.age * 2], [a.eyeSight], [a.isStudent AND a.isWorker], [a.birthdate], [a.registerTime], [a.lastJobDuration] ---- 8 [21,40]|[4.700000]|[False]|[1980-10-26]|[1976-12-23 11:21:42]|[48:24:11] [21,40]|[4.800000]|[False]|[1950-07-23]|[2031-11-30 12:25:30]|[10 years 5 months 13:00:00.000024] @@ -49,8 +49,8 @@ --NAME ListExtractListOfINT64 --QUERY MATCH (a:person) RETURN list_extract(a.workedHours, 1) +-LOG ListExtractListOfINT64 +-STATEMENT MATCH (a:person) RETURN list_extract(a.workedHours, 1) ---- 8 10 12 @@ -61,22 +61,22 @@ 1 10 --NAME ListExtractListOfINT32 --QUERY MATCH (m:movies) RETURN list_extract([m.length], 1) +-LOG ListExtractListOfINT32 +-STATEMENT MATCH (m:movies) RETURN list_extract([m.length], 1) ---- 3 126 2544 298 --NAME ListExtractListOfINT16 --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN list_extract([e.length], 1) +-LOG ListExtractListOfINT16 +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN list_extract([e.length], 1) ---- 3 5 55 22 --NAME ListExtractListOfFloat --QUERY MATCH (p:person) RETURN list_extract([p.height], 1) +-LOG ListExtractListOfFloat +-STATEMENT MATCH (p:person) RETURN list_extract([p.height], 1) ---- 8 1.731000 0.990000 @@ -87,8 +87,8 @@ 1.600000 1.323000 --NAME ListExtractListOfStrings --QUERY MATCH (a:person) RETURN list_extract(a.usedNames, 1) +-LOG ListExtractListOfStrings +-STATEMENT MATCH (a:person) RETURN list_extract(a.usedNames, 1) ---- 8 Aida Bobby @@ -99,8 +99,8 @@ Fesdwe Grad Ad --NAME ListExtractLiteralListOfBools --QUERY MATCH (a:person) RETURN list_extract([true, false, true, false], a.gender) +-LOG ListExtractLiteralListOfBools +-STATEMENT MATCH (a:person) RETURN list_extract([true, false, true, false], a.gender) ---- 8 True False @@ -111,8 +111,8 @@ False False False --NAME ListExtractLiteralListOfDoubles --QUERY MATCH (a:person) RETURN list_extract([4.351, 6.13, 94.2, 3.1], a.gender) +-LOG ListExtractLiteralListOfDoubles +-STATEMENT MATCH (a:person) RETURN list_extract([4.351, 6.13, 94.2, 3.1], a.gender) ---- 8 4.351000 6.130000 @@ -123,8 +123,8 @@ False 6.130000 6.130000 --NAME ListExtractLiteralListOfDate --QUERY MATCH (a:person) RETURN list_extract([date('1992-05-03'), a.birthdate], a.gender) +-LOG ListExtractLiteralListOfDate +-STATEMENT MATCH (a:person) RETURN list_extract([date('1992-05-03'), a.birthdate], a.gender) ---- 8 1992-05-03 1900-01-01 @@ -135,8 +135,8 @@ False 1980-10-26 1990-11-27 --NAME ListExtractLiteralListOfTimestamp --QUERY MATCH (a:person) RETURN list_extract([timestamp('1992-05-03 11:13:25'), a.registerTime], a.gender) +-LOG ListExtractLiteralListOfTimestamp +-STATEMENT MATCH (a:person) RETURN list_extract([timestamp('1992-05-03 11:13:25'), a.registerTime], a.gender) ---- 8 1992-05-03 11:13:25 2008-11-03 15:25:30.000526 @@ -147,8 +147,8 @@ False 1976-12-23 04:41:42 2023-02-21 13:25:30 --NAME ListExtractLiteralListOfInterval --QUERY MATCH (a:person) RETURN list_extract([interval('2 hours 3 days 20 minutes'), a.lastJobDuration], a.gender) +-LOG ListExtractLiteralListOfInterval +-STATEMENT MATCH (a:person) RETURN list_extract([interval('2 hours 3 days 20 minutes'), a.lastJobDuration], a.gender) ---- 8 3 days 02:20:00 10 years 5 months 13:00:00.000024 @@ -159,8 +159,8 @@ False 10 years 5 months 13:00:00.000024 3 years 2 days 13:02:00 --NAME ListExtractStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN list_element(a.courseScoresPerTerm, 1) +-LOG ListExtractStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN list_element(a.courseScoresPerTerm, 1) ---- 8 [10,8] [8,9] @@ -171,8 +171,8 @@ False [10] [7] --NAME ListExtractStructuredList --QUERY MATCH (a:person) RETURN a.usedNames[1] +-LOG ListExtractStructuredList +-STATEMENT MATCH (a:person) RETURN a.usedNames[1] ---- 8 Aida Bobby @@ -183,8 +183,8 @@ Fesdwe Grad Ad --NAME ListExtractDoubleExtract --QUERY MATCH (a:person) RETURN a.courseScoresPerTerm[1][1] +-LOG ListExtractDoubleExtract +-STATEMENT MATCH (a:person) RETURN a.courseScoresPerTerm[1][1] ---- 8 10 8 @@ -195,8 +195,8 @@ Ad 10 7 --NAME ListExtractInternalIDTest --QUERY MATCH (a:person) RETURN list_extract([id(a)], 1) +-LOG ListExtractInternalIDTest +-STATEMENT MATCH (a:person) RETURN list_extract([id(a)], 1) ---- 8 0:0 0:1 @@ -207,8 +207,8 @@ Ad 0:6 0:7 --NAME ListExtractSliceListOfStrings --QUERY MATCH (a:person) RETURN a.usedNames[1][3:7] +-LOG ListExtractSliceListOfStrings +-STATEMENT MATCH (a:person) RETURN a.usedNames[1][3:7] ---- 8 da bby @@ -220,8 +220,8 @@ ad --NAME ListLenStructuredListOfInts --QUERY MATCH (a:person) RETURN len(a.workedHours) +-LOG ListLenStructuredListOfInts +-STATEMENT MATCH (a:person) RETURN len(a.workedHours) ---- 8 2 2 @@ -232,8 +232,8 @@ ad 1 8 --NAME ListConcatStructuredListOfInts --QUERY MATCH (a:person) RETURN list_concat(a.workedHours, [a.age, a.gender]) +-LOG ListConcatStructuredListOfInts +-STATEMENT MATCH (a:person) RETURN list_concat(a.workedHours, [a.age, a.gender]) ---- 8 [10,5,35,1] [12,8,30,2] @@ -244,8 +244,8 @@ ad [1,40,2] [10,11,12,3,4,5,6,7,83,2] --NAME ListConcatIntLiteral --QUERY MATCH (a:person) RETURN list_cat(a.workedHours, [3]) +-LOG ListConcatIntLiteral +-STATEMENT MATCH (a:person) RETURN list_cat(a.workedHours, [3]) ---- 8 [10,5,3] [12,8,3] @@ -256,8 +256,8 @@ ad [1,3] [10,11,12,3,4,5,6,7,3] --NAME ListConcatStructuredListOfStrings --QUERY MATCH (a:person) RETURN array_concat(a.usedNames, [a.fName]) +-LOG ListConcatStructuredListOfStrings +-STATEMENT MATCH (a:person) RETURN array_concat(a.usedNames, [a.fName]) ---- 8 [Aida,Alice] [Bobby,Bob] @@ -268,8 +268,8 @@ ad [Grad,Greg] [Ad,De,Hi,Kye,Orlan,Hubert Blaine Wolfeschlegelsteinhausenbergerdorff] --NAME ListConcatStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN array_cat(a.courseScoresPerTerm, [[a.age, a.age], [a.gender]]) +-LOG ListConcatStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN array_cat(a.courseScoresPerTerm, [[a.age, a.age], [a.gender]]) ---- 8 [[10,8],[6,7,8],[35,35],[1]] [[8,9],[9,10],[30,30],[2]] @@ -280,8 +280,8 @@ ad [[10],[40,40],[2]] [[7],[10],[6,7],[83,83],[2]] --NAME ListAppendListOfINT64 --QUERY MATCH (a:person) RETURN list_append(a.workedHours, a.age) +-LOG ListAppendListOfINT64 +-STATEMENT MATCH (a:person) RETURN list_append(a.workedHours, a.age) ---- 8 [10,5,35] [12,8,30] @@ -292,22 +292,22 @@ ad [1,40] [10,11,12,3,4,5,6,7,83] --NAME ListAppendListOfINT32 --QUERY MATCH (m:movies) RETURN list_append([m.length], m.length) +-LOG ListAppendListOfINT32 +-STATEMENT MATCH (m:movies) RETURN list_append([m.length], m.length) ---- 3 [126,126] [2544,2544] [298,298] --NAME ListAppendListOfINT16 --QUERY MATCH (:person)-[s:studyAt]->(:organisation) RETURN list_append([s.length], s.length) +-LOG ListAppendListOfINT16 +-STATEMENT MATCH (:person)-[s:studyAt]->(:organisation) RETURN list_append([s.length], s.length) ---- 3 [5,5] [55,55] [22,22] --NAME ListAppendListOfFloat --QUERY MATCH (p:person) RETURN list_append([p.height], p.height) +-LOG ListAppendListOfFloat +-STATEMENT MATCH (p:person) RETURN list_append([p.height], p.height) ---- 8 [1.731000,1.731000] [0.990000,0.990000] @@ -318,8 +318,8 @@ ad [1.600000,1.600000] [1.323000,1.323000] --NAME ListAppendStructuredListOfStrings --QUERY MATCH (a:person) RETURN array_append(a.usedNames, a.fName) +-LOG ListAppendStructuredListOfStrings +-STATEMENT MATCH (a:person) RETURN array_append(a.usedNames, a.fName) ---- 8 [Aida,Alice] [Bobby,Bob] @@ -330,8 +330,8 @@ ad [Grad,Greg] [Ad,De,Hi,Kye,Orlan,Hubert Blaine Wolfeschlegelsteinhausenbergerdorff] --NAME ListAppendStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN array_push_back(a.courseScoresPerTerm, [a.age, a.age]) +-LOG ListAppendStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN array_push_back(a.courseScoresPerTerm, [a.age, a.age]) ---- 8 [[10,8],[6,7,8],[35,35]] [[8,9],[9,10],[30,30]] @@ -342,8 +342,8 @@ ad [[10],[40,40]] [[7],[10],[6,7],[83,83]] --NAME ListAppendStructuredListOfBools --QUERY MATCH (a:person) RETURN list_append([a.isStudent, a.isWorker], a.isStudent) +-LOG ListAppendStructuredListOfBools +-STATEMENT MATCH (a:person) RETURN list_append([a.isStudent, a.isWorker], a.isStudent) ---- 8 [True,False,True] [True,False,True] @@ -354,8 +354,8 @@ ad [False,False,False] [False,True,False] --NAME ListAppendStructuredListOfDoubles --QUERY MATCH (a:person) RETURN list_append([a.eyeSight], a.eyeSight) +-LOG ListAppendStructuredListOfDoubles +-STATEMENT MATCH (a:person) RETURN list_append([a.eyeSight], a.eyeSight) ---- 8 [5.000000,5.000000] [5.100000,5.100000] @@ -366,8 +366,8 @@ ad [4.900000,4.900000] [4.900000,4.900000] --NAME ListAppendStructuredListOfDates --QUERY MATCH (a:person) RETURN list_append([a.birthdate], a.birthdate) +-LOG ListAppendStructuredListOfDates +-STATEMENT MATCH (a:person) RETURN list_append([a.birthdate], a.birthdate) ---- 8 [1900-01-01,1900-01-01] [1900-01-01,1900-01-01] @@ -378,8 +378,8 @@ ad [1980-10-26,1980-10-26] [1990-11-27,1990-11-27] --NAME ListAppendStructuredListOfTimestamps --QUERY MATCH (a:person) RETURN list_append([a.registerTime], a.registerTime) +-LOG ListAppendStructuredListOfTimestamps +-STATEMENT MATCH (a:person) RETURN list_append([a.registerTime], a.registerTime) ---- 8 [2011-08-20 11:25:30,2011-08-20 11:25:30] [2008-11-03 15:25:30.000526,2008-11-03 15:25:30.000526] @@ -390,8 +390,8 @@ ad [1976-12-23 04:41:42,1976-12-23 04:41:42] [2023-02-21 13:25:30,2023-02-21 13:25:30] --NAME ListAppendStructuredListOfIntervals --QUERY MATCH (a:person) RETURN list_append([a.lastJobDuration], a.lastJobDuration) +-LOG ListAppendStructuredListOfIntervals +-STATEMENT MATCH (a:person) RETURN list_append([a.lastJobDuration], a.lastJobDuration) ---- 8 [3 years 2 days 13:02:00,3 years 2 days 13:02:00] [10 years 5 months 13:00:00.000024,10 years 5 months 13:00:00.000024] @@ -402,8 +402,8 @@ ad [10 years 5 months 13:00:00.000024,10 years 5 months 13:00:00.000024] [3 years 2 days 13:02:00,3 years 2 days 13:02:00] --NAME ListAppendInternalID --QUERY MATCH (a:person) RETURN list_append([id(a)], id(a)) +-LOG ListAppendInternalID +-STATEMENT MATCH (a:person) RETURN list_append([id(a)], id(a)) ---- 8 [0:0,0:0] [0:1,0:1] @@ -414,8 +414,8 @@ ad [0:6,0:6] [0:7,0:7] --NAME ListPrependListOfINT64 --QUERY MATCH (a:person) RETURN list_prepend(a.age, a.workedHours) +-LOG ListPrependListOfINT64 +-STATEMENT MATCH (a:person) RETURN list_prepend(a.age, a.workedHours) ---- 8 [35,10,5] [30,12,8] @@ -426,22 +426,22 @@ ad [40,1] [83,10,11,12,3,4,5,6,7] --NAME ListPrependListOfINT32 --QUERY MATCH (m:movies) RETURN list_prepend(m.length, [m.length]) +-LOG ListPrependListOfINT32 +-STATEMENT MATCH (m:movies) RETURN list_prepend(m.length, [m.length]) ---- 3 [126,126] [2544,2544] [298,298] --NAME ListPrependListOfINT16 --QUERY MATCH (:person)-[s:studyAt]->(:organisation) RETURN list_prepend(s.length, [s.length]) +-LOG ListPrependListOfINT16 +-STATEMENT MATCH (:person)-[s:studyAt]->(:organisation) RETURN list_prepend(s.length, [s.length]) ---- 3 [5,5] [55,55] [22,22] --NAME ListPrependListOfFloat --QUERY MATCH (a:person) RETURN list_prepend(a.height, [a.height]) +-LOG ListPrependListOfFloat +-STATEMENT MATCH (a:person) RETURN list_prepend(a.height, [a.height]) ---- 8 [1.731000,1.731000] [0.990000,0.990000] @@ -452,8 +452,8 @@ ad [1.600000,1.600000] [1.323000,1.323000] --NAME ListPrependStructuredListOfStrings --QUERY MATCH (a:person) RETURN array_prepend(a.fName, a.usedNames) +-LOG ListPrependStructuredListOfStrings +-STATEMENT MATCH (a:person) RETURN array_prepend(a.fName, a.usedNames) ---- 8 [Alice,Aida] [Bob,Bobby] @@ -464,8 +464,8 @@ ad [Greg,Grad] [Hubert Blaine Wolfeschlegelsteinhausenbergerdorff,Ad,De,Hi,Kye,Orlan] --NAME ListPrependStructuredListOfBools --QUERY MATCH (a:person) RETURN list_prepend(a.isStudent, [a.isStudent, a.isWorker]) +-LOG ListPrependStructuredListOfBools +-STATEMENT MATCH (a:person) RETURN list_prepend(a.isStudent, [a.isStudent, a.isWorker]) ---- 8 [True,True,False] [True,True,False] @@ -476,8 +476,8 @@ ad [False,False,False] [False,False,True] --NAME ListPrependStructuredListOfDoubles --QUERY MATCH (a:person) RETURN list_prepend(a.eyeSight, [a.eyeSight]) +-LOG ListPrependStructuredListOfDoubles +-STATEMENT MATCH (a:person) RETURN list_prepend(a.eyeSight, [a.eyeSight]) ---- 8 [5.000000,5.000000] [5.100000,5.100000] @@ -488,8 +488,8 @@ ad [4.900000,4.900000] [4.900000,4.900000] --NAME ListPrependStructuredListOfDates --QUERY MATCH (a:person) RETURN list_prepend(a.birthdate, [a.birthdate]) +-LOG ListPrependStructuredListOfDates +-STATEMENT MATCH (a:person) RETURN list_prepend(a.birthdate, [a.birthdate]) ---- 8 [1900-01-01,1900-01-01] [1900-01-01,1900-01-01] @@ -500,8 +500,8 @@ ad [1980-10-26,1980-10-26] [1990-11-27,1990-11-27] --NAME ListPrependStructuredListOfTimestamps --QUERY MATCH (a:person) RETURN list_prepend(a.registerTime, [a.registerTime]) +-LOG ListPrependStructuredListOfTimestamps +-STATEMENT MATCH (a:person) RETURN list_prepend(a.registerTime, [a.registerTime]) ---- 8 [2011-08-20 11:25:30,2011-08-20 11:25:30] [2008-11-03 15:25:30.000526,2008-11-03 15:25:30.000526] @@ -512,8 +512,8 @@ ad [1976-12-23 04:41:42,1976-12-23 04:41:42] [2023-02-21 13:25:30,2023-02-21 13:25:30] --NAME ListPrependStructuredListOfIntervals --QUERY MATCH (a:person) RETURN list_prepend(a.lastJobDuration, [a.lastJobDuration]) +-LOG ListPrependStructuredListOfIntervals +-STATEMENT MATCH (a:person) RETURN list_prepend(a.lastJobDuration, [a.lastJobDuration]) ---- 8 [3 years 2 days 13:02:00,3 years 2 days 13:02:00] [10 years 5 months 13:00:00.000024,10 years 5 months 13:00:00.000024] @@ -524,8 +524,8 @@ ad [10 years 5 months 13:00:00.000024,10 years 5 months 13:00:00.000024] [3 years 2 days 13:02:00,3 years 2 days 13:02:00] --NAME ListPrependStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN array_push_front([a.age, a.age], a.courseScoresPerTerm) +-LOG ListPrependStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN array_push_front([a.age, a.age], a.courseScoresPerTerm) ---- 8 [[35,35],[10,8],[6,7,8]] [[30,30],[8,9],[9,10]] @@ -536,8 +536,8 @@ ad [[40,40],[10]] [[83,83],[7],[10],[6,7]] --NAME ListPrependInternalID --QUERY MATCH (a:person) RETURN list_prepend(id(a), [id(a)]) +-LOG ListPrependInternalID +-STATEMENT MATCH (a:person) RETURN list_prepend(id(a), [id(a)]) ---- 8 [0:0,0:0] [0:1,0:1] @@ -548,8 +548,8 @@ ad [0:6,0:6] [0:7,0:7] --NAME ListPositionStructuredListOfInts --QUERY MATCH (a:person) RETURN list_position(a.workedHours, 5) +-LOG ListPositionStructuredListOfInts +-STATEMENT MATCH (a:person) RETURN list_position(a.workedHours, 5) ---- 8 2 0 @@ -560,8 +560,8 @@ ad 0 6 --NAME ListPositionStructuredListOfStrings --QUERY MATCH (a:person) RETURN array_position(a.usedNames, "Grad") +-LOG ListPositionStructuredListOfStrings +-STATEMENT MATCH (a:person) RETURN array_position(a.usedNames, "Grad") ---- 8 0 0 @@ -572,15 +572,15 @@ ad 1 0 --NAME ListPositionLiteralListOfInts --QUERY MATCH (o:organisation) RETURN list_indexof([7, 4, 100, 6, 1, 10], o.ID) +-LOG ListPositionLiteralListOfInts +-STATEMENT MATCH (o:organisation) RETURN list_indexof([7, 4, 100, 6, 1, 10], o.ID) ---- 3 5 2 4 --NAME ListPositionStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN array_indexof(a.courseScoresPerTerm, [8]) +-LOG ListPositionStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN array_indexof(a.courseScoresPerTerm, [8]) ---- 8 0 0 @@ -591,8 +591,8 @@ ad 0 0 --NAME ListPositionLiteralListOfListOfBools --QUERY MATCH (a:person) RETURN array_indexof([[true, false], [false, true], [false, false]], [a.isStudent, a.isWorker]) +-LOG ListPositionLiteralListOfListOfBools +-STATEMENT MATCH (a:person) RETURN array_indexof([[true, false], [false, true], [false, false]], [a.isStudent, a.isWorker]) ---- 8 1 1 @@ -603,8 +603,8 @@ ad 3 2 --NAME ListPositionLiteralListOfListOfDoubles --QUERY MATCH (a:person) RETURN array_indexof([[5.0], [4.9], [4.8]], [a.eyeSight]) +-LOG ListPositionLiteralListOfListOfDoubles +-STATEMENT MATCH (a:person) RETURN array_indexof([[5.0], [4.9], [4.8]], [a.eyeSight]) ---- 8 1 0 @@ -615,8 +615,8 @@ ad 2 2 --NAME ListPositionLiteralListOfListOfStrings --QUERY MATCH (a:person) RETURN array_indexof([['Aida'], ['Wolfeschlegelstein', 'Daniel'], ['Grad']], a.usedNames) +-LOG ListPositionLiteralListOfListOfStrings +-STATEMENT MATCH (a:person) RETURN array_indexof([['Aida'], ['Wolfeschlegelstein', 'Daniel'], ['Grad']], a.usedNames) ---- 8 1 0 @@ -627,8 +627,8 @@ ad 3 0 --NAME ListPositionLiteralListOfListOfDates --QUERY MATCH (a:person) RETURN array_indexof([[date('1900-01-01')], [date('1900-01-01'), date('1900-05-01')], [date('1980-10-26')]], [a.birthdate]) +-LOG ListPositionLiteralListOfListOfDates +-STATEMENT MATCH (a:person) RETURN array_indexof([[date('1900-01-01')], [date('1900-01-01'), date('1900-05-01')], [date('1980-10-26')]], [a.birthdate]) ---- 8 1 1 @@ -639,8 +639,8 @@ ad 3 0 --NAME ListPositionLiteralListOfListOfTimestamps --QUERY MATCH (a:person) RETURN array_indexof([[timestamp('2011-08-20 11:25:30')], [timestamp('1976-12-23 11:21:42'), timestamp('1972-07-31 13:22:30.678559')], [timestamp('2023-02-21 13:25:30')]], [a.registerTime]) +-LOG ListPositionLiteralListOfListOfTimestamps +-STATEMENT MATCH (a:person) RETURN array_indexof([[timestamp('2011-08-20 11:25:30')], [timestamp('1976-12-23 11:21:42'), timestamp('1972-07-31 13:22:30.678559')], [timestamp('2023-02-21 13:25:30')]], [a.registerTime]) ---- 8 1 0 @@ -651,8 +651,8 @@ ad 0 3 --NAME ListPositionLiteralListOfListOfIntervals --QUERY MATCH (a:person) RETURN array_indexof([[interval('3 years 2 days 13 hours 2 minutes')], [interval('18 minutes 24 milliseconds')], [interval('10 years 5 months 13 hours 24 us')]], [a.lastJobDuration]) +-LOG ListPositionLiteralListOfListOfIntervals +-STATEMENT MATCH (a:person) RETURN array_indexof([[interval('3 years 2 days 13 hours 2 minutes')], [interval('18 minutes 24 milliseconds')], [interval('10 years 5 months 13 hours 24 us')]], [a.lastJobDuration]) ---- 8 1 3 @@ -663,8 +663,8 @@ ad 3 1 --NAME ListPositionLiteralListOfListOfListOfIntervals --QUERY MATCH (a:person) RETURN array_indexof([[[7,4],[8,8],[9]]], a.courseScoresPerTerm) +-LOG ListPositionLiteralListOfListOfListOfIntervals +-STATEMENT MATCH (a:person) RETURN array_indexof([[[7,4],[8,8],[9]]], a.courseScoresPerTerm) ---- 8 0 0 @@ -675,8 +675,8 @@ ad 0 0 --NAME ListPositionUnmatchedDataType --QUERY MATCH (a:person) RETURN array_indexof(a.workedHours, a.registerTime) +-LOG ListPositionUnmatchedDataType +-STATEMENT MATCH (a:person) RETURN array_indexof(a.workedHours, a.registerTime) ---- 8 0 0 @@ -687,8 +687,8 @@ ad 0 0 --NAME ListContainsStructuredListOfInts --QUERY MATCH (a:person) RETURN list_contains(a.workedHours, 5) +-LOG ListContainsStructuredListOfInts +-STATEMENT MATCH (a:person) RETURN list_contains(a.workedHours, 5) ---- 8 True False @@ -699,14 +699,14 @@ True False True --NAME ListContainsSelect --QUERY MATCH (a:person) WHERE list_contains(a.courseScoresPerTerm, [8]) RETURN a.ID +-LOG ListContainsSelect +-STATEMENT MATCH (a:person) WHERE list_contains(a.courseScoresPerTerm, [8]) RETURN a.ID ---- 2 7 8 --NAME ListContainsStructuredListOfStrings --QUERY MATCH (a:person) RETURN list_has(a.usedNames, "Grad") +-LOG ListContainsStructuredListOfStrings +-STATEMENT MATCH (a:person) RETURN list_has(a.usedNames, "Grad") ---- 8 False False @@ -717,8 +717,8 @@ False True False --NAME ListContainsStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN array_contains(a.courseScoresPerTerm, [8]) +-LOG ListContainsStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN array_contains(a.courseScoresPerTerm, [8]) ---- 8 False False @@ -729,22 +729,22 @@ True False False --NAME ListContainsLiteralListOfInts --QUERY MATCH (o:organisation) RETURN array_has([7,6,1], o.ID) +-LOG ListContainsLiteralListOfInts +-STATEMENT MATCH (o:organisation) RETURN array_has([7,6,1], o.ID) ---- 3 True False True --NAME ListSliceLiteralListOfInts --QUERY MATCH (o:organisation) RETURN array_slice([1,4,7,9,10,20,15,192,-5,21,3], 3, o.ID + 3) +-LOG ListSliceLiteralListOfInts +-STATEMENT MATCH (o:organisation) RETURN array_slice([1,4,7,9,10,20,15,192,-5,21,3], 3, o.ID + 3) ---- 3 [7] [7,9,10,20] [7,9,10,20,15,192] --NAME ListSliceStructuredListOfInts --QUERY MATCH (a:person) RETURN list_slice(a.workedHours, 1, 2) +-LOG ListSliceStructuredListOfInts +-STATEMENT MATCH (a:person) RETURN list_slice(a.workedHours, 1, 2) ---- 8 [10] [12] @@ -755,8 +755,8 @@ True [1] [10] --NAME ListSliceStructuredListOfListOfInts --QUERY MATCH (a:person) RETURN array_slice(a.usedNames, 1, 2) +-LOG ListSliceStructuredListOfListOfInts +-STATEMENT MATCH (a:person) RETURN array_slice(a.usedNames, 1, 2) ---- 8 [Aida] [Bobby] @@ -767,8 +767,8 @@ True [Grad] [Ad] --NAME ListSliceStructuredListOfStrings --QUERY MATCH (a:person) RETURN list_slice(a.courseScoresPerTerm, 1, 2) +-LOG ListSliceStructuredListOfStrings +-STATEMENT MATCH (a:person) RETURN list_slice(a.courseScoresPerTerm, 1, 2) ---- 8 [[10,8]] [[8,9]] @@ -779,15 +779,15 @@ True [[10]] [[7]] --NAME ListSliceStructuredString --QUERY MATCH (o:organisation) RETURN o.name[1:4] +-LOG ListSliceStructuredString +-STATEMENT MATCH (o:organisation) RETURN o.name[1:4] ---- 3 ABFs CsWo DEsW --NAME ListSliceStructuredStringRight --QUERY MATCH (a:person) RETURN a.fName[4:] +-LOG ListSliceStructuredStringRight +-STATEMENT MATCH (a:person) RETURN a.fName[4:] ---- 8 ce @@ -798,8 +798,8 @@ ooq g ert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME ListSliceStructuredStringLeft --QUERY MATCH (a:person) RETURN a.fName[:5] +-LOG ListSliceStructuredStringLeft +-STATEMENT MATCH (a:person) RETURN a.fName[:5] ---- 8 Alice Bob @@ -810,15 +810,15 @@ Faroo Greg Huber --NAME ListSliceStructuredStringNull --QUERY MATCH (o:organisation) RETURN o.name[:] +-LOG ListSliceStructuredStringNull +-STATEMENT MATCH (o:organisation) RETURN o.name[:] ---- 3 ABFsUni CsWork DEsWork --NAME ListSliceStructuredStringDoubleSlice --QUERY MATCH (a:person) RETURN a.fName[3:][2:4] +-LOG ListSliceStructuredStringDoubleSlice +-STATEMENT MATCH (a:person) RETURN a.fName[3:][2:4] ---- 8 ce @@ -829,233 +829,233 @@ ooq g ert --NAME ListCreateFromLiteral1 --QUERY RETURN [[100,200],[200,300],[300,400]] +-LOG ListCreateFromLiteral1 +-STATEMENT RETURN [[100,200],[200,300],[300,400]] ---- 1 [[100,200],[200,300],[300,400]] --NAME ListCreateFromLiteral2 --QUERY RETURN array_contains([[100,200],[200,300],[300,400]], [100,200]) +-LOG ListCreateFromLiteral2 +-STATEMENT RETURN array_contains([[100,200],[200,300],[300,400]], [100,200]) ---- 1 True --NAME ListCreateFromUnion --QUERY RETURN [UNION_VALUE(a := 3), UNION_VALUE(b := 7), UNION_VALUE(a := 11)] +-LOG ListCreateFromUnion +-STATEMENT RETURN [UNION_VALUE(a := 3), UNION_VALUE(b := 7), UNION_VALUE(a := 11)] ---- 1 [3,7,11] --NAME ListSumSeq1 --QUERY Return list_sum([1, 2, 3, NULL]); +-LOG ListSumSeq1 +-STATEMENT Return list_sum([1, 2, 3, NULL]); ---- 1 6 --NAME ListSumSeq2 --QUERY Return list_sum([1.1, 2.2, 3.3, NULL]); +-LOG ListSumSeq2 +-STATEMENT Return list_sum([1.1, 2.2, 3.3, NULL]); ---- 1 6.600000 --NAME ListSortInt16Asc --QUERY Return list_sort([to_int16(2), to_int16(3), to_int16(1), NULL, NULL]); +-LOG ListSortInt16Asc +-STATEMENT Return list_sort([to_int16(2), to_int16(3), to_int16(1), NULL, NULL]); ---- 1 [,,1,2,3] --NAME ListSortInt16Desc --QUERY Return list_sort([to_int16(2), to_int16(3), to_int16(1), to_int16(5), NULL], 'DESC'); +-LOG ListSortInt16Desc +-STATEMENT Return list_sort([to_int16(2), to_int16(3), to_int16(1), to_int16(5), NULL], 'DESC'); ---- 1 [,5,3,2,1] --NAME ListSortInt16DescWithNullsLast --QUERY Return list_sort([to_int16(2), to_int16(3), to_int16(1), NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortInt16DescWithNullsLast +-STATEMENT Return list_sort([to_int16(2), to_int16(3), to_int16(1), NULL], 'DESC', 'NULLS LAST'); ---- 1 [3,2,1,] --NAME ListSortInt32Asc --QUERY Return list_sort([to_int32(2), to_int32(3), to_int32(1), NULL, NULL]); +-LOG ListSortInt32Asc +-STATEMENT Return list_sort([to_int32(2), to_int32(3), to_int32(1), NULL, NULL]); ---- 1 [,,1,2,3] --NAME ListSortInt32Desc --QUERY Return list_sort([to_int32(2), to_int32(3), to_int32(1), to_int32(5), NULL], 'DESC'); +-LOG ListSortInt32Desc +-STATEMENT Return list_sort([to_int32(2), to_int32(3), to_int32(1), to_int32(5), NULL], 'DESC'); ---- 1 [,5,3,2,1] --NAME ListSortInt32DescWithNullsLast --QUERY Return list_sort([to_int32(2), to_int32(3), to_int32(1), NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortInt32DescWithNullsLast +-STATEMENT Return list_sort([to_int32(2), to_int32(3), to_int32(1), NULL], 'DESC', 'NULLS LAST'); ---- 1 [3,2,1,] --NAME ListSortInt64Asc --QUERY Return list_sort([2, 3, 1, NULL, NULL]); +-LOG ListSortInt64Asc +-STATEMENT Return list_sort([2, 3, 1, NULL, NULL]); ---- 1 [,,1,2,3] --NAME ListSortInt64Desc --QUERY Return list_sort([2, 3, 1, 5, NULL], 'DESC'); +-LOG ListSortInt64Desc +-STATEMENT Return list_sort([2, 3, 1, 5, NULL], 'DESC'); ---- 1 [,5,3,2,1] --NAME ListSortInt64DescWithNullsLast --QUERY Return list_sort([2, 3, 1, NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortInt64DescWithNullsLast +-STATEMENT Return list_sort([2, 3, 1, NULL], 'DESC', 'NULLS LAST'); ---- 1 [3,2,1,] --NAME ListSortFloatAsc --QUERY Return list_sort([to_float(1.1), to_float(2.3), to_float(4.5), NULL]); +-LOG ListSortFloatAsc +-STATEMENT Return list_sort([to_float(1.1), to_float(2.3), to_float(4.5), NULL]); ---- 1 [,1.100000,2.300000,4.500000] --NAME ListSortFloatDesc --QUERY Return list_sort([to_float(2.1), to_float(3.2), to_float(1.33), to_float(5.44), NULL], 'DESC'); +-LOG ListSortFloatDesc +-STATEMENT Return list_sort([to_float(2.1), to_float(3.2), to_float(1.33), to_float(5.44), NULL], 'DESC'); ---- 1 [,5.440000,3.200000,2.100000,1.330000] --NAME ListSortFloatDescWithNullsLast --QUERY Return list_sort([to_float(2.1), to_float(3.2), to_float(1.11), NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortFloatDescWithNullsLast +-STATEMENT Return list_sort([to_float(2.1), to_float(3.2), to_float(1.11), NULL], 'DESC', 'NULLS LAST'); ---- 1 [3.200000,2.100000,1.110000,] --NAME ListSortStringDesc --QUERY Return list_sort(['sss', 'sssss', 'abs', NULL], 'DESC'); +-LOG ListSortStringDesc +-STATEMENT Return list_sort(['sss', 'sssss', 'abs', NULL], 'DESC'); ---- 1 [,sssss,sss,abs] --NAME ListSortStringAscWithNullsLast --QUERY Return list_sort(['sss', 'sssss', 'abs', NULL], 'ASC', 'NULLS LAST'); +-LOG ListSortStringAscWithNullsLast +-STATEMENT Return list_sort(['sss', 'sssss', 'abs', NULL], 'ASC', 'NULLS LAST'); ---- 1 [abs,sss,sssss,] --NAME ListSortDoubleAscWithNullsLast --QUERY Return list_sort([1.1, 2.3, 4.5, NULL], 'ASC', 'NULLS LAST'); +-LOG ListSortDoubleAscWithNullsLast +-STATEMENT Return list_sort([1.1, 2.3, 4.5, NULL], 'ASC', 'NULLS LAST'); ---- 1 [1.100000,2.300000,4.500000,] --NAME ListSortDateSeq1 --QUERY Return list_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL]); +-LOG ListSortDateSeq1 +-STATEMENT Return list_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL]); ---- 1 [,1992-05-03,1993-05-03,1994-05-03] --NAME ListSortDateSeq2 --QUERY Return list_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL], 'DESC'); +-LOG ListSortDateSeq2 +-STATEMENT Return list_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL], 'DESC'); ---- 1 [,1994-05-03,1993-05-03,1992-05-03] --NAME ListSortDateSeq3 --QUERY Return list_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortDateSeq3 +-STATEMENT Return list_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL], 'DESC', 'NULLS LAST'); ---- 1 [1994-05-03,1993-05-03,1992-05-03,] --NAME ListSortTimestampSeq1 --QUERY Return list_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); +-LOG ListSortTimestampSeq1 +-STATEMENT Return list_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); ---- 1 [,1992-05-03 11:13:25,1993-05-03 11:13:25,1994-05-03 11:13:25] --NAME ListSortTimestampSeq2 --QUERY Return list_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL], 'DESC'); +-LOG ListSortTimestampSeq2 +-STATEMENT Return list_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL], 'DESC'); ---- 1 [,1994-05-03 11:13:25,1993-05-03 11:13:25,1992-05-03 11:13:25] --NAME ListSortTimestampSeq3 --QUERY Return list_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortTimestampSeq3 +-STATEMENT Return list_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL], 'DESC', 'NULLS LAST'); ---- 1 [1994-05-03 11:13:25,1993-05-03 11:13:25,1992-05-03 11:13:25,] --NAME ListSortIntervalSeq1 --QUERY Return list_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); +-LOG ListSortIntervalSeq1 +-STATEMENT Return list_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); ---- 1 [,3 days 02:20:00,3 days 03:20:00,3 days 04:20:00] --NAME ListSortIntervalSeq2 --QUERY Return list_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL], 'DESC'); +-LOG ListSortIntervalSeq2 +-STATEMENT Return list_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL], 'DESC'); ---- 1 [,3 days 04:20:00,3 days 03:20:00,3 days 02:20:00] --NAME ListSortIntervalSeq3 --QUERY Return list_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortIntervalSeq3 +-STATEMENT Return list_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL], 'DESC', 'NULLS LAST'); ---- 1 [3 days 04:20:00,3 days 03:20:00,3 days 02:20:00,] --NAME ListSortBooleanSeq1 --QUERY Return list_sort([true, true, false, NULL]); +-LOG ListSortBooleanSeq1 +-STATEMENT Return list_sort([true, true, false, NULL]); ---- 1 [,False,True,True] --NAME ListSortBooleanSeq2 --QUERY Return list_sort([true, true, false, NULL], 'DESC'); +-LOG ListSortBooleanSeq2 +-STATEMENT Return list_sort([true, true, false, NULL], 'DESC'); ---- 1 [,True,True,False] --NAME ListSortBooleanSeq3 --QUERY Return list_sort([true, true, false, NULL], 'DESC', 'NULLS LAST'); +-LOG ListSortBooleanSeq3 +-STATEMENT Return list_sort([true, true, false, NULL], 'DESC', 'NULLS LAST'); ---- 1 [True,True,False,] --NAME ListSumInt --QUERY Return list_sum([1, 2, 3, NULL]); +-LOG ListSumInt +-STATEMENT Return list_sum([1, 2, 3, NULL]); ---- 1 6 --NAME ListSumDouble --QUERY Return list_sum([1.1, 2.2, 3.3, NULL]); +-LOG ListSumDouble +-STATEMENT Return list_sum([1.1, 2.2, 3.3, NULL]); ---- 1 6.600000 --NAME ListReverseSortInt16 --QUERY Return list_reverse_sort([to_int16(1), to_int16(1), NULL, to_int16(-3), to_int16(1), to_int16(5)]); +-LOG ListReverseSortInt16 +-STATEMENT Return list_reverse_sort([to_int16(1), to_int16(1), NULL, to_int16(-3), to_int16(1), to_int16(5)]); ---- 1 [,5,1,1,1,-3] --NAME ListReverseSortInt16WithNullsLast --QUERY Return list_reverse_sort([to_int16(1), to_int16(1), NULL, to_int16(-3), to_int16(1), to_int16(5)], 'NULLS LAST'); +-LOG ListReverseSortInt16WithNullsLast +-STATEMENT Return list_reverse_sort([to_int16(1), to_int16(1), NULL, to_int16(-3), to_int16(1), to_int16(5)], 'NULLS LAST'); ---- 1 [5,1,1,1,-3,] --NAME ListReverseSortInt32 --QUERY Return list_reverse_sort([to_int32(1), to_int32(1), NULL, to_int32(-3), to_int32(1), to_int32(5)]); +-LOG ListReverseSortInt32 +-STATEMENT Return list_reverse_sort([to_int32(1), to_int32(1), NULL, to_int32(-3), to_int32(1), to_int32(5)]); ---- 1 [,5,1,1,1,-3] --NAME ListReverseSortInt32WithNullsLast --QUERY Return list_reverse_sort([to_int32(1), to_int32(1), NULL, to_int32(-3), to_int32(1), to_int32(5)], 'NULLS LAST'); +-LOG ListReverseSortInt32WithNullsLast +-STATEMENT Return list_reverse_sort([to_int32(1), to_int32(1), NULL, to_int32(-3), to_int32(1), to_int32(5)], 'NULLS LAST'); ---- 1 [5,1,1,1,-3,] --NAME ListReverseSortInt64 --QUERY Return list_reverse_sort([2, 3, 1, 5, NULL]); +-LOG ListReverseSortInt64 +-STATEMENT Return list_reverse_sort([2, 3, 1, 5, NULL]); ---- 1 [,5,3,2,1] --NAME ListReverseSortInt64WithNullsLast --QUERY Return list_reverse_sort([2, 3, 1, 5, NULL], 'NULLS LAST'); +-LOG ListReverseSortInt64WithNullsLast +-STATEMENT Return list_reverse_sort([2, 3, 1, 5, NULL], 'NULLS LAST'); ---- 1 [5,3,2,1,] --NAME ListDistinctWithFloat --QUERY Return list_reverse_sort([to_float(1.1), to_float(1.1), NULL, to_float(3.4), to_float(1.2), to_float(5.1)]); +-LOG ListDistinctWithFloat +-STATEMENT Return list_reverse_sort([to_float(1.1), to_float(1.1), NULL, to_float(3.4), to_float(1.2), to_float(5.1)]); ---- 1 [,5.100000,3.400000,1.200000,1.100000,1.100000] --NAME ListDistinctWithFloat --QUERY Return list_reverse_sort([to_float(1.1), to_float(1.1), NULL, to_float(3.4), to_float(1.2), to_float(5.1)], 'NULLS LAST'); +-LOG ListDistinctWithFloat +-STATEMENT Return list_reverse_sort([to_float(1.1), to_float(1.1), NULL, to_float(3.4), to_float(1.2), to_float(5.1)], 'NULLS LAST'); ---- 1 [5.100000,3.400000,1.200000,1.100000,1.100000,] --NAME ListReverseSortDouble --QUERY Return list_reverse_sort([1.1, 2.3, 4.5, NULL]); +-LOG ListReverseSortDouble +-STATEMENT Return list_reverse_sort([1.1, 2.3, 4.5, NULL]); ---- 1 [,4.500000,2.300000,1.100000] --NAME ListReverseSortDoubleWithNullsLast --QUERY Return list_reverse_sort([1.1, 2.3, 4.5, NULL], 'NULLS LAST'); +-LOG ListReverseSortDoubleWithNullsLast +-STATEMENT Return list_reverse_sort([1.1, 2.3, 4.5, NULL], 'NULLS LAST'); ---- 1 [4.500000,2.300000,1.100000,] --NAME ListReverseSortStringSeq1 --QUERY Return list_reverse_sort(['this is a long string', 'this is yet another long string', 'abs', NULL]); +-LOG ListReverseSortStringSeq1 +-STATEMENT Return list_reverse_sort(['this is a long string', 'this is yet another long string', 'abs', NULL]); ---- 1 [,this is yet another long string,this is a long string,abs] --NAME ListReverseSortWithStringSeq2 --QUERY MATCH (a:person) RETURN list_reverse_sort([NULL, a.usedNames[1], 'Some val', NULL]) +-LOG ListReverseSortWithStringSeq2 +-STATEMENT MATCH (a:person) RETURN list_reverse_sort([NULL, a.usedNames[1], 'Some val', NULL]) ---- 8 [,,Some val,Ad] [,,Some val,Aida] @@ -1066,88 +1066,88 @@ True [,,Some val,Grad] [,,Wolfeschlegelstein,Some val] --NAME ListReverseSortStringWithNullsLast --QUERY Return list_reverse_sort(['sss', 'sssss', 'abs', NULL], 'NULLS LAST'); +-LOG ListReverseSortStringWithNullsLast +-STATEMENT Return list_reverse_sort(['sss', 'sssss', 'abs', NULL], 'NULLS LAST'); ---- 1 [sssss,sss,abs,] --NAME ListReverseSortDateSeq1 --QUERY Return list_reverse_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL]); +-LOG ListReverseSortDateSeq1 +-STATEMENT Return list_reverse_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL]); ---- 1 [,1994-05-03,1993-05-03,1992-05-03] --NAME ListReverseSortDateSeq2 --QUERY Return list_reverse_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL], 'NULLS LAST'); +-LOG ListReverseSortDateSeq2 +-STATEMENT Return list_reverse_sort([date('1992-05-03'), date('1993-05-03'), date('1994-05-03'), NULL], 'NULLS LAST'); ---- 1 [1994-05-03,1993-05-03,1992-05-03,] --NAME ListReverseSortTimestampSeq1 --QUERY Return list_reverse_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); +-LOG ListReverseSortTimestampSeq1 +-STATEMENT Return list_reverse_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); ---- 1 [,1994-05-03 11:13:25,1993-05-03 11:13:25,1992-05-03 11:13:25] --NAME ListReverseSortTimestampSeq2 --QUERY Return list_reverse_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL], 'NULLS LAST'); +-LOG ListReverseSortTimestampSeq2 +-STATEMENT Return list_reverse_sort([timestamp('1992-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL], 'NULLS LAST'); ---- 1 [1994-05-03 11:13:25,1993-05-03 11:13:25,1992-05-03 11:13:25,] --NAME ListReverseSortIntervalSeq1 --QUERY Return list_reverse_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); +-LOG ListReverseSortIntervalSeq1 +-STATEMENT Return list_reverse_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); ---- 1 [,3 days 04:20:00,3 days 03:20:00,3 days 02:20:00] --NAME ListReverseSortIntervalSeq2 --QUERY Return list_reverse_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL], 'NULLS LAST'); +-LOG ListReverseSortIntervalSeq2 +-STATEMENT Return list_reverse_sort([interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL], 'NULLS LAST'); ---- 1 [3 days 04:20:00,3 days 03:20:00,3 days 02:20:00,] --NAME ListReverseSortBooleanSeq1 --QUERY Return list_reverse_sort([true, true, false, NULL]); +-LOG ListReverseSortBooleanSeq1 +-STATEMENT Return list_reverse_sort([true, true, false, NULL]); ---- 1 [,True,True,False] --NAME ListReverseSortBooleanSeq2 --QUERY Return list_reverse_sort([true, true, false, NULL], 'NULLS LAST'); +-LOG ListReverseSortBooleanSeq2 +-STATEMENT Return list_reverse_sort([true, true, false, NULL], 'NULLS LAST'); ---- 1 [True,True,False,] --NAME ListDistinctWithInt16 --QUERY Return list_distinct([to_int16(1), to_int16(1), NULL, to_int16(-3), to_int16(1), to_int16(5)]); +-LOG ListDistinctWithInt16 +-STATEMENT Return list_distinct([to_int16(1), to_int16(1), NULL, to_int16(-3), to_int16(1), to_int16(5)]); ---- 1 [-3,1,5] --NAME ListDistinctWithInt32 --QUERY Return list_distinct([to_int32(1), to_int32(1), NULL, to_int32(-3), to_int32(1), to_int32(5)]); +-LOG ListDistinctWithInt32 +-STATEMENT Return list_distinct([to_int32(1), to_int32(1), NULL, to_int32(-3), to_int32(1), to_int32(5)]); ---- 1 [-3,1,5] --NAME ListDistinctWithInt64 --QUERY Return list_distinct([1, 1, NULL, -3, 1, 5]); +-LOG ListDistinctWithInt64 +-STATEMENT Return list_distinct([1, 1, NULL, -3, 1, 5]); ---- 1 [-3,1,5] --NAME ListDistinctWithFloat --QUERY Return list_distinct([to_float(1.1), to_float(1.1), NULL, to_float(3.4), to_float(1.2), to_float(5.1)]); +-LOG ListDistinctWithFloat +-STATEMENT Return list_distinct([to_float(1.1), to_float(1.1), NULL, to_float(3.4), to_float(1.2), to_float(5.1)]); ---- 1 [1.100000,1.200000,3.400000,5.100000] --NAME ListDistinctWithDouble --QUERY Return list_distinct([1.1, 1.1, NULL, -3.4, 1.2, 5.1]); +-LOG ListDistinctWithDouble +-STATEMENT Return list_distinct([1.1, 1.1, NULL, -3.4, 1.2, 5.1]); ---- 1 [-3.400000,1.100000,1.200000,5.100000] --NAME ListDistinctBoolean --QUERY Return list_distinct([true, true, NULL, false, false]); +-LOG ListDistinctBoolean +-STATEMENT Return list_distinct([true, true, NULL, false, false]); ---- 1 [False,True] --NAME ListDistinctWithStringSeq1 --QUERY Return list_distinct(['this is a long string', 'this is a long string', NULL, 'bbb', 'ccc', 'ccc']); +-LOG ListDistinctWithStringSeq1 +-STATEMENT Return list_distinct(['this is a long string', 'this is a long string', NULL, 'bbb', 'ccc', 'ccc']); ---- 1 [bbb,ccc,this is a long string] --NAME ListDistinctWithStringSeq2 --QUERY MATCH (a:person) RETURN list_distinct([NULL, a.usedNames[1], a.usedNames[1], NULL]) +-LOG ListDistinctWithStringSeq2 +-STATEMENT MATCH (a:person) RETURN list_distinct([NULL, a.usedNames[1], a.usedNames[1], NULL]) ---- 8 [Ad] [Aida] @@ -1158,23 +1158,23 @@ True [Grad] [Wolfeschlegelstein] --NAME ListDistinctWithDate --QUERY Return list_distinct([date('1992-05-03'), date('1993-05-03'), date('1993-05-03'), date('1994-05-03'), date('1993-05-03'), NULL]); +-LOG ListDistinctWithDate +-STATEMENT Return list_distinct([date('1992-05-03'), date('1993-05-03'), date('1993-05-03'), date('1994-05-03'), date('1993-05-03'), NULL]); ---- 1 [1992-05-03,1993-05-03,1994-05-03] --NAME ListDistinctWithTimestamp --QUERY Return list_distinct([timestamp('1992-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); +-LOG ListDistinctWithTimestamp +-STATEMENT Return list_distinct([timestamp('1992-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); ---- 1 [1992-05-03 11:13:25,1993-05-03 11:13:25,1994-05-03 11:13:25] --NAME ListDistinctWithInterval --QUERY Return list_distinct([interval('2 hours 3 days 20 minutes'), interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); +-LOG ListDistinctWithInterval +-STATEMENT Return list_distinct([interval('2 hours 3 days 20 minutes'), interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); ---- 1 [3 days 02:20:00,3 days 03:20:00,3 days 04:20:00] --NAME ListDistinctWithInternalID --QUERY MATCH (p:person) RETURN list_distinct([id(p), id(p), id(p)]) +-LOG ListDistinctWithInternalID +-STATEMENT MATCH (p:person) RETURN list_distinct([id(p), id(p), id(p)]) ---- 8 [0:0] [0:1] @@ -1185,43 +1185,43 @@ True [0:6] [0:7] --NAME ListUniqueWithInt16 --QUERY MATCH (m:movies) WHERE m.name='Roma' RETURN list_unique([NULL, to_int16(m.length), to_int16(m.length), to_int16(1)]) +-LOG ListUniqueWithInt16 +-STATEMENT MATCH (m:movies) WHERE m.name='Roma' RETURN list_unique([NULL, to_int16(m.length), to_int16(m.length), to_int16(1)]) ---- 1 2 --NAME ListUniqueWithInt32 --QUERY MATCH (m:movies) WHERE m.name='Roma' RETURN list_unique([NULL, to_int32(m.length), to_int32(m.length), to_int32(3)]) +-LOG ListUniqueWithInt32 +-STATEMENT MATCH (m:movies) WHERE m.name='Roma' RETURN list_unique([NULL, to_int32(m.length), to_int32(m.length), to_int32(3)]) ---- 1 2 --NAME ListUniqueWithInt64 --QUERY Return list_unique([1, 1, NULL, -3, 1, 5]); +-LOG ListUniqueWithInt64 +-STATEMENT Return list_unique([1, 1, NULL, -3, 1, 5]); ---- 1 3 --NAME ListUniqueWithFloat --QUERY MATCH (p:person) WHERE p.ID=0 RETURN list_unique([NULL, to_float(p.gender), to_float(p.gender), to_float(4.5)]) +-LOG ListUniqueWithFloat +-STATEMENT MATCH (p:person) WHERE p.ID=0 RETURN list_unique([NULL, to_float(p.gender), to_float(p.gender), to_float(4.5)]) ---- 1 2 --NAME ListUniqueWithDouble --QUERY Return list_unique([1.1, 1.1, NULL, -3.4, 1.2, 5.1]); +-LOG ListUniqueWithDouble +-STATEMENT Return list_unique([1.1, 1.1, NULL, -3.4, 1.2, 5.1]); ---- 1 4 --NAME ListUniqueBoolean --QUERY Return list_unique([true, true, NULL, false, false]); +-LOG ListUniqueBoolean +-STATEMENT Return list_unique([true, true, NULL, false, false]); ---- 1 2 --NAME ListUniqueWithStringSeq1 --QUERY Return list_unique(['this is long string', 'this is long string', NULL, 'bbb', 'ccc', 'aaa']); +-LOG ListUniqueWithStringSeq1 +-STATEMENT Return list_unique(['this is long string', 'this is long string', NULL, 'bbb', 'ccc', 'aaa']); ---- 1 4 --NAME ListUniqueWithStringSeq2 --QUERY MATCH (a:person) RETURN list_unique([NULL, a.usedNames[1], 'sss', NULL]) +-LOG ListUniqueWithStringSeq2 +-STATEMENT MATCH (a:person) RETURN list_unique([NULL, a.usedNames[1], 'sss', NULL]) ---- 8 2 2 @@ -1232,23 +1232,23 @@ True 2 2 --NAME ListUniqueWithDate --QUERY Return list_unique([date('1992-05-03'), date('1993-05-03'), date('1993-05-03'), date('1994-05-03'), date('1993-05-03'), NULL]); +-LOG ListUniqueWithDate +-STATEMENT Return list_unique([date('1992-05-03'), date('1993-05-03'), date('1993-05-03'), date('1994-05-03'), date('1993-05-03'), NULL]); ---- 1 3 --NAME ListUniqueWithTimestamp --QUERY Return list_unique([timestamp('1992-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); +-LOG ListUniqueWithTimestamp +-STATEMENT Return list_unique([timestamp('1992-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); ---- 1 3 --NAME ListUniqueWithInterval --QUERY Return list_unique([interval('2 hours 3 days 20 minutes'), interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); +-LOG ListUniqueWithInterval +-STATEMENT Return list_unique([interval('2 hours 3 days 20 minutes'), interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); ---- 1 3 --NAME ListUniqueWithInternalID --QUERY MATCH (p:person) RETURN list_unique([id(p), id(p), id(p)]); +-LOG ListUniqueWithInternalID +-STATEMENT MATCH (p:person) RETURN list_unique([id(p), id(p), id(p)]); ---- 8 1 1 @@ -1259,43 +1259,43 @@ True 1 1 --NAME ListAnyValueWithInt16 --QUERY MATCH (m:movies) WHERE m.name='Roma' RETURN list_any_value([NULL, to_int16(m.length), to_int16(m.length)]) +-LOG ListAnyValueWithInt16 +-STATEMENT MATCH (m:movies) WHERE m.name='Roma' RETURN list_any_value([NULL, to_int16(m.length), to_int16(m.length)]) ---- 1 298 --NAME ListAnyValueWithInt32 --QUERY MATCH (m:movies) WHERE m.name='Roma' RETURN list_any_value([NULL, to_int32(m.length), to_int32(m.length)]) +-LOG ListAnyValueWithInt32 +-STATEMENT MATCH (m:movies) WHERE m.name='Roma' RETURN list_any_value([NULL, to_int32(m.length), to_int32(m.length)]) ---- 1 298 --NAME ListAnyValueWithInt64 --QUERY Return list_any_value([NULL, 1, 1, NULL, -3, 1, 5]); +-LOG ListAnyValueWithInt64 +-STATEMENT Return list_any_value([NULL, 1, 1, NULL, -3, 1, 5]); ---- 1 1 --NAME ListAnyValueWithFloat --QUERY MATCH (p:person) WHERE p.ID=0 RETURN list_any_value([NULL, to_float(p.gender), to_float(p.gender), to_float(2.3)]) +-LOG ListAnyValueWithFloat +-STATEMENT MATCH (p:person) WHERE p.ID=0 RETURN list_any_value([NULL, to_float(p.gender), to_float(p.gender), to_float(2.3)]) ---- 1 1.000000 --NAME ListAnyValueWithDouble --QUERY Return list_any_value([NULL, 1.1, 1.1, NULL, -3.4, 1.2, 5.1]); +-LOG ListAnyValueWithDouble +-STATEMENT Return list_any_value([NULL, 1.1, 1.1, NULL, -3.4, 1.2, 5.1]); ---- 1 1.100000 --NAME ListAnyValueBoolean --QUERY Return list_any_value([NULL, true, true, NULL, false]); +-LOG ListAnyValueBoolean +-STATEMENT Return list_any_value([NULL, true, true, NULL, false]); ---- 1 True --NAME ListAnyValueWithStringSeq1 --QUERY Return list_any_value([NULL, NULL, 'this is long string', 'this is long string', NULL, 'this is long string', 'ccc', 'aaa']); +-LOG ListAnyValueWithStringSeq1 +-STATEMENT Return list_any_value([NULL, NULL, 'this is long string', 'this is long string', NULL, 'this is long string', 'ccc', 'aaa']); ---- 1 this is long string --NAME ListAnyValueWithStringSeq2 --QUERY MATCH (a:person) RETURN list_any_value([NULL, a.usedNames[1], 'sss']) +-LOG ListAnyValueWithStringSeq2 +-STATEMENT MATCH (a:person) RETURN list_any_value([NULL, a.usedNames[1], 'sss']) ---- 8 Aida Bobby @@ -1306,28 +1306,28 @@ Fesdwe Grad Ad --NAME ListAnyValueWithDate --QUERY Return list_any_value([NULL, date('1992-05-03'), date('1993-05-03'), date('1993-05-03'), date('1994-05-03'), date('1993-05-03'), NULL]); +-LOG ListAnyValueWithDate +-STATEMENT Return list_any_value([NULL, date('1992-05-03'), date('1993-05-03'), date('1993-05-03'), date('1994-05-03'), date('1993-05-03'), NULL]); ---- 1 1992-05-03 --NAME ListAnyValueWithTimestamp --QUERY Return list_any_value([NULL, timestamp('1992-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); +-LOG ListAnyValueWithTimestamp +-STATEMENT Return list_any_value([NULL, timestamp('1992-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), timestamp('1993-05-03 11:13:25'), timestamp('1994-05-03 11:13:25'), NULL]); ---- 1 1992-05-03 11:13:25 --NAME ListAnyValueWithInterval --QUERY Return list_any_value([NULL, interval('2 hours 3 days 20 minutes'), interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); +-LOG ListAnyValueWithInterval +-STATEMENT Return list_any_value([NULL, interval('2 hours 3 days 20 minutes'), interval('2 hours 3 days 20 minutes'), interval('3 hours 3 days 20 minutes'), interval('4 hours 3 days 20 minutes'), NULL]); ---- 1 3 days 02:20:00 --NAME ListAnyValueWithList --QUERY Return list_any_value([NULL, [1,2,3], [3,4,5]]); +-LOG ListAnyValueWithList +-STATEMENT Return list_any_value([NULL, [1,2,3], [3,4,5]]); ---- 1 [1,2,3] --NAME ListAnyValueWithInternalID --QUERY MATCH (p:person) return list_any_value([NULL, id(p), id(p), id(p)]); +-LOG ListAnyValueWithInternalID +-STATEMENT MATCH (p:person) return list_any_value([NULL, id(p), id(p), id(p)]); ---- 8 0:0 0:1 diff --git a/test/test_files/tinysnb/function/map.test b/test/test_files/tinysnb/function/map.test index c17773e6ea..06336ae9ae 100644 --- a/test/test_files/tinysnb/function/map.test +++ b/test/test_files/tinysnb/function/map.test @@ -5,43 +5,43 @@ -CASE FunctionMap --NAME MapExtractBool --QUERY RETURN map_extract(map([4,5,7], [true, false, true]), 5) +-LOG MapExtractBool +-STATEMENT RETURN map_extract(map([4,5,7], [true, false, true]), 5) ---- 1 [False] --NAME MapExtractInt64 --QUERY RETURN map_extract(map(['a', 'c', 'e'], [4, 3, 1]), 'c') +-LOG MapExtractInt64 +-STATEMENT RETURN map_extract(map(['a', 'c', 'e'], [4, 3, 1]), 'c') ---- 1 [3] --NAME MapExtractInt32 --QUERY RETURN map_extract(map([[1,3], [2,4]], [to_int32(3), to_int32(5)]), [2,4]) +-LOG MapExtractInt32 +-STATEMENT RETURN map_extract(map([[1,3], [2,4]], [to_int32(3), to_int32(5)]), [2,4]) ---- 1 [5] --NAME MapExtractInt16 --QUERY RETURN map_extract(map([4, 1, 3, 5], [to_int16(1), to_int16(4), to_int16(99), to_int16(11)]), 5) +-LOG MapExtractInt16 +-STATEMENT RETURN map_extract(map([4, 1, 3, 5], [to_int16(1), to_int16(4), to_int16(99), to_int16(11)]), 5) ---- 1 [11] --NAME MapExtractDouble --QUERY RETURN map_extract(map([{a: 3, b: [1, 2, 5]}, {a: 6, b: [1,3]}], [4.3, 5.2]), {b: 3, a: [1,2,5]}) +-LOG MapExtractDouble +-STATEMENT RETURN map_extract(map([{a: 3, b: [1, 2, 5]}, {a: 6, b: [1,3]}], [4.3, 5.2]), {b: 3, a: [1,2,5]}) ---- 1 [4.300000] --NAME MapExtractFloat --QUERY RETURN map_extract(map([1, 88], [to_float(3.2), to_float(3.1)]), 1) +-LOG MapExtractFloat +-STATEMENT RETURN map_extract(map([1, 88], [to_float(3.2), to_float(3.1)]), 1) ---- 1 [3.200000] --NAME MapExtractVarList --QUERY RETURN element_at(map([1, 88], [[4,5], [2,3,1]]), 1) +-LOG MapExtractVarList +-STATEMENT RETURN element_at(map([1, 88], [[4,5], [2,3,1]]), 1) ---- 1 [[4,5]] --NAME MapExtractInternalID --QUERY MATCH (a:person) RETURN map_extract(map([a.age], [id(a)]), 20) +-LOG MapExtractInternalID +-STATEMENT MATCH (a:person) RETURN map_extract(map([a.age], [id(a)]), 20) ---- 8 [] [] @@ -52,8 +52,8 @@ [] [] --NAME MapExtractString --QUERY MATCH (a:person) RETURN element_at(map([a.age], [a.fName]), 20) +-LOG MapExtractString +-STATEMENT MATCH (a:person) RETURN element_at(map([a.age], [a.fName]), 20) ---- 8 [] [] @@ -64,32 +64,32 @@ [] [] --NAME MapExtractStruct --QUERY RETURN map_extract(map([{a: 5, b: {length: 30, age: 20, size: [20, 10]}}, {a: 7, b: {length: 22, age: 145, size: [20,15, 10]}}], [30 ,50]), {a1: 7, b2: {length1: 22, age1: 145, size: [20,15, 10]}}) +-LOG MapExtractStruct +-STATEMENT RETURN map_extract(map([{a: 5, b: {length: 30, age: 20, size: [20, 10]}}, {a: 7, b: {length: 22, age: 145, size: [20,15, 10]}}], [30 ,50]), {a1: 7, b2: {length1: 22, age1: 145, size: [20,15, 10]}}) ---- 1 [50] --NAME MapCardinality --QUERY RETURN cardinality(map([4, 2, 100, 20], ['a', 'b', 'd', 'e'])); +-LOG MapCardinality +-STATEMENT RETURN cardinality(map([4, 2, 100, 20], ['a', 'b', 'd', 'e'])); ---- 1 4 --NAME MapKeys --QUERY RETURN map_keys(map([[5], [28, 75, 32], [], [33, 11, 66, 33]], ['a', 'b', 'd', 'e'])); +-LOG MapKeys +-STATEMENT RETURN map_keys(map([[5], [28, 75, 32], [], [33, 11, 66, 33]], ['a', 'b', 'd', 'e'])); ---- 1 [[5],[28,75,32],[],[33,11,66,33]] --NAME EmptyMapKeys --QUERY RETURN map_keys(map([], [])); +-LOG EmptyMapKeys +-STATEMENT RETURN map_keys(map([], [])); ---- 1 [] --NAME MapValues --QUERY RETURN map_values(map([23, 57, 1444], [{a: 5, c: [3, 4, 13]}, {d: 7, e: [1, 2, 3]}, {f: 9, g: [1, 2, 3, 4]}])); +-LOG MapValues +-STATEMENT RETURN map_values(map([23, 57, 1444], [{a: 5, c: [3, 4, 13]}, {d: 7, e: [1, 2, 3]}, {f: 9, g: [1, 2, 3, 4]}])); ---- 1 [{A: 5, C: [3,4,13]},{A: 7, C: [1,2,3]},{A: 9, C: [1,2,3,4]}] --NAME EmptyMapValues --QUERY RETURN map_values(map([], [])); +-LOG EmptyMapValues +-STATEMENT RETURN map_values(map([], [])); ---- 1 [] diff --git a/test/test_files/tinysnb/function/offset.test b/test/test_files/tinysnb/function/offset.test index db7c4ff02a..f6b8864968 100644 --- a/test/test_files/tinysnb/function/offset.test +++ b/test/test_files/tinysnb/function/offset.test @@ -5,8 +5,8 @@ -CASE FunctionOffset --NAME NodeOffsetTest1 --QUERY MATCH (a:person) RETURN id(a), offset(id(a)) +-LOG NodeOffsetTest1 +-STATEMENT MATCH (a:person) RETURN id(a), offset(id(a)) ---- 8 0:0|0 0:1|1 @@ -17,20 +17,20 @@ 0:6|6 0:7|7 --NAME NodeOffsetTest2 --QUERY MATCH (a:organisation) RETURN id(a), offset(id(a)) +-LOG NodeOffsetTest2 +-STATEMENT MATCH (a:organisation) RETURN id(a), offset(id(a)) ---- 3 1:0|0 1:1|1 1:2|2 --NAME NodeOffsetTest3 --QUERY MATCH (a:person) WHERE offset(id(a))=0 RETURN a.fName +-LOG NodeOffsetTest3 +-STATEMENT MATCH (a:person) WHERE offset(id(a))=0 RETURN a.fName ---- 1 Alice --NAME RelOffsetTest2 --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN id(e), offset(id(e)) +-LOG RelOffsetTest2 +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN id(e), offset(id(e)) ---- 3 4:0|0 4:1|1 diff --git a/test/test_files/tinysnb/function/serial.test b/test/test_files/tinysnb/function/serial.test index 17d1513ca2..7f39b835b9 100644 --- a/test/test_files/tinysnb/function/serial.test +++ b/test/test_files/tinysnb/function/serial.test @@ -5,8 +5,8 @@ -CASE SerialAdd --NAME SerialAddINT64 --QUERY MATCH (a:person) RETURN a.ID + a.age +-LOG SerialAddINT64 +-STATEMENT MATCH (a:person) RETURN a.ID + a.age ---- 8 35 31 @@ -17,8 +17,8 @@ 46 90 --NAME SerialAddDate --QUERY MATCH (a:person) RETURN a.ID + a.birthdate +-LOG SerialAddDate +-STATEMENT MATCH (a:person) RETURN a.ID + a.birthdate ---- 8 1900-01-01 1900-01-02 @@ -29,8 +29,8 @@ 1980-11-01 1990-12-04 --NAME SerialCastToInt32 --QUERY MATCH (a:person) RETURN to_int32(a.ID) +-LOG SerialCastToInt32 +-STATEMENT MATCH (a:person) RETURN to_int32(a.ID) ---- 8 0 1 @@ -41,8 +41,8 @@ 6 7 --NAME SerialCastToInt16 --QUERY MATCH (a:person) RETURN to_int16(a.ID) +-LOG SerialCastToInt16 +-STATEMENT MATCH (a:person) RETURN to_int16(a.ID) ---- 8 0 1 @@ -53,8 +53,8 @@ 6 7 --NAME SerialCastToDouble --QUERY MATCH (a:person) RETURN to_double(a.ID) +-LOG SerialCastToDouble +-STATEMENT MATCH (a:person) RETURN to_double(a.ID) ---- 8 0.000000 1.000000 @@ -65,8 +65,8 @@ 6.000000 7.000000 --NAME SerialCastToFloat --QUERY MATCH (a:person) RETURN to_float(a.ID) +-LOG SerialCastToFloat +-STATEMENT MATCH (a:person) RETURN to_float(a.ID) ---- 8 0.000000 1.000000 @@ -77,8 +77,8 @@ 6.000000 7.000000 --NAME ListCreationWithSerial --QUERY MATCH (a:person) RETURN list_creation(a.ID, a.ID) +-LOG ListCreationWithSerial +-STATEMENT MATCH (a:person) RETURN list_creation(a.ID, a.ID) ---- 8 [0,0] [1,1] @@ -89,8 +89,8 @@ [6,6] [7,7] --NAME StructCreationWithSerial --QUERY MATCH (a:person) RETURN {ID1: a.ID, ID2: id(a)} +-LOG StructCreationWithSerial +-STATEMENT MATCH (a:person) RETURN {ID1: a.ID, ID2: id(a)} ---- 8 {ID1: 0, ID2: 0:0} {ID1: 1, ID2: 0:1} @@ -101,8 +101,8 @@ {ID1: 6, ID2: 0:6} {ID1: 7, ID2: 0:7} --NAME ListExtractSerial --QUERY MATCH (a:person) RETURN list_extract([a.ID], 1) +-LOG ListExtractSerial +-STATEMENT MATCH (a:person) RETURN list_extract([a.ID], 1) ---- 8 0 1 @@ -113,8 +113,8 @@ 6 7 --NAME ListAppendSerial --QUERY MATCH (a:person) RETURN list_append([a.ID], a.ID) +-LOG ListAppendSerial +-STATEMENT MATCH (a:person) RETURN list_append([a.ID], a.ID) ---- 8 [0,0] [1,1] @@ -125,8 +125,8 @@ [6,6] [7,7] --NAME ListPrependSerial --QUERY MATCH (a:person) RETURN list_prepend(a.ID, [a.ID]) +-LOG ListPrependSerial +-STATEMENT MATCH (a:person) RETURN list_prepend(a.ID, [a.ID]) ---- 8 [0,0] [1,1] @@ -137,8 +137,8 @@ [6,6] [7,7] --NAME ListSortSerial --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN list_sort([b.ID, a.ID]) +-LOG ListSortSerial +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN list_sort([b.ID, a.ID]) ---- 14 [0,1] [0,1] @@ -155,8 +155,8 @@ [4,5] [4,6] --NAME ListReverseSortSerial --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN list_reverse_sort([b.ID, a.ID]) +-LOG ListReverseSortSerial +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN list_reverse_sort([b.ID, a.ID]) ---- 14 [1,0] [1,0] @@ -173,8 +173,8 @@ [5,4] [6,4] --NAME ListSumSerial --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN list_sum([b.ID, a.ID]) +-LOG ListSumSerial +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN list_sum([b.ID, a.ID]) ---- 14 1 1 @@ -191,8 +191,8 @@ 9 10 --NAME ListDistinctSerial --QUERY MATCH (a:person) RETURN list_distinct([a.ID, a.ID]) +-LOG ListDistinctSerial +-STATEMENT MATCH (a:person) RETURN list_distinct([a.ID, a.ID]) ---- 8 [0] [1] @@ -203,8 +203,8 @@ [6] [7] --NAME ListUniqueSerial --QUERY MATCH (a:person) RETURN list_unique([a.ID, a.ID]) +-LOG ListUniqueSerial +-STATEMENT MATCH (a:person) RETURN list_unique([a.ID, a.ID]) ---- 8 1 1 @@ -215,8 +215,8 @@ 1 1 --NAME ListAnyValueSerial --QUERY MATCH (a:person) RETURN list_any_value([a.ID, a.ID]) +-LOG ListAnyValueSerial +-STATEMENT MATCH (a:person) RETURN list_any_value([a.ID, a.ID]) ---- 8 0 1 diff --git a/test/test_files/tinysnb/function/string.test b/test/test_files/tinysnb/function/string.test index 4068e3e284..2f55c2d3ed 100644 --- a/test/test_files/tinysnb/function/string.test +++ b/test/test_files/tinysnb/function/string.test @@ -5,103 +5,103 @@ -CASE FunctionString --NAME StrVarAndStrLiteralConcat --QUERY MATCH (a:person) WHERE concat(a.fName, 'xyz') = 'Farooqxyz' RETURN COUNT(*) +-LOG StrVarAndStrLiteralConcat +-STATEMENT MATCH (a:person) WHERE concat(a.fName, 'xyz') = 'Farooqxyz' RETURN COUNT(*) ---- 1 1 --NAME StrVarAndStrLiteralConcat2 --QUERY MATCH (a:person) WHERE concat('xyz', a.fName) = 'xyzFarooq' RETURN COUNT(*) +-LOG StrVarAndStrLiteralConcat2 +-STATEMENT MATCH (a:person) WHERE concat('xyz', a.fName) = 'xyzFarooq' RETURN COUNT(*) ---- 1 1 --NAME StrVarAndStrLiteralConcat3 --QUERY MATCH (a:person) WHERE 'Farooqxyz' = concat(a.fName, 'xyz') RETURN COUNT(*) +-LOG StrVarAndStrLiteralConcat3 +-STATEMENT MATCH (a:person) WHERE 'Farooqxyz' = concat(a.fName, 'xyz') RETURN COUNT(*) ---- 1 1 --NAME StrVarAndStrLiteralConcat4 --QUERY MATCH (a:person) WHERE 'xyzFarooq' = concat('xyz', a.fName) RETURN COUNT(*) +-LOG StrVarAndStrLiteralConcat4 +-STATEMENT MATCH (a:person) WHERE 'xyzFarooq' = concat('xyz', a.fName) RETURN COUNT(*) ---- 1 1 --NAME StrVarAndIntLiteralConcat --QUERY MATCH (a:person) WHERE concat(a.fName, string(10)) = 'Farooq10' RETURN COUNT(*) +-LOG StrVarAndIntLiteralConcat +-STATEMENT MATCH (a:person) WHERE concat(a.fName, string(10)) = 'Farooq10' RETURN COUNT(*) ---- 1 1 --NAME StrVarAndIntLiteralConcat2 --QUERY MATCH (a:person) WHERE 'Farooq10' = concat(a.fName, string(10)) RETURN COUNT(*) +-LOG StrVarAndIntLiteralConcat2 +-STATEMENT MATCH (a:person) WHERE 'Farooq10' = concat(a.fName, string(10)) RETURN COUNT(*) ---- 1 1 --NAME IntLiteralAndStrVarConcat --QUERY MATCH (a:person) WHERE concat(string(10), a.fName) = '10Farooq' RETURN COUNT(*) +-LOG IntLiteralAndStrVarConcat +-STATEMENT MATCH (a:person) WHERE concat(string(10), a.fName) = '10Farooq' RETURN COUNT(*) ---- 1 1 --NAME IntLiteralAndStrVarConcat2 --QUERY MATCH (a:person) WHERE '10Farooq' = concat(string(10), a.fName) RETURN COUNT(*) +-LOG IntLiteralAndStrVarConcat2 +-STATEMENT MATCH (a:person) WHERE '10Farooq' = concat(string(10), a.fName) RETURN COUNT(*) ---- 1 1 --NAME StrVarAndBoolLiteralConcat --QUERY MATCH (a:person) WHERE concat(a.fName, string(true)) = 'FarooqTrue' RETURN COUNT(*) +-LOG StrVarAndBoolLiteralConcat +-STATEMENT MATCH (a:person) WHERE concat(a.fName, string(true)) = 'FarooqTrue' RETURN COUNT(*) ---- 1 1 --NAME StrVarAndBoolLiteralConcat2 --QUERY MATCH (a:person) WHERE 'FarooqTrue' = concat(a.fName, string(true)) RETURN COUNT(*) +-LOG StrVarAndBoolLiteralConcat2 +-STATEMENT MATCH (a:person) WHERE 'FarooqTrue' = concat(a.fName, string(true)) RETURN COUNT(*) ---- 1 1 --NAME BoolLiteralAndStrVarConcat --QUERY MATCH (a:person) WHERE concat(string(false), a.fName) = 'FalseFarooq' RETURN COUNT(*) +-LOG BoolLiteralAndStrVarConcat +-STATEMENT MATCH (a:person) WHERE concat(string(false), a.fName) = 'FalseFarooq' RETURN COUNT(*) ---- 1 1 --NAME BoolLiteralAndStrVarConcat --QUERY MATCH (a:person) WHERE 'FalseFarooq' = concat(string(FALse), a.fName) RETURN COUNT(*) +-LOG BoolLiteralAndStrVarConcat +-STATEMENT MATCH (a:person) WHERE 'FalseFarooq' = concat(string(FALse), a.fName) RETURN COUNT(*) ---- 1 1 --NAME StrVarAndDoubleLiteralConcat --QUERY MATCH (a:person) WHERE concat(a.fName, string(11.7)) = 'Farooq11.700000' RETURN COUNT(*) +-LOG StrVarAndDoubleLiteralConcat +-STATEMENT MATCH (a:person) WHERE concat(a.fName, string(11.7)) = 'Farooq11.700000' RETURN COUNT(*) ---- 1 1 --NAME StrVarAndIntegerVarConcat --QUERY MATCH (a:person) WHERE concat(a.fName, string(a.age)) = 'Farooq25' RETURN COUNT(*) +-LOG StrVarAndIntegerVarConcat +-STATEMENT MATCH (a:person) WHERE concat(a.fName, string(a.age)) = 'Farooq25' RETURN COUNT(*) ---- 1 1 --NAME StrVarAndIntegerVarConcat2 --QUERY MATCH (a:person) WHERE 'Farooq25' = concat(a.fName, string(a.age)) RETURN COUNT(*) +-LOG StrVarAndIntegerVarConcat2 +-STATEMENT MATCH (a:person) WHERE 'Farooq25' = concat(a.fName, string(a.age)) RETURN COUNT(*) ---- 1 1 --NAME IntegerVarAndStrVarConcat --QUERY MATCH (a:person) WHERE concat(string(a.age), a.fName) = '25Farooq' RETURN COUNT(*) +-LOG IntegerVarAndStrVarConcat +-STATEMENT MATCH (a:person) WHERE concat(string(a.age), a.fName) = '25Farooq' RETURN COUNT(*) ---- 1 1 --NAME IntegerVarAndStrVarConcat2 --QUERY MATCH (a:person) WHERE '25Farooq' = concat(string(a.age), a.fName) RETURN COUNT(*) +-LOG IntegerVarAndStrVarConcat2 +-STATEMENT MATCH (a:person) WHERE '25Farooq' = concat(string(a.age), a.fName) RETURN COUNT(*) ---- 1 1 --NAME DateVarAndStrVarConcatStructured --QUERY MATCH (a:person) WHERE '1900-01-01Alice' = concat(string(a.birthdate), a.fName) RETURN COUNT(*) +-LOG DateVarAndStrVarConcatStructured +-STATEMENT MATCH (a:person) WHERE '1900-01-01Alice' = concat(string(a.birthdate), a.fName) RETURN COUNT(*) ---- 1 1 --NAME TimestampVarAndStrVarConcatStructured --QUERY MATCH (a:person) WHERE '2011-08-20 11:25:30Alice' = concat(string(a.registerTime), a.fName) RETURN COUNT(*) +-LOG TimestampVarAndStrVarConcatStructured +-STATEMENT MATCH (a:person) WHERE '2011-08-20 11:25:30Alice' = concat(string(a.registerTime), a.fName) RETURN COUNT(*) ---- 1 1 --NAME ContainsReturn --QUERY MATCH (a:person) RETURN a.fName, a.fName CONTAINS "a" ORDER BY a.fName +-LOG ContainsReturn +-STATEMENT MATCH (a:person) RETURN a.fName, a.fName CONTAINS "a" ORDER BY a.fName ---- 8 Alice|False Bob|False @@ -112,23 +112,23 @@ Farooq|True Greg|False Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|True --NAME ContainsSelect --QUERY MATCH (a:person) WHERE a.fName = 'Bob' and a.fName CONTAINS "B" RETURN a.fName +-LOG ContainsSelect +-STATEMENT MATCH (a:person) WHERE a.fName = 'Bob' and a.fName CONTAINS "B" RETURN a.fName ---- 1 Bob --NAME ContainsSelect2 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE NOT a.fName CONTAINS b.fName RETURN COUNT(*) +-LOG ContainsSelect2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE NOT a.fName CONTAINS b.fName RETURN COUNT(*) ---- 1 14 --NAME ContainsSelect3 --QUERY MATCH (a:person) WHERE a.fName <> "Alice" and a.fName CONTAINS a.fName RETURN count(*) +-LOG ContainsSelect3 +-STATEMENT MATCH (a:person) WHERE a.fName <> "Alice" and a.fName CONTAINS a.fName RETURN count(*) ---- 1 7 --NAME StartsWithReturn1 --QUERY MATCH (a:person) RETURN a.fName, a.fName STARTS WITH "A" ORDER BY a.fName +-LOG StartsWithReturn1 +-STATEMENT MATCH (a:person) RETURN a.fName, a.fName STARTS WITH "A" ORDER BY a.fName ---- 8 Alice|True Bob|False @@ -139,97 +139,97 @@ Farooq|False Greg|False Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|False --NAME StartsWithAlias --QUERY MATCH (o:organisation) RETURN prefix(o.name, "ABF") +-LOG StartsWithAlias +-STATEMENT MATCH (o:organisation) RETURN prefix(o.name, "ABF") ---- 3 True False False --NAME StartsWithSelect --QUERY MATCH (a:person) WHERE a.fName STARTS WITH "C" RETURN a.fName +-LOG StartsWithSelect +-STATEMENT MATCH (a:person) WHERE a.fName STARTS WITH "C" RETURN a.fName ---- 1 Carol --NAME LowerStructuredStr --QUERY MATCH (o:organisation) RETURN lower(o.name) +-LOG LowerStructuredStr +-STATEMENT MATCH (o:organisation) RETURN lower(o.name) ---- 3 abfsuni cswork deswork --NAME LowerUTF8String --QUERY MATCH (m:movies) RETURN lower(m.name) +-LOG LowerUTF8String +-STATEMENT MATCH (m:movies) RETURN lower(m.name) ---- 3 sóló cón tu párejâ the 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie roma --NAME UpperStructuredStr --QUERY MATCH (o:organisation) RETURN upper(o.name) +-LOG UpperStructuredStr +-STATEMENT MATCH (o:organisation) RETURN upper(o.name) ---- 3 ABFSUNI CSWORK DESWORK --NAME UpperUTF8String --QUERY MATCH (m:movies) RETURN upper(m.name) +-LOG UpperUTF8String +-STATEMENT MATCH (m:movies) RETURN upper(m.name) ---- 3 SÓLÓ CÓN TU PÁREJÂ THE 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 MOVIE ROMA --NAME TrimStructuredStr --QUERY MATCH (o:organisation) RETURN trim(o.name) +-LOG TrimStructuredStr +-STATEMENT MATCH (o:organisation) RETURN trim(o.name) ---- 3 ABFsUni CsWork DEsWork --NAME LtrimStructuredStr --QUERY MATCH (o:organisation) RETURN ltrim(o.name) +-LOG LtrimStructuredStr +-STATEMENT MATCH (o:organisation) RETURN ltrim(o.name) ---- 3 ABFsUni CsWork DEsWork --NAME RtrimStructuredStr --QUERY MATCH (o:organisation) RETURN rtrim(o.name) +-LOG RtrimStructuredStr +-STATEMENT MATCH (o:organisation) RETURN rtrim(o.name) ---- 3 ABFsUni CsWork DEsWork --NAME ReverseStructuredStr --QUERY MATCH (o:organisation) RETURN reverse(o.name) +-LOG ReverseStructuredStr +-STATEMENT MATCH (o:organisation) RETURN reverse(o.name) ---- 3 inUsFBA kroWsC kroWsED --NAME ReverseUTF8String --QUERY MATCH (m:movies) RETURN reverse(m.name) +-LOG ReverseUTF8String +-STATEMENT MATCH (m:movies) RETURN reverse(m.name) ---- 3 âjeráp ut nóc ólóS eivom 🚗🍞🌦️🌍🧘🏻‍♂️😃😂 ehT amoR --NAME LengthStructuredStr --QUERY MATCH (o:organisation) RETURN length(o.name) +-LOG LengthStructuredStr +-STATEMENT MATCH (o:organisation) RETURN length(o.name) ---- 3 7 6 7 --NAME RepeatStructuredStr --QUERY MATCH (o:organisation) RETURN repeat(o.name, o.ID) +-LOG RepeatStructuredStr +-STATEMENT MATCH (o:organisation) RETURN repeat(o.name, o.ID) ---- 3 ABFsUni CsWorkCsWorkCsWorkCsWork DEsWorkDEsWorkDEsWorkDEsWorkDEsWorkDEsWork --NAME LpadStructuredStrAndLiteralInt --QUERY MATCH (p:person) RETURN lpad(p.fName, 5, "<") +-LOG LpadStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN lpad(p.fName, 5, "<") ---- 8 Alice <") +-LOG RpadStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN rpad(p.fName, 15, ">") ---- 8 Alice>>>>>>>>>> Bob>>>>>>>>>>>> @@ -278,22 +278,22 @@ Farooq>>>>>>>>> Greg>>>>>>>>>>> Hubert Blaine W --NAME RpadUTF8String --QUERY MATCH (m:movies) RETURN rpad(m.name, 45, "âó😂😃🍞🚗") +-LOG RpadUTF8String +-STATEMENT MATCH (m:movies) RETURN rpad(m.name, 45, "âó😂😃🍞🚗") ---- 3 Sóló cón tu párejââó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂 The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movieâó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞 Romaâó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞🚗âó😂😃🍞 --NAME RpadNegativeCount --QUERY MATCH (m:movies) RETURN rpad(m.name, -1, "âó😂😃🍞🚗") +-LOG RpadNegativeCount +-STATEMENT MATCH (m:movies) RETURN rpad(m.name, -1, "âó😂😃🍞🚗") ---- 3 --NAME RpadStructuredStrAndStructuredInt --QUERY MATCH (p:person) RETURN rpad(p.fName, p.ID, "<") +-LOG RpadStructuredStrAndStructuredInt +-STATEMENT MATCH (p:person) RETURN rpad(p.fName, p.ID, "<") ---- 8 Bo @@ -304,15 +304,15 @@ Farooq<< Greg<<<<< Hubert Bla --NAME RpadOutOfRange --QUERY MATCH (o:organisation) RETURN rpad(o.name, -8, "y") +-LOG RpadOutOfRange +-STATEMENT MATCH (o:organisation) RETURN rpad(o.name, -8, "y") ---- 3 --NAME SubStrStructuredStrAndLiteralInt --QUERY MATCH (p:person) RETURN substr(p.fName, 2, 12) +-LOG SubStrStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN substr(p.fName, 2, 12) ---- 8 lice ob @@ -323,8 +323,8 @@ arooq reg ubert Blaine --NAME LeftPositiveIdxStructuredStrAndLiteralInt --QUERY MATCH (p:person) RETURN left(p.fName, 11) +-LOG LeftPositiveIdxStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN left(p.fName, 11) ---- 8 Alice Bob @@ -335,22 +335,22 @@ Farooq Greg Hubert Blai --NAME LeftPositiveIdxUTF8String --QUERY MATCH (m:movies) RETURN left(m.name, 6) +-LOG LeftPositiveIdxUTF8String +-STATEMENT MATCH (m:movies) RETURN left(m.name, 6) ---- 3 Sóló c The 😂😃 Roma --NAME LeftPositiveIdxStructuredStrAndStructuredInt --QUERY MATCH (o:organisation) RETURN left(o.name, o.ID) +-LOG LeftPositiveIdxStructuredStrAndStructuredInt +-STATEMENT MATCH (o:organisation) RETURN left(o.name, o.ID) ---- 3 A CsWo DEsWor --NAME LeftNegativeIdxStructuredStrAndLiteralInt --QUERY MATCH (p:person) RETURN left(p.fName, -4) +-LOG LeftNegativeIdxStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN left(p.fName, -4) ---- 8 A @@ -361,14 +361,14 @@ Fa Hubert Blaine Wolfeschlegelsteinhausenbergerd --NAME LeftNegativeIdxUTF8String --QUERY MATCH (m:movies) RETURN left(m.name, -7) +-LOG LeftNegativeIdxUTF8String +-STATEMENT MATCH (m:movies) RETURN left(m.name, -7) ---- 3 Sóló cón tu The 😂😃🧘🏻‍♂️🌍🌦️🍞 --NAME RightPositiveIdxStructuredStrAndLiteralInt --QUERY MATCH (p:person) RETURN right(p.fName, 10) +-LOG RightPositiveIdxStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN right(p.fName, 10) ---- 8 Alice Bob @@ -379,22 +379,22 @@ Farooq Greg ergerdorff --NAME RightPositiveIdxUTF8String --QUERY MATCH (m:movies) RETURN right(m.name, 5) +-LOG RightPositiveIdxUTF8String +-STATEMENT MATCH (m:movies) RETURN right(m.name, 5) ---- 3 árejâ movie Roma --NAME RightPositiveIdxStructuredStrAndStructuredInt --QUERY MATCH (o:organisation) RETURN right(o.name, o.ID) +-LOG RightPositiveIdxStructuredStrAndStructuredInt +-STATEMENT MATCH (o:organisation) RETURN right(o.name, o.ID) ---- 3 i Work EsWork --NAME RightNegativeIdxStructuredStrAndLiteralInt --QUERY MATCH (p:person) RETURN right(p.fName, -4) +-LOG RightNegativeIdxStructuredStrAndLiteralInt +-STATEMENT MATCH (p:person) RETURN right(p.fName, -4) ---- 8 e @@ -405,57 +405,57 @@ oq rt Blaine Wolfeschlegelsteinhausenbergerdorff --NAME RightNegativeIdxUTF8String --QUERY MATCH (m:movies) RETURN right(m.name, -3) +-LOG RightNegativeIdxUTF8String +-STATEMENT MATCH (m:movies) RETURN right(m.name, -3) ---- 3 ó cón tu párejâ 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie a --NAME ArrayExtractPositiveIdxStructuredStrAndStructuredInt --QUERY MATCH (o:organisation) RETURN array_extract(o.name, o.ID + 2) +-LOG ArrayExtractPositiveIdxStructuredStrAndStructuredInt +-STATEMENT MATCH (o:organisation) RETURN array_extract(o.name, o.ID + 2) ---- 3 F k k --NAME ArrayExtractNegativeIdxStructuredStrAndStructuredInt --QUERY MATCH (o:organisation) RETURN array_extract(o.name, o.ID - 5) +-LOG ArrayExtractNegativeIdxStructuredStrAndStructuredInt +-STATEMENT MATCH (o:organisation) RETURN array_extract(o.name, o.ID - 5) ---- 3 s k D --NAME ArrayExtractUTF8PositiveIdx --QUERY MATCH (m:movies) RETURN array_extract(m.name, 6) +-LOG ArrayExtractUTF8PositiveIdx +-STATEMENT MATCH (m:movies) RETURN array_extract(m.name, 6) ---- 3 c 😃 a --NAME ArrayExtractUTF8NegativeIdx --QUERY MATCH (m:movies) RETURN array_extract(m.name, -5) +-LOG ArrayExtractUTF8NegativeIdx +-STATEMENT MATCH (m:movies) RETURN array_extract(m.name, -5) ---- 3 á m R --NAME ArrayExtractUTF8ZeroIdx --QUERY MATCH (m:movies) RETURN array_extract(m.name, 0) +-LOG ArrayExtractUTF8ZeroIdx +-STATEMENT MATCH (m:movies) RETURN array_extract(m.name, 0) ---- 3 --NAME ListExtractStructuredString --QUERY MATCH (o:organisation) RETURN o.name[2] +-LOG ListExtractStructuredString +-STATEMENT MATCH (o:organisation) RETURN o.name[2] ---- 3 B s E --NAME ListExtractOutOfRange --QUERY MATCH (a:person) RETURN a.fName[8] +-LOG ListExtractOutOfRange +-STATEMENT MATCH (a:person) RETURN a.fName[8] ---- 8 @@ -466,123 +466,123 @@ t B --NAME ListExtractNegativeIndex --QUERY MATCH (o:organisation) RETURN o.name[-2] +-LOG ListExtractNegativeIndex +-STATEMENT MATCH (o:organisation) RETURN o.name[-2] ---- 3 n r r --NAME ListExtractUTF8PositiveIdx --QUERY MATCH (m:movies) RETURN m.name[2] +-LOG ListExtractUTF8PositiveIdx +-STATEMENT MATCH (m:movies) RETURN m.name[2] ---- 3 ó h o --NAME ListExtractUTF8NegativeIdx --QUERY MATCH (m:movies) RETURN m.name[-5] +-LOG ListExtractUTF8NegativeIdx +-STATEMENT MATCH (m:movies) RETURN m.name[-5] ---- 3 á m R --NAME ListExtractUTF8ZeroIdx --QUERY MATCH (m:movies) RETURN m.name[0] +-LOG ListExtractUTF8ZeroIdx +-STATEMENT MATCH (m:movies) RETURN m.name[0] ---- 3 --NAME SuffixStructuredStr --QUERY MATCH (o:organisation) RETURN suffix(o.name, "Work") +-LOG SuffixStructuredStr +-STATEMENT MATCH (o:organisation) RETURN suffix(o.name, "Work") ---- 3 False True True --NAME SuffixSelect --QUERY MATCH (p:person) WHERE suffix(p.fName, "l") RETURN p.fName +-LOG SuffixSelect +-STATEMENT MATCH (p:person) WHERE suffix(p.fName, "l") RETURN p.fName ---- 1 Carol --NAME RegexpFullMatchString --QUERY MATCH (a:person) WHERE a.fName =~ 'Ali.*' RETURN a.ID +-LOG RegexpFullMatchString +-STATEMENT MATCH (a:person) WHERE a.fName =~ 'Ali.*' RETURN a.ID ---- 1 0 --NAME RegexpFullMatchAnchorString --QUERY MATCH (a:person) UNWIND a.usedNames as x WITH x AS name WHERE name =~ '^A.*$' RETURN name +-LOG RegexpFullMatchAnchorString +-STATEMENT MATCH (a:person) UNWIND a.usedNames as x WITH x AS name WHERE name =~ '^A.*$' RETURN name ---- 2 Ad Aida --NAME RegexpFullMatchUTF8String --QUERY MATCH (m:movies) WHERE m.name =~ '.*â.*' RETURN m.name +-LOG RegexpFullMatchUTF8String +-STATEMENT MATCH (m:movies) WHERE m.name =~ '.*â.*' RETURN m.name ---- 1 Sóló cón tu párejâ --NAME RegexpFullMatchEscapeSeq1 --QUERY Return REGEXP_FULL_MATCH("peter_n@example.com", ".*\\.com"); +-LOG RegexpFullMatchEscapeSeq1 +-STATEMENT Return REGEXP_FULL_MATCH("peter_n@example.com", ".*\\.com"); ---- 1 True --NAME RegexpFullMatchEscapeSeq2 --QUERY Return REGEXP_FULL_MATCH("Alice.*^Alice", ".*\\.\\*.*"); +-LOG RegexpFullMatchEscapeSeq2 +-STATEMENT Return REGEXP_FULL_MATCH("Alice.*^Alice", ".*\\.\\*.*"); ---- 1 True --NAME RegexpFullMatchEscapeSeq3 --QUERY Return REGEXP_FULL_MATCH("peter_n@examplecom", ".*\\.com"); +-LOG RegexpFullMatchEscapeSeq3 +-STATEMENT Return REGEXP_FULL_MATCH("peter_n@examplecom", ".*\\.com"); ---- 1 False --NAME RegexpMatchesString --QUERY MATCH (a:person) WHERE REGEXP_MATCHES(a.fName, 'Ali.*') = true RETURN a.ID +-LOG RegexpMatchesString +-STATEMENT MATCH (a:person) WHERE REGEXP_MATCHES(a.fName, 'Ali.*') = true RETURN a.ID ---- 1 0 --NAME RegexpMatchesSeq1 --QUERY Return REGEXP_MATCHES('anabanana', '(an)*'); +-LOG RegexpMatchesSeq1 +-STATEMENT Return REGEXP_MATCHES('anabanana', '(an)*'); ---- 1 True --NAME RegexpReplaceSeq1 --QUERY Return REGEXP_REPLACE('hello', '[lo]', '-'); +-LOG RegexpReplaceSeq1 +-STATEMENT Return REGEXP_REPLACE('hello', '[lo]', '-'); ---- 1 he-lo --NAME RegexpExtractWithoutGroup --QUERY Return regexp_extract('hello_world', '([a-z ]+)_?'); +-LOG RegexpExtractWithoutGroup +-STATEMENT Return regexp_extract('hello_world', '([a-z ]+)_?'); ---- 1 hello_ --NAME RegexpExtractWithGroup --QUERY Return regexp_extract('hello_world', '([a-z ]+)_?', 1); +-LOG RegexpExtractWithGroup +-STATEMENT Return regexp_extract('hello_world', '([a-z ]+)_?', 1); ---- 1 hello --NAME RegexpExtractAllLongString --QUERY Return regexp_extract('hellolongstringtest_worldlongstringtest', '([a-z ]+)_?', 1); +-LOG RegexpExtractAllLongString +-STATEMENT Return regexp_extract('hellolongstringtest_worldlongstringtest', '([a-z ]+)_?', 1); ---- 1 hellolongstringtest --NAME RegexpExtractAllWithoutGroup --QUERY Return regexp_extract_all('hello_world', '([a-z ]+)_?'); +-LOG RegexpExtractAllWithoutGroup +-STATEMENT Return regexp_extract_all('hello_world', '([a-z ]+)_?'); ---- 1 [hello_,world] --NAME RegexpExtractAllWithGroup --QUERY Return regexp_extract_all('hello_world', '([a-z ]+)_?', 1); +-LOG RegexpExtractAllWithGroup +-STATEMENT Return regexp_extract_all('hello_world', '([a-z ]+)_?', 1); ---- 1 [hello,world] --NAME RegexpExtractAllLongString --QUERY Return regexp_extract_all('hellolongstringtest_worldlongstringtest', '([a-z ]+)_?', 1); +-LOG RegexpExtractAllLongString +-STATEMENT Return regexp_extract_all('hellolongstringtest_worldlongstringtest', '([a-z ]+)_?', 1); ---- 1 [hellolongstringtest,worldlongstringtest] --NAME RegexpExtractAllEmptyMatch --QUERY Return regexp_extract_all('hello', '()', 1); +-LOG RegexpExtractAllEmptyMatch +-STATEMENT Return regexp_extract_all('hello', '()', 1); ---- 1 [,,,,,] diff --git a/test/test_files/tinysnb/function/timestamp.test b/test/test_files/tinysnb/function/timestamp.test index 4016d80bfd..cb1590fe5b 100644 --- a/test/test_files/tinysnb/function/timestamp.test +++ b/test/test_files/tinysnb/function/timestamp.test @@ -5,38 +5,38 @@ -CASE FunctionTimestamp --NAME TimestampLiteralEqualityComparison --QUERY MATCH (a:person) WHERE a.registerTime = timestamp('1976-12-23 11:21:42') RETURN COUNT(*) +-LOG TimestampLiteralEqualityComparison +-STATEMENT MATCH (a:person) WHERE a.registerTime = timestamp('1976-12-23 11:21:42') RETURN COUNT(*) ---- 1 1 --NAME TimestampDateNotEqual --QUERY MATCH (a:person) WHERE date_trunc("daY", a.registerTime) <> date('1976-12-23') RETURN COUNT(*) +-LOG TimestampDateNotEqual +-STATEMENT MATCH (a:person) WHERE date_trunc("daY", a.registerTime) <> date('1976-12-23') RETURN COUNT(*) ---- 1 6 --NAME TimestampDateGreaterThan --QUERY MATCH (a:person) WHERE a.registerTime > date('1976-12-23') RETURN COUNT(*) +-LOG TimestampDateGreaterThan +-STATEMENT MATCH (a:person) WHERE a.registerTime > date('1976-12-23') RETURN COUNT(*) ---- 1 6 --NAME TimestampDateGreaterThanEqual --QUERY MATCH (a:person) WHERE a.registerTime >= date('1976-12-23') RETURN COUNT(*) +-LOG TimestampDateGreaterThanEqual +-STATEMENT MATCH (a:person) WHERE a.registerTime >= date('1976-12-23') RETURN COUNT(*) ---- 1 6 --NAME TimestampDateLessThan --QUERY MATCH (a:person) WHERE a.registerTime < date('1976-12-23') RETURN COUNT(*) +-LOG TimestampDateLessThan +-STATEMENT MATCH (a:person) WHERE a.registerTime < date('1976-12-23') RETURN COUNT(*) ---- 1 2 --NAME TimestampDateLessThanEqual --QUERY MATCH (a:person) WHERE a.registerTime <= date('1976-12-23') RETURN COUNT(*) +-LOG TimestampDateLessThanEqual +-STATEMENT MATCH (a:person) WHERE a.registerTime <= date('1976-12-23') RETURN COUNT(*) ---- 1 2 --NAME StructuredTimestampArithmeticAddInterval1 --QUERY MATCH (a:person) RETURN a.registerTime + interval('47 hours 30 minutes 30 seconds') +-LOG StructuredTimestampArithmeticAddInterval1 +-STATEMENT MATCH (a:person) RETURN a.registerTime + interval('47 hours 30 minutes 30 seconds') ---- 8 1911-08-22 02:02:51 1972-08-02 12:53:00.678559 @@ -48,8 +48,8 @@ 2031-12-02 11:56:00 --NAME StructuredTimestampArithmeticAddInterval2 --QUERY MATCH (a:person) RETURN a.registerTime + interval('2 years 3 days 34 h 28 minutes 300 milliseconds 20 us') +-LOG StructuredTimestampArithmeticAddInterval2 +-STATEMENT MATCH (a:person) RETURN a.registerTime + interval('2 years 3 days 34 h 28 minutes 300 milliseconds 20 us') ---- 8 1913-08-24 13:00:21.30002 1974-08-04 23:50:30.978579 @@ -60,8 +60,8 @@ 2025-02-25 23:53:30.30002 2033-12-04 22:53:30.30002 --NAME StructuredTimestampArithmeticSubtractInterval --QUERY MATCH (a:person) RETURN a.registerTime - interval('12 years 7 months 10 days 20 h 30 m 100 us') +-LOG StructuredTimestampArithmeticSubtractInterval +-STATEMENT MATCH (a:person) RETURN a.registerTime - interval('12 years 7 months 10 days 20 h 30 m 100 us') ---- 8 1899-01-09 06:02:20.9999 1959-12-20 16:52:30.678459 @@ -72,8 +72,8 @@ 2010-07-10 16:55:29.9999 2019-04-19 15:55:29.9999 --NAME StructuredTimestampArithmeticSubtractTimestamp --QUERY MATCH (a:person) RETURN a.registerTime - timestamp('2013-01-02 14:22:31.45612') +-LOG StructuredTimestampArithmeticSubtractTimestamp +-STATEMENT MATCH (a:person) RETURN a.registerTime - timestamp('2013-01-02 14:22:31.45612') ---- 8 -37026 days -11:50:10.45612 -14765 days -01:00:00.777561 @@ -84,8 +84,8 @@ 3701 days 23:02:58.54388 6905 days 22:02:58.54388 --NAME StructuredTimestampMixedArithmeticOperations --QUERY MATCH (a:person) RETURN a.registerTime + interval('2 hours 48 minutes 1000 seconds') - interval('188 days 48 hours') - timestamp('1976-01-02 13:44:12') +-LOG StructuredTimestampMixedArithmeticOperations +-STATEMENT MATCH (a:person) RETURN a.registerTime + interval('2 hours 48 minutes 1000 seconds') - interval('188 days 48 hours') - timestamp('1976-01-02 13:44:12') ---- 8 -23701 days -08:07:11 -1439 days -21:17:01.321441 @@ -96,8 +96,8 @@ 17027 days 02:45:58 20231 days 01:45:58 --NAME StructuredTimestampConcatenateString --QUERY MATCH (a:person) RETURN concat(concat('Register Time: ', string(a.registerTime)), ' test') +-LOG StructuredTimestampConcatenateString +-STATEMENT MATCH (a:person) RETURN concat(concat('Register Time: ', string(a.registerTime)), ' test') ---- 8 Register Time: 1911-08-20 02:32:21 test Register Time: 1972-07-31 13:22:30.678559 test @@ -108,8 +108,8 @@ Register Time: 2011-08-20 11:25:30 test Register Time: 2023-02-21 13:25:30 test Register Time: 2031-11-30 12:25:30 test --NAME StructuredTimestampExtractYearFuncTest --QUERY MATCH (p:person) RETURN date_part("yeAr", p.registerTime) +-LOG StructuredTimestampExtractYearFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("yeAr", p.registerTime) ---- 8 2011 2008 @@ -120,8 +120,8 @@ Register Time: 2031-11-30 12:25:30 test 1976 2023 --NAME StructuredTimestampExtractMicroFuncTest --QUERY MATCH (p:person) RETURN date_part("microSeconds", p.registerTime) +-LOG StructuredTimestampExtractMicroFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("microSeconds", p.registerTime) ---- 8 30000000 30000526 @@ -132,8 +132,8 @@ Register Time: 2031-11-30 12:25:30 test 42000000 30000000 --NAME StructuredTimestampExtractMsFuncTest --QUERY MATCH (p:person) RETURN date_part("millisEcond", p.registerTime) +-LOG StructuredTimestampExtractMsFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("millisEcond", p.registerTime) ---- 8 30000 30000 @@ -144,8 +144,8 @@ Register Time: 2031-11-30 12:25:30 test 42000 30000 --NAME StructuredTimestampExtractSecondFuncTest --QUERY MATCH (p:person) RETURN date_part("seConds", p.registerTime) +-LOG StructuredTimestampExtractSecondFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("seConds", p.registerTime) ---- 8 30 30 @@ -156,8 +156,8 @@ Register Time: 2031-11-30 12:25:30 test 42 30 --NAME StructuredTimestampExtractMinuteFuncTest --QUERY MATCH (p:person) RETURN date_part("minute", p.registerTime) +-LOG StructuredTimestampExtractMinuteFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("minute", p.registerTime) ---- 8 25 25 @@ -168,8 +168,8 @@ Register Time: 2031-11-30 12:25:30 test 41 25 --NAME StructuredTimestampExtractHourFuncTest --QUERY MATCH (p:person) RETURN date_part("hours", p.registerTime) +-LOG StructuredTimestampExtractHourFuncTest +-STATEMENT MATCH (p:person) RETURN date_part("hours", p.registerTime) ---- 8 11 15 @@ -180,8 +180,8 @@ Register Time: 2031-11-30 12:25:30 test 4 13 --NAME StructuredTimestampTruncDayFuncTest --QUERY MATCH (p:person) RETURN date_trunc("Day", p.registerTime) +-LOG StructuredTimestampTruncDayFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("Day", p.registerTime) ---- 8 2011-08-20 00:00:00 2008-11-03 00:00:00 @@ -192,8 +192,8 @@ Register Time: 2031-11-30 12:25:30 test 1976-12-23 00:00:00 2023-02-21 00:00:00 --NAME StructuredTimestampTruncMicrosecondsFuncTest --QUERY MATCH (p:person) RETURN date_trunc("MIcroseCond", p.registerTime) +-LOG StructuredTimestampTruncMicrosecondsFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("MIcroseCond", p.registerTime) ---- 8 2011-08-20 11:25:30 2008-11-03 15:25:30.000526 @@ -204,8 +204,8 @@ Register Time: 2031-11-30 12:25:30 test 1976-12-23 04:41:42 2023-02-21 13:25:30 --NAME StructuredTimestampTruncMillisecondsFuncTest --QUERY MATCH (p:person) RETURN date_trunc("mIlliSecond", p.registerTime) +-LOG StructuredTimestampTruncMillisecondsFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("mIlliSecond", p.registerTime) ---- 8 2011-08-20 11:25:30 2008-11-03 15:25:30 @@ -216,8 +216,8 @@ Register Time: 2031-11-30 12:25:30 test 1976-12-23 04:41:42 2023-02-21 13:25:30 --NAME StructuredTimestampTruncSecondsFuncTest --QUERY MATCH (p:person) RETURN date_trunc("secOnds", p.registerTime) +-LOG StructuredTimestampTruncSecondsFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("secOnds", p.registerTime) ---- 8 2011-08-20 11:25:30 2008-11-03 15:25:30 @@ -228,8 +228,8 @@ Register Time: 2031-11-30 12:25:30 test 1976-12-23 04:41:42 2023-02-21 13:25:30 --NAME StructuredTimestampTruncMinuteFuncTest --QUERY MATCH (p:person) RETURN date_trunc("Minutes", p.registerTime) +-LOG StructuredTimestampTruncMinuteFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("Minutes", p.registerTime) ---- 8 2011-08-20 11:25:00 2008-11-03 15:25:00 @@ -240,8 +240,8 @@ Register Time: 2031-11-30 12:25:30 test 1976-12-23 04:41:00 2023-02-21 13:25:00 --NAME StructuredTimestampTruncHourFuncTest --QUERY MATCH (p:person) RETURN date_trunc("Hours", p.registerTime) +-LOG StructuredTimestampTruncHourFuncTest +-STATEMENT MATCH (p:person) RETURN date_trunc("Hours", p.registerTime) ---- 8 2011-08-20 11:00:00 2008-11-03 15:00:00 @@ -252,8 +252,8 @@ Register Time: 2031-11-30 12:25:30 test 1976-12-23 04:00:00 2023-02-21 13:00:00 --NAME StructuredTimestampCenturyFuncTest --QUERY MATCH (p:person) RETURN century(p.registerTime) +-LOG StructuredTimestampCenturyFuncTest +-STATEMENT MATCH (p:person) RETURN century(p.registerTime) ---- 8 21 21 @@ -264,8 +264,8 @@ Register Time: 2031-11-30 12:25:30 test 20 21 --NAME StructuredTimestampDaynameFuncTest --QUERY MATCH (p:person) RETURN dayname(p.registerTime) +-LOG StructuredTimestampDaynameFuncTest +-STATEMENT MATCH (p:person) RETURN dayname(p.registerTime) ---- 8 Saturday Monday @@ -276,8 +276,8 @@ Monday Thursday Tuesday --NAME StructuredTimestampMonthNameFuncTest --QUERY MATCH (p:person) RETURN monthname(p.registerTime) +-LOG StructuredTimestampMonthNameFuncTest +-STATEMENT MATCH (p:person) RETURN monthname(p.registerTime) ---- 8 August November @@ -288,8 +288,8 @@ July December February --NAME StructuredTimestampLastDayFuncTest --QUERY MATCH (p:person) RETURN last_day(p.registerTime) +-LOG StructuredTimestampLastDayFuncTest +-STATEMENT MATCH (p:person) RETURN last_day(p.registerTime) ---- 8 2011-08-31 2008-11-30 @@ -300,8 +300,8 @@ February 1976-12-31 2023-02-28 --NAME StructuredInt64EpochMsFuncTest --QUERY MATCH (p:person) RETURN epoch_ms(p.age) +-LOG StructuredInt64EpochMsFuncTest +-STATEMENT MATCH (p:person) RETURN epoch_ms(p.age) ---- 8 1970-01-01 00:00:00.035 1970-01-01 00:00:00.03 @@ -312,8 +312,8 @@ February 1970-01-01 00:00:00.04 1970-01-01 00:00:00.083 --NAME StructuredInt64ToTimestampFuncTest --QUERY MATCH (p:person) RETURN to_timestamp(p.age) +-LOG StructuredInt64ToTimestampFuncTest +-STATEMENT MATCH (p:person) RETURN to_timestamp(p.age) ---- 8 1970-01-01 00:00:35 1970-01-01 00:00:30 @@ -324,8 +324,8 @@ February 1970-01-01 00:00:40 1970-01-01 00:01:23 --NAME StructuredTimestampGreatestFuncTest --QUERY MATCH (p:person) RETURN greatest(p.registerTime, timestamp("2006-02-12 11:25:33")) +-LOG StructuredTimestampGreatestFuncTest +-STATEMENT MATCH (p:person) RETURN greatest(p.registerTime, timestamp("2006-02-12 11:25:33")) ---- 8 2011-08-20 11:25:30 2008-11-03 15:25:30.000526 @@ -336,8 +336,8 @@ February 2006-02-12 11:25:33 2023-02-21 13:25:30 --NAME StructuredTimestampLeastFuncTest --QUERY MATCH (p:person) RETURN least(p.registerTime, timestamp("2006-02-12 11:25:33")) +-LOG StructuredTimestampLeastFuncTest +-STATEMENT MATCH (p:person) RETURN least(p.registerTime, timestamp("2006-02-12 11:25:33")) ---- 8 2006-02-12 11:25:33 2006-02-12 11:25:33 @@ -348,58 +348,58 @@ February 1976-12-23 04:41:42 2006-02-12 11:25:33 --NAME StructuredTimestampComparisonAcrossNodesNonEquality --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime <> b.registerTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossNodesNonEquality +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime <> b.registerTime RETURN COUNT(*) ---- 1 14 --NAME StructuredTimestampComparisonAcrossNodesLessThan --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime < b.registerTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossNodesLessThan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime < b.registerTime RETURN COUNT(*) ---- 1 6 --NAME StructuredTimestampComparisonAcrossNodesLessThanOrEqualTo --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime <= b.registerTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossNodesLessThanOrEqualTo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime <= b.registerTime RETURN COUNT(*) ---- 1 6 --NAME StructuredTimestampComparisonAcrossNodesGreaterThan --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime > b.registerTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossNodesGreaterThan +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime > b.registerTime RETURN COUNT(*) ---- 1 8 --NAME TimestampLiteralGreaterThanComparison --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE b.registerTime > timestamp('2005-11-03 13:25:30.000526') RETURN COUNT(*) +-LOG TimestampLiteralGreaterThanComparison +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE b.registerTime > timestamp('2005-11-03 13:25:30.000526') RETURN COUNT(*) -ENUMERATE ---- 1 9 --NAME TimestampLiteralLessThanComparison --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE e1.meetTime < timestamp('1979-08-25 19:07:22') RETURN COUNT(*) +-LOG TimestampLiteralLessThanComparison +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE e1.meetTime < timestamp('1979-08-25 19:07:22') RETURN COUNT(*) -ENUMERATE ---- 1 4 --NAME StructuredTimestampComparisonAcrossNodesEquality --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime = b.registerTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossNodesEquality +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime = b.registerTime RETURN COUNT(*) -ENUMERATE ---- 1 0 --NAME StructuredTimestampComparisonAcrossNodesGreaterThanOrEqualTo --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime >= b.registerTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossNodesGreaterThanOrEqualTo +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime >= b.registerTime RETURN COUNT(*) -ENUMERATE ---- 1 8 --NAME StructuredTimestampComparisonAcrossEdges --QUERY MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE e1.meetTime = e2.meetTime AND id(a) <> id(c) RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossEdges +-STATEMENT MATCH (a:person)<-[e1:knows]-(b:person)-[e2:knows]->(c:person) WHERE e1.meetTime = e2.meetTime AND id(a) <> id(c) RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME StructuredTimestampComparisonAcrossEdgeAndNode --QUERY MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime > e1.meetTime RETURN COUNT(*) +-LOG StructuredTimestampComparisonAcrossEdgeAndNode +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WHERE a.registerTime > e1.meetTime RETURN COUNT(*) -ENUMERATE ---- 1 7 diff --git a/test/test_files/tinysnb/function/union.test b/test/test_files/tinysnb/function/union.test index 4abbbcd6e1..9d8513d776 100644 --- a/test/test_files/tinysnb/function/union.test +++ b/test/test_files/tinysnb/function/union.test @@ -5,13 +5,13 @@ -CASE FunctionUnion --NAME UnionValueOnLiteral --QUERY RETURN union_value(age := 36) +-LOG UnionValueOnLiteral +-STATEMENT RETURN union_value(age := 36) ---- 1 36 --NAME UnionValueOnExpr --QUERY MATCH (p:person)-[:knows]->(p1:person) return union_value(age := p.age), union_value(age := p1.age) +-LOG UnionValueOnExpr +-STATEMENT MATCH (p:person)-[:knows]->(p1:person) return union_value(age := p.age), union_value(age := p1.age) ---- 14 35|30 35|45 @@ -28,8 +28,8 @@ 20|25 20|40 --NAME UnionValueOnList --QUERY MATCH (p:person) RETURN union_value(workedHours := p.workedHours) +-LOG UnionValueOnList +-STATEMENT MATCH (p:person) RETURN union_value(workedHours := p.workedHours) ---- 8 [10,5] [12,8] @@ -40,18 +40,18 @@ [1] [10,11,12,3,4,5,6,7] --NAME UnionTagOnLiteral --QUERY RETURN union_tag(union_value(numTuples := 100)) +-LOG UnionTagOnLiteral +-STATEMENT RETURN union_tag(union_value(numTuples := 100)) ---- 1 NUMTUPLES --NAME UnionTagOnLongString --QUERY RETURN union_tag(union_value(longStringField := "This is a long string")) +-LOG UnionTagOnLongString +-STATEMENT RETURN union_tag(union_value(longStringField := "This is a long string")) ---- 1 LONGSTRINGFIELD --NAME UnionTagOnExpr --QUERY MATCH (p:person)-[:knows]->(p1:person) return union_tag(union_value(age := p.age)), union_tag(union_value(PERSON_id := p1.ID)) +-LOG UnionTagOnExpr +-STATEMENT MATCH (p:person)-[:knows]->(p1:person) return union_tag(union_value(age := p.age)), union_tag(union_value(PERSON_id := p1.ID)) ---- 14 AGE|PERSON_ID AGE|PERSON_ID @@ -68,13 +68,13 @@ AGE|PERSON_ID AGE|PERSON_ID AGE|PERSON_ID --NAME UnionExtractOnLiteral --QUERY RETURN union_extract(union_value(numTuples := 100), 'numTuples') +-LOG UnionExtractOnLiteral +-STATEMENT RETURN union_extract(union_value(numTuples := 100), 'numTuples') ---- 1 100 --NAME UnionExtractOnFlatUnflatExpr --QUERY MATCH (p:person)-[:knows]->(p1:person) return union_extract(union_value(age := p.age), 'age'), union_extract(union_value(age := p1.age), 'age') +-LOG UnionExtractOnFlatUnflatExpr +-STATEMENT MATCH (p:person)-[:knows]->(p1:person) return union_extract(union_value(age := p.age), 'age'), union_extract(union_value(age := p1.age), 'age') ---- 14 35|30 35|45 diff --git a/test/test_files/tinysnb/match/four_hop.test b/test/test_files/tinysnb/match/four_hop.test index 5bc9cf144b..efbf544e08 100644 --- a/test/test_files/tinysnb/match/four_hop.test +++ b/test/test_files/tinysnb/match/four_hop.test @@ -5,14 +5,14 @@ -CASE MatchFourHop --NAME FourHopKnowsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:knows]->(e:person) RETURN COUNT(*) +-LOG FourHopKnowsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:knows]->(e:person) RETURN COUNT(*) -ENUMERATE ---- 1 324 --NAME FourHopThreeKnowsOneStudyAtTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:studyAt]->(e:organisation) RETURN COUNT(*) +-LOG FourHopThreeKnowsOneStudyAtTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person)-[e4:studyAt]->(e:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 54 diff --git a/test/test_files/tinysnb/match/multi_label.test b/test/test_files/tinysnb/match/multi_label.test index fb022d7852..2fb9227fc9 100644 --- a/test/test_files/tinysnb/match/multi_label.test +++ b/test/test_files/tinysnb/match/multi_label.test @@ -5,50 +5,50 @@ -CASE MatchMultiLabel --NAME UnLabelTest --QUERY MATCH () RETURN COUNT(*) +-LOG UnLabelTest +-STATEMENT MATCH () RETURN COUNT(*) ---- 1 14 --NAME MultiLabelNodeTest --QUERY MATCH (a:organisation:person) RETURN COUNT(*) +-LOG MultiLabelNodeTest +-STATEMENT MATCH (a:organisation:person) RETURN COUNT(*) ---- 1 11 --NAME MultiLabelNodeTest --QUERY MATCH (a:organisation:person) MATCH (a:movies) RETURN COUNT(*) +-LOG MultiLabelNodeTest +-STATEMENT MATCH (a:organisation:person) MATCH (a:movies) RETURN COUNT(*) ---- 1 14 --NAME MultiLabelCrossProductTest --QUERY MATCH (a:person), (b:person), (c:person:movies) RETURN COUNT(*) +-LOG MultiLabelCrossProductTest +-STATEMENT MATCH (a:person), (b:person), (c:person:movies) RETURN COUNT(*) -ENUMERATE ---- 1 704 --NAME UnLabelOneHopTest --QUERY MATCH ()-[]->() RETURN COUNT(*) +-LOG UnLabelOneHopTest +-STATEMENT MATCH ()-[]->() RETURN COUNT(*) ---- 1 30 --NAME MultiLabelOneHopTest1 --QUERY MATCH (a:person)-[e:knows|:marries]->(b:person) RETURN COUNT(*) +-LOG MultiLabelOneHopTest1 +-STATEMENT MATCH (a:person)-[e:knows|:marries]->(b:person) RETURN COUNT(*) ---- 1 17 --NAME MultiLabelOneHopTest2 --QUERY MATCH (a:person)-[e:knows|:marries|:studyAt|:workAt|:meets]->(b:person) RETURN COUNT(*) +-LOG MultiLabelOneHopTest2 +-STATEMENT MATCH (a:person)-[e:knows|:marries|:studyAt|:workAt|:meets]->(b:person) RETURN COUNT(*) ---- 1 24 --NAME MultiLabelOneHopTest3 --QUERY MATCH (a:person)-[e:knows|:marries|:studyAt|:workAt|:meets]->(b:organisation) RETURN COUNT(*) +-LOG MultiLabelOneHopTest3 +-STATEMENT MATCH (a:person)-[e:knows|:marries|:studyAt|:workAt|:meets]->(b:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME MultiLabelOneHopTest4 --QUERY MATCH (a:person)-[:studyAt|:knows]->(b:person:organisation) RETURN COUNT(*) +-LOG MultiLabelOneHopTest4 +-STATEMENT MATCH (a:person)-[:studyAt|:knows]->(b:person:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 17 diff --git a/test/test_files/tinysnb/match/multi_query_part.test b/test/test_files/tinysnb/match/multi_query_part.test index cb639c185b..7fe89a5781 100644 --- a/test/test_files/tinysnb/match/multi_query_part.test +++ b/test/test_files/tinysnb/match/multi_query_part.test @@ -5,8 +5,8 @@ -CASE MatchMultiQuery --NAME MultiQueryOneHopKnowsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH b.age AS m RETURN m +-LOG MultiQueryOneHopKnowsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH b.age AS m RETURN m -ENUMERATE ---- 14 20 @@ -24,26 +24,26 @@ 45 45 --NAME MultiQueryTwoHopKnowsTest --QUERY MATCH (a:person)-[:knows]->(b:person) WITH b AS m WITH m AS n MATCH (n)-[e2:knows]->(c:person) RETURN COUNT(*) +-LOG MultiQueryTwoHopKnowsTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WITH b AS m WITH m AS n MATCH (n)-[e2:knows]->(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 36 --NAME MultiQueryThreeHopTwoKnowsOneWorkAtTest --QUERY MATCH (a:person)-[e1:knows]->(b:person) WITH * MATCH (b)-[e2:knows]->(c:person)-[e3:workAt]->(d:organisation) RETURN COUNT(*) +-LOG MultiQueryThreeHopTwoKnowsOneWorkAtTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person) WITH * MATCH (b)-[e2:knows]->(c:person)-[e3:workAt]->(d:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 18 --NAME OpenWedgeKnowsTest3 --QUERY MATCH (b:person)<-[e1:knows]-(a:person) WITH a AS k MATCH (k)-[e2:knows]->(c:person),(k)-[e3:knows]->(d:person) RETURN COUNT(*) +-LOG OpenWedgeKnowsTest3 +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person) WITH a AS k MATCH (k)-[e2:knows]->(c:person),(k)-[e3:knows]->(d:person) RETURN COUNT(*) -ENUMERATE ---- 1 116 --NAME MultiQueryFourHopKnowsTest +-LOG MultiQueryFourHopKnowsTest -ENUMERATE --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WITH c MATCH (c)-[e3:knows]->(d:person)-[e4:knows]->(e:person) RETURN COUNT(*) +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) WITH c MATCH (c)-[e3:knows]->(d:person)-[e4:knows]->(e:person) RETURN COUNT(*) ---- 1 324 diff --git a/test/test_files/tinysnb/match/node.test b/test/test_files/tinysnb/match/node.test index 78c56f248b..622998762b 100644 --- a/test/test_files/tinysnb/match/node.test +++ b/test/test_files/tinysnb/match/node.test @@ -5,12 +5,12 @@ -CASE MatchNode --NAME node1 --QUERY MATCH (a:person /* returns all person */) RETURN COUNT(*) +-LOG node1 +-STATEMENT MATCH (a:person /* returns all person */) RETURN COUNT(*) ---- 1 8 --NAME node2 --QUERY MATCH (a:organisation) RETURN COUNT(*) --Returns the total number of nodes in organisation +-LOG node2 +-STATEMENT MATCH (a:organisation) RETURN COUNT(*) --Returns the total number of nodes in organisation ---- 1 3 diff --git a/test/test_files/tinysnb/match/one_hop.test b/test/test_files/tinysnb/match/one_hop.test index 7489228554..d6be81a042 100644 --- a/test/test_files/tinysnb/match/one_hop.test +++ b/test/test_files/tinysnb/match/one_hop.test @@ -5,26 +5,26 @@ -CASE MatchOneHop --NAME OneHopKnowsTest --QUERY MATCH (a:person)-[e:knows]->(b:person) RETURN COUNT(*) +-LOG OneHopKnowsTest +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) RETURN COUNT(*) -ENUMERATE ---- 1 14 --NAME OneHopStudyAtTest --QUERY MATCH (a:person)-[e1:studyAt]->(b:organisation) RETURN COUNT(*) +-LOG OneHopStudyAtTest +-STATEMENT MATCH (a:person)-[e1:studyAt]->(b:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 3 --NAME OneHopWorkAtTest --QUERY MATCH (a:person)-[e1:workAt]->(b:organisation) RETURN COUNT(*) +-LOG OneHopWorkAtTest +-STATEMENT MATCH (a:person)-[e1:workAt]->(b:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 3 --NAME OneHopCrossProductTest --QUERY MATCH (a:person)-[:knows]->(b:person), (c:person)-[:knows]->(d:person) RETURN COUNT(*) +-LOG OneHopCrossProductTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person), (c:person)-[:knows]->(d:person) RETURN COUNT(*) -ENUMERATE ---- 1 196 diff --git a/test/test_files/tinysnb/match/three_hop.test b/test/test_files/tinysnb/match/three_hop.test index 1246f16920..47ef2dcd2b 100644 --- a/test/test_files/tinysnb/match/three_hop.test +++ b/test/test_files/tinysnb/match/three_hop.test @@ -5,30 +5,30 @@ -CASE MatchThreeHop --NAME ThreeHopTwoKnowsOneWorkAtTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:workAt]->(d:organisation) RETURN COUNT(*) +-LOG ThreeHopTwoKnowsOneWorkAtTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:workAt]->(d:organisation) RETURN COUNT(*) ---- 1 18 --NAME OpenWedgeKnowsTest3 --QUERY MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person),(a)-[e3:knows]->(d:person) RETURN COUNT(*) +-LOG OpenWedgeKnowsTest3 +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person),(a)-[e3:knows]->(d:person) RETURN COUNT(*) ---- 1 116 --NAME ThreeHopKnowsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person) RETURN COUNT(*) +-LOG ThreeHopKnowsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person) RETURN COUNT(*) -ENUMERATE ---- 1 108 --NAME ThreeHopTwoKnowsOneStudyAtTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:studyAt]->(d:organisation) RETURN COUNT(*) +-LOG ThreeHopTwoKnowsOneStudyAtTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:studyAt]->(d:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 18 --NAME OpenWedgeKnowsTest4 --QUERY MATCH (b:person)-[e1:knows]->(a:person)<-[e2:knows]-(c:person),(a)<-[e3:knows]-(d:person) RETURN COUNT(*) +-LOG OpenWedgeKnowsTest4 +-STATEMENT MATCH (b:person)-[e1:knows]->(a:person)<-[e2:knows]-(c:person),(a)<-[e3:knows]-(d:person) RETURN COUNT(*) -ENUMERATE ---- 1 110 diff --git a/test/test_files/tinysnb/match/two_hop.test b/test/test_files/tinysnb/match/two_hop.test index 36a3957b4a..b217dca664 100644 --- a/test/test_files/tinysnb/match/two_hop.test +++ b/test/test_files/tinysnb/match/two_hop.test @@ -5,57 +5,57 @@ -CASE MatchTwoHop --NAME TwoHopKnowsStudyAtTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) +-LOG TwoHopKnowsStudyAtTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) ---- 1 7 --NAME TwoHopKnowsWorkAtTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:workAt]->(c:organisation) RETURN COUNT(*) +-LOG TwoHopKnowsWorkAtTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:workAt]->(c:organisation) RETURN COUNT(*) ---- 1 6 --NAME OpenWedgeKnowsTest1 --QUERY MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person) RETURN COUNT(*) +-LOG OpenWedgeKnowsTest1 +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person) RETURN COUNT(*) ---- 1 40 --NAME OpenWedgeWorkAtTest1 --QUERY MATCH (b:organisation)<-[e1:workAt]-(a:person)-[e2:workAt]->(c:organisation) RETURN COUNT(*) +-LOG OpenWedgeWorkAtTest1 +-STATEMENT MATCH (b:organisation)<-[e1:workAt]-(a:person)-[e2:workAt]->(c:organisation) RETURN COUNT(*) ---- 1 3 --NAME OpenWedgeStudyAtTest --QUERY MATCH (b:organisation)<-[e1:studyAt]-(a:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) +-LOG OpenWedgeStudyAtTest +-STATEMENT MATCH (b:organisation)<-[e1:studyAt]-(a:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) ---- 1 3 --NAME TwoHopKnowsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) RETURN COUNT(*) +-LOG TwoHopKnowsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 36 --NAME OpenWedgeKnowsStudyAtTest --QUERY MATCH (b:person)<-[e1:knows]-(a:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) +-LOG OpenWedgeKnowsStudyAtTest +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME OpenWedgeKnowsWorkAtTest --QUERY MATCH (b:person)<-[e1:knows]-(a:person)-[e2:workAt]->(c:organisation) RETURN COUNT(*) +-LOG OpenWedgeKnowsWorkAtTest +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person)-[e2:workAt]->(c:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 8 --NAME OpenWedgeKnowsTest2 --QUERY MATCH (b:person)-[e1:knows]->(a:person)<-[e2:knows]-(c:person) RETURN COUNT(*) +-LOG OpenWedgeKnowsTest2 +-STATEMENT MATCH (b:person)-[e1:knows]->(a:person)<-[e2:knows]-(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 38 --NAME OpenWedgeWorkAtTest2 --QUERY MATCH (b:organisation)<-[e1:workAt]-(a:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) +-LOG OpenWedgeWorkAtTest2 +-STATEMENT MATCH (b:organisation)<-[e1:workAt]-(a:person)-[e2:studyAt]->(c:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 0 diff --git a/test/test_files/tinysnb/match/undirected.test b/test/test_files/tinysnb/match/undirected.test index eed7f1c6c4..1be766d47f 100644 --- a/test/test_files/tinysnb/match/undirected.test +++ b/test/test_files/tinysnb/match/undirected.test @@ -5,8 +5,8 @@ -CASE MatchUndirected --NAME UndirKnows1 --QUERY MATCH (a:person)-[:knows]-(b:person) WHERE b.fName = "Bob" RETURN a.fName; +-LOG UndirKnows1 +-STATEMENT MATCH (a:person)-[:knows]-(b:person) WHERE b.fName = "Bob" RETURN a.fName; -ENUMERATE ---- 6 Alice @@ -16,8 +16,8 @@ Alice Carol Dan --NAME UndirKnows2 --QUERY MATCH (a:person)-[:knows]-(b:person)-[:knows]-(c:person) WHERE a.gender = 1 AND b.gender = 2 AND c.fName = "Bob" RETURN a.fName, b.fName; +-LOG UndirKnows2 +-STATEMENT MATCH (a:person)-[:knows]-(b:person)-[:knows]-(c:person) WHERE a.gender = 1 AND b.gender = 2 AND c.fName = "Bob" RETURN a.fName, b.fName; -ENUMERATE ---- 8 Alice|Dan @@ -29,20 +29,20 @@ Carol|Dan Alice|Dan Carol|Dan --NAME UndirMultiLabel1 --QUERY MATCH (a:person:organisation)-[:meets|:marries|:workAt]-(b:person:organisation) RETURN COUNT(*); +-LOG UndirMultiLabel1 +-STATEMENT MATCH (a:person:organisation)-[:meets|:marries|:workAt]-(b:person:organisation) RETURN COUNT(*); -ENUMERATE ---- 1 26 --NAME UndirMultiLabel2 --QUERY MATCH (a:person)-[:studyAt|:meets]-(b:person:organisation) RETURN COUNT(*); +-LOG UndirMultiLabel2 +-STATEMENT MATCH (a:person)-[:studyAt|:meets]-(b:person:organisation) RETURN COUNT(*); -ENUMERATE ---- 1 20 --NAME UndirMultiLabel3 --QUERY MATCH (a:person)-[:meets|:marries|:knows]-(b:person)-[:knows|:meets]-(c:person) WHERE c.fName = "Farooq" AND a.fName <> "Farooq" RETURN a.fName, b.fName; +-LOG UndirMultiLabel3 +-STATEMENT MATCH (a:person)-[:meets|:marries|:knows]-(b:person)-[:knows|:meets]-(c:person) WHERE c.fName = "Farooq" AND a.fName <> "Farooq" RETURN a.fName, b.fName; -ENUMERATE ---- 13 Carol|Elizabeth @@ -59,14 +59,14 @@ Dan|Carol Elizabeth|Carol Dan|Carol --NAME UndirUnlabelled --QUERY MATCH (a:person)-[]-() RETURN COUNT(*); +-LOG UndirUnlabelled +-STATEMENT MATCH (a:person)-[]-() RETURN COUNT(*); -ENUMERATE ---- 1 60 --NAME UndirPattern --QUERY MATCH ()-[:studyAt]-(a)-[:meets]-()-[:workAt]-() RETURN a.fName; +-LOG UndirPattern +-STATEMENT MATCH ()-[:studyAt]-(a)-[:meets]-()-[:workAt]-() RETURN a.fName; -ENUMERATE ---- 2 Farooq diff --git a/test/test_files/tinysnb/optional_match/multi_label.test b/test/test_files/tinysnb/optional_match/multi_label.test index 31fcc63382..0a232d0741 100644 --- a/test/test_files/tinysnb/optional_match/multi_label.test +++ b/test/test_files/tinysnb/optional_match/multi_label.test @@ -5,13 +5,13 @@ -CASE OptionalMatchMultiLabel --NAME MultiLabelTest1 --QUERY MATCH (a:organisation) OPTIONAL MATCH (a)<-[:knows|:studyAt]-(b:person) RETURN COUNT(*) +-LOG MultiLabelTest1 +-STATEMENT MATCH (a:organisation) OPTIONAL MATCH (a)<-[:knows|:studyAt]-(b:person) RETURN COUNT(*) ---- 1 5 --NAME MultiLabelTest2 --QUERY MATCH (a:organisation:person) OPTIONAL MATCH (a)-[:studyAt|:workAt]->(b:person:organisation) RETURN COUNT(*) +-LOG MultiLabelTest2 +-STATEMENT MATCH (a:organisation:person) OPTIONAL MATCH (a)-[:studyAt|:workAt]->(b:person:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 11 diff --git a/test/test_files/tinysnb/optional_match/optional_match.test b/test/test_files/tinysnb/optional_match/optional_match.test index 9eeb672bdc..b13fe0b71a 100644 --- a/test/test_files/tinysnb/optional_match/optional_match.test +++ b/test/test_files/tinysnb/optional_match/optional_match.test @@ -6,84 +6,84 @@ -CASE OptionalMatch # Note: Correlated optional match test should be enabled once hash join supports generic join key data type. -#-NAME CorrelatedOptionalMatchTest1 -#-QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) WHERE b.age > a.age RETURN COUNT(*) +#-LOG CorrelatedOptionalMatchTest1 +#-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) WHERE b.age > a.age RETURN COUNT(*) #-ENUMERATE #---- 1 #12 -#-NAME CorrelatedOptionalMatchTest2 -#-QUERY MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (b)-[:knows]->(c:person) WHERE c.age > b.age RETURN COUNT(*) +#-LOG CorrelatedOptionalMatchTest2 +#-STATEMENT MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (b)-[:knows]->(c:person) WHERE c.age > b.age RETURN COUNT(*) #-ENUMERATE #---- 1 #23 -#-NAME CorrelatedOptionalMatchTest3 -#-QUERY MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (a)-[:knows]->(c:person), (b)-[:knows]->(c) RETURN COUNT(*) +#-LOG CorrelatedOptionalMatchTest3 +#-STATEMENT MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (a)-[:knows]->(c:person), (b)-[:knows]->(c) RETURN COUNT(*) #-ENUMERATE #---- 1 #26 --NAME MultiKeyOptionalMatchTest1 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID=0 OPTIONAL MATCH (a)-[:knows]->(c:person), (b)-[:knows]->(c) RETURN COUNT(*) +-LOG MultiKeyOptionalMatchTest1 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID=0 OPTIONAL MATCH (a)-[:knows]->(c:person), (b)-[:knows]->(c) RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME MultiKeyOptionalMatchTest2 --QUERY MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (a)-[:studyAt]->(c:organisation), (b)-[:studyAt]->(c) RETURN COUNT(*) +-LOG MultiKeyOptionalMatchTest2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (a)-[:studyAt]->(c:organisation), (b)-[:studyAt]->(c) RETURN COUNT(*) -ENUMERATE ---- 1 14 --NAME MixedMatchTest1 --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) MATCH (b)-[:knows]->(c:person) RETURN COUNT(*) +-LOG MixedMatchTest1 +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) MATCH (b)-[:knows]->(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 36 --NAME MixedMatchTest2 --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) MATCH (b)-[:studyAt]->(c:organisation) RETURN COUNT(*) +-LOG MixedMatchTest2 +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) MATCH (b)-[:studyAt]->(c:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 7 --NAME MixedMatchTest3 --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) WHERE b.fName='Farooq' MATCH (b)<-[:knows]-(c:person) RETURN COUNT(*) +-LOG MixedMatchTest3 +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) WHERE b.fName='Farooq' MATCH (b)<-[:knows]-(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 1 --NAME MixedMatchTest4 --QUERY match (a:person)-[:knows]->(b:person) optional match (a)-[:knows]->(c:person) match (b)-[:knows]->(c) return count(*) +-LOG MixedMatchTest4 +-STATEMENT match (a:person)-[:knows]->(b:person) optional match (a)-[:knows]->(c:person) match (b)-[:knows]->(c) return count(*) -ENUMERATE ---- 1 24 --NAME MixedMatchHashJoinTest --QUERY MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (b)-[:knows]->(c:person) MATCH (c)-[:knows]->(d:person)-[:knows]->(e:person) RETURN COUNT(*) +-LOG MixedMatchHashJoinTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) OPTIONAL MATCH (b)-[:knows]->(c:person) MATCH (c)-[:knows]->(d:person)-[:knows]->(e:person) RETURN COUNT(*) -ENUMERATE ---- 1 324 --NAME OptionalReadStringPropertyTest --QUERY MATCH (a:person) WHERE a.fName='Elizabeth' OR a.fName='Hubert Blaine Wolfeschlegelsteinhausenbergerdorff' OPTIONAL MATCH (a)-[:knows]->(b:person) RETURN a.fName, b.fName +-LOG OptionalReadStringPropertyTest +-STATEMENT MATCH (a:person) WHERE a.fName='Elizabeth' OR a.fName='Hubert Blaine Wolfeschlegelsteinhausenbergerdorff' OPTIONAL MATCH (a)-[:knows]->(b:person) RETURN a.fName, b.fName -ENUMERATE ---- 3 Elizabeth|Farooq Elizabeth|Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff| --NAME OptionalReturnTest --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.fName='Alice' OPTIONAL MATCH (b)-[:studyAt]->(c:organisation) RETURN c.orgCode +-LOG OptionalReturnTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.fName='Alice' OPTIONAL MATCH (b)-[:studyAt]->(c:organisation) RETURN c.orgCode -ENUMERATE ---- 3 325 --NAME OptionalReturnTest2 --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) WHERE b.fName='Farooq' RETURN a.fName, b.fName +-LOG OptionalReturnTest2 +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) WHERE b.fName='Farooq' RETURN a.fName, b.fName -ENUMERATE ---- 8 Alice| @@ -95,8 +95,8 @@ Farooq| Greg| Hubert Blaine Wolfeschlegelsteinhausenbergerdorff| --NAME OptionalListExtendCountTest --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:studyAt]->(b:organisation) RETURN a.fName, b.name +-LOG OptionalListExtendCountTest +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:studyAt]->(b:organisation) RETURN a.fName, b.name -ENUMERATE ---- 8 Alice|ABFsUni @@ -108,20 +108,20 @@ Farooq|ABFsUni Greg| Hubert Blaine Wolfeschlegelsteinhausenbergerdorff| --NAME OptionalListExtendTest2 --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person)-[:knows]->(c:person) RETURN COUNT(*) +-LOG OptionalListExtendTest2 +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person)-[:knows]->(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 40 --NAME OptionalColExtendTest --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:workAt]->(b:organisation) RETURN COUNT(*) +-LOG OptionalColExtendTest +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:workAt]->(b:organisation) RETURN COUNT(*) -ENUMERATE ---- 1 8 --NAME MultipleOptionalCountTest --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) OPTIONAL MATCH (b)-[:knows]->(c:person) RETURN COUNT(*) +-LOG MultipleOptionalCountTest +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows]->(b:person) OPTIONAL MATCH (b)-[:knows]->(c:person) RETURN COUNT(*) -ENUMERATE ---- 1 41 diff --git a/test/test_files/tinysnb/order_by/multi_label.test b/test/test_files/tinysnb/order_by/multi_label.test index 162726c654..83d0e57e55 100644 --- a/test/test_files/tinysnb/order_by/multi_label.test +++ b/test/test_files/tinysnb/order_by/multi_label.test @@ -5,8 +5,8 @@ -CASE OrderByMultiLabel --NAME MultiLabelTest --QUERY MATCH (a:person)-[:studyAt|:workAt]->(b:organisation) return b.orgCode order by b.ID desc +-LOG MultiLabelTest +-STATEMENT MATCH (a:person)-[:studyAt|:workAt]->(b:organisation) return b.orgCode order by b.ID desc -CHECK_ORDER -ENUMERATE ---- 6 @@ -17,8 +17,8 @@ 325 325 -#-NAME MultiLabelTest2 -#-QUERY MATCH (a:person)-[e:marries|:workAt]->(b:person) return a.ID, b.ID order by ID(e) desc LIMIT 4 +#-LOG MultiLabelTest2 +#-STATEMENT MATCH (a:person)-[e:marries|:workAt]->(b:person) return a.ID, b.ID order by ID(e) desc LIMIT 4 #-ENUMERATE #---- 4 #7|8 diff --git a/test/test_files/tinysnb/order_by/serial.test b/test/test_files/tinysnb/order_by/serial.test index 6c87bb1682..a849a38ae8 100644 --- a/test/test_files/tinysnb/order_by/serial.test +++ b/test/test_files/tinysnb/order_by/serial.test @@ -5,8 +5,8 @@ -CASE OrderBySerial --NAME OrderBySerial --QUERY MATCH (p:person) RETURN p.ID ORDER BY p.ID DESC +-LOG OrderBySerial +-STATEMENT MATCH (p:person) RETURN p.ID ORDER BY p.ID DESC ---- 8 7 6 diff --git a/test/test_files/tinysnb/order_by/single_label.test b/test/test_files/tinysnb/order_by/single_label.test index 39e72da174..9182c23a82 100644 --- a/test/test_files/tinysnb/order_by/single_label.test +++ b/test/test_files/tinysnb/order_by/single_label.test @@ -5,8 +5,8 @@ -CASE OrderBySingleLabel --NAME OrderByInt64Test --QUERY MATCH (p:person) RETURN p.ID, p.age ORDER BY p.age + p.ID +-LOG OrderByInt64Test +-STATEMENT MATCH (p:person) RETURN p.ID, p.age ORDER BY p.age + p.ID -CHECK_ORDER -PARALLELISM 3 ---- 8 @@ -19,24 +19,24 @@ 9|40 10|83 --NAME OrderByInt32Test --QUERY MATCH (m:movies) RETURN m.length ORDER BY m.length +-LOG OrderByInt32Test +-STATEMENT MATCH (m:movies) RETURN m.length ORDER BY m.length -CHECK_ORDER ---- 3 126 298 2544 --NAME OrderByInt16Test --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN e.length ORDER BY e.length +-LOG OrderByInt16Test +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN e.length ORDER BY e.length -CHECK_ORDER ---- 3 5 22 55 --NAME OrderByBooleanTest --QUERY MATCH (p:person) RETURN p.isStudent ORDER BY p.isStudent desc +-LOG OrderByBooleanTest +-STATEMENT MATCH (p:person) RETURN p.isStudent ORDER BY p.isStudent desc -CHECK_ORDER -PARALLELISM 3 ---- 8 @@ -50,8 +50,8 @@ False False --NAME OrderByDoubleTest --QUERY MATCH (p:person) RETURN p.eyeSight ORDER BY p.eyeSight +-LOG OrderByDoubleTest +-STATEMENT MATCH (p:person) RETURN p.eyeSight ORDER BY p.eyeSight -CHECK_ORDER -PARALLELISM 3 ---- 8 @@ -64,8 +64,8 @@ False 5.000000 5.100000 --NAME OrderByFloatTest --QUERY MATCH (p:person) RETURN p.height ORDER BY p.height +-LOG OrderByFloatTest +-STATEMENT MATCH (p:person) RETURN p.height ORDER BY p.height -CHECK_ORDER -PARALLELISM 3 ---- 8 @@ -78,8 +78,8 @@ False 1.600000 1.731000 --NAME OrderByDateTest --QUERY MATCH (p:person) RETURN p.birthdate ORDER BY p.birthdate desc +-LOG OrderByDateTest +-STATEMENT MATCH (p:person) RETURN p.birthdate ORDER BY p.birthdate desc -CHECK_ORDER -PARALLELISM 3 ---- 8 @@ -92,8 +92,8 @@ False 1900-01-01 1900-01-01 --NAME OrderByTimestampTest --QUERY MATCH (p:person) RETURN p.registerTime ORDER BY p.registerTime +-LOG OrderByTimestampTest +-STATEMENT MATCH (p:person) RETURN p.registerTime ORDER BY p.registerTime -CHECK_ORDER -PARALLELISM 3 ---- 8 @@ -106,8 +106,8 @@ False 2023-02-21 13:25:30 2031-11-30 12:25:30 --NAME OrderByIntervalTest --QUERY MATCH (p:person) RETURN p.lastJobDuration ORDER BY p.lastJobDuration desc +-LOG OrderByIntervalTest +-STATEMENT MATCH (p:person) RETURN p.lastJobDuration ORDER BY p.lastJobDuration desc -CHECK_ORDER -PARALLELISM 2 ---- 8 @@ -120,8 +120,8 @@ False 48:24:11 00:18:00.024 --NAME OrderByStringTest --QUERY MATCH (p:person) RETURN p.fName ORDER BY p.fName desc +-LOG OrderByStringTest +-STATEMENT MATCH (p:person) RETURN p.fName ORDER BY p.fName desc -CHECK_ORDER -PARALLELISM 2 ---- 8 @@ -134,8 +134,8 @@ Carol Bob Alice --NAME OrderByBlobTest --QUERY MATCH (m:movies) RETURN m.content ORDER BY m.content DESC +-LOG OrderByBlobTest +-STATEMENT MATCH (m:movies) RETURN m.content ORDER BY m.content DESC -CHECK_ORDER -PARALLELISM 2 ---- 3 @@ -143,8 +143,8 @@ Alice \xAA\xABinteresting\x0B pure ascii characters --NAME OrderByStrMultipleColTest --QUERY MATCH (p:person) RETURN p.age, p.eyeSight ORDER BY p.isWorker desc, p.age, p.eyeSight desc +-LOG OrderByStrMultipleColTest +-STATEMENT MATCH (p:person) RETURN p.age, p.eyeSight ORDER BY p.isWorker desc, p.age, p.eyeSight desc -CHECK_ORDER -PARALLELISM 2 ---- 8 @@ -157,8 +157,8 @@ pure ascii characters 35|5.000000 40|4.900000 --NAME OrderByProjectionTest --QUERY MATCH (a:person)-[:knows]->(b:person) with b return b.fName order by b.fName desc +-LOG OrderByProjectionTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) with b return b.fName order by b.fName desc -CHECK_ORDER -ENUMERATE -PARALLELISM 7 @@ -178,8 +178,8 @@ Alice Alice Alice --NAME OrderByThreeHopTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person) RETURN a.fName order by d.age desc, c.age asc, b.age asc, a.age desc limit 10 +-LOG OrderByThreeHopTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person) RETURN a.fName order by d.age desc, c.age asc, b.age asc, a.age desc limit 10 -CHECK_ORDER -ENUMERATE ---- 10 @@ -196,8 +196,8 @@ Carol #If the payload column and the orderBy key column are in different dataChunks and one of them is unflat, \ #the order by scanner can only scan one tuple from factorizedTable at a time. --NAME OrderByScanSingleTupleTest --QUERY MATCH (a:person)-[:knows]->(b:person) return a.fName order by b.fName, a.fName +-LOG OrderByScanSingleTupleTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) return a.fName order by b.fName, a.fName -CHECK_ORDER -ENUMERATE ---- 14 @@ -216,12 +216,12 @@ Carol Elizabeth Elizabeth --NAME OrderByEmptyResult --QUERY MATCH (p:person) WHERE p.age > 100 RETURN p.age ORDER BY p.age +-LOG OrderByEmptyResult +-STATEMENT MATCH (p:person) WHERE p.age > 100 RETURN p.age ORDER BY p.age ---- 0 --NAME OrderByAggregateTest1 --QUERY MATCH (a:person)-[:knows]->(b:person) return a.age, COUNT(b) as c ORDER BY a.age +-LOG OrderByAggregateTest1 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) return a.age, COUNT(b) as c ORDER BY a.age -CHECK_ORDER -ENUMERATE ---- 4 @@ -230,8 +230,8 @@ Elizabeth 35|3 45|3 --NAME OrderByAggregateTest2 --QUERY MATCH (a:person)-[:knows]->(b:person) return a.gender, COUNT(b) ORDER BY COUNT(b) DESC +-LOG OrderByAggregateTest2 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) return a.gender, COUNT(b) ORDER BY COUNT(b) DESC -CHECK_ORDER -ENUMERATE ---- 2 diff --git a/test/test_files/tinysnb/parquet/tinysnb_parquet.test b/test/test_files/tinysnb/parquet/tinysnb_parquet.test index a1541a98dd..dedead6ab3 100644 --- a/test/test_files/tinysnb/parquet/tinysnb_parquet.test +++ b/test/test_files/tinysnb/parquet/tinysnb_parquet.test @@ -8,8 +8,8 @@ -CASE TinySnbParquet --NAME AccAspMultiLabelParquet --QUERY MATCH (a:person)-[e1:knows|:studyAt|:workAt]->(b:person:organisation) WHERE a.age > 35 RETURN b.fName, b.name +-LOG AccAspMultiLabelParquet +-STATEMENT MATCH (a:person)-[e1:knows|:studyAt|:workAt]->(b:person:organisation) WHERE a.age > 35 RETURN b.fName, b.name -ENCODED_JOIN HJ(b._id){E(b)S(a)}{S(b)} ---- 4 Alice| @@ -17,8 +17,8 @@ Bob| Dan| |CsWork --NAME AggOneHopAggTestParquet --QUERY MATCH (a:person)-[:knows]->(b:person) RETURN a.age, a.gender, COUNT(*) +-LOG AggOneHopAggTestParquet +-STATEMENT MATCH (a:person)-[:knows]->(b:person) RETURN a.age, a.gender, COUNT(*) -ENUMERATE -PARALLELISM 2 ---- 5 @@ -28,28 +28,28 @@ Dan| 35|1|3 45|1|3 --NAME BinderErrorNodeTableNotExistParquet --QUERY MATCH (a:PERSON) RETURN COUNT(*) +-LOG BinderErrorNodeTableNotExistParquet +-STATEMENT MATCH (a:PERSON) RETURN COUNT(*) ---- error Binder exception: Node table PERSON does not exist. --NAME CyclicMultiLabelCyclicTestParquet --QUERY MATCH (a:person)-[:workAt|:knows|:studyAt]->(b:organisation), (a)-[:workAt]->(b) RETURN COUNT(*) +-LOG CyclicMultiLabelCyclicTestParquet +-STATEMENT MATCH (a:person)-[:workAt|:knows|:studyAt]->(b:organisation), (a)-[:workAt]->(b) RETURN COUNT(*) ---- 1 3 --NAME ExceptionReadVarlengthRelPropertyTest2Parquet --QUERY MATCH (a:person)-[e:knows*1..3]->(b:person) WHERE ID(e) = 0 RETURN COUNT(*) +-LOG ExceptionReadVarlengthRelPropertyTest2Parquet +-STATEMENT MATCH (a:person)-[e:knows*1..3]->(b:person) WHERE ID(e) = 0 RETURN COUNT(*) ---- error Binder exception: e has data type RECURSIVE_REL. (NODE,REL) was expected. --NAME FilterPersonNodesAgeFilteredTest2Parquet --QUERY MATCH (a:person) WHERE a.age < 25 RETURN COUNT(*) +-LOG FilterPersonNodesAgeFilteredTest2Parquet +-STATEMENT MATCH (a:person) WHERE a.age < 25 RETURN COUNT(*) ---- 1 2 --NAME FunctionRelLISTPropertyTestParquet --QUERY MATCH (a:person)-[e:knows]->(b:person) RETURN e.comments +-LOG FunctionRelLISTPropertyTestParquet +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) RETURN e.comments ---- 14 [rnme,m8sihsdnf2990nfiwf] [njnojppo9u0jkmf,fjiojioh9h9h89hph] @@ -66,46 +66,46 @@ Binder exception: e has data type RECURSIVE_REL. (NODE,REL) was expected. [ahu2333333333333,12weeeeeeeeeeeeeeeeee] [peweeeeeeeeeeeeeeeee,kowje9w0eweeeeeeeee] --NAME MatchOpenWedgeKnowsTest3Parquet --QUERY MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person),(a)-[e3:knows]->(d:person) RETURN COUNT(*) +-LOG MatchOpenWedgeKnowsTest3Parquet +-STATEMENT MATCH (b:person)<-[e1:knows]-(a:person)-[e2:knows]->(c:person),(a)-[e3:knows]->(d:person) RETURN COUNT(*) ---- 1 116 --NAME OptionalMatchMultiKeyOptionalMatchTest1Parquet --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE a.ID=0 OPTIONAL MATCH (a)-[:knows]->(c:person), (b)-[:knows]->(c) RETURN COUNT(*) +-LOG OptionalMatchMultiKeyOptionalMatchTest1Parquet +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID=0 OPTIONAL MATCH (a)-[:knows]->(c:person), (b)-[:knows]->(c) RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME OrderByInt32TestParquet --QUERY MATCH (m:movies) RETURN m.length ORDER BY m.length +-LOG OrderByInt32TestParquet +-STATEMENT MATCH (m:movies) RETURN m.length ORDER BY m.length -CHECK_ORDER ---- 3 126 298 2544 --NAME ProjectionReturnLiteral2Parquet --QUERY MATCH (a:person) RETURN 1 + 1, label(a) LIMIT 2 +-LOG ProjectionReturnLiteral2Parquet +-STATEMENT MATCH (a:person) RETURN 1 + 1, label(a) LIMIT 2 ---- 2 2|person 2|person --NAME ShortestPathSingleLabelTestParquet --QUERY MATCH (a:person)-[e:knows* SHORTEST 1..5]->(b:person) WHERE a.fName='Alice' RETURN b.fName, length(e) +-LOG ShortestPathSingleLabelTestParquet +-STATEMENT MATCH (a:person)-[e:knows* SHORTEST 1..5]->(b:person) WHERE a.fName='Alice' RETURN b.fName, length(e) ---- 3 Bob|1 Carol|1 Dan|1 --NAME ExistSubqueryTestParquet --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN COUNT(*) +-LOG ExistSubqueryTestParquet +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN COUNT(*) -ENUMERATE ---- 1 5 --NAME UnionTwoQueriesTestParquet --QUERY MATCH (a:person) RETURN a.age UNION MATCH (p:person) RETURN p.age +-LOG UnionTwoQueriesTestParquet +-STATEMENT MATCH (a:person) RETURN a.age UNION MATCH (p:person) RETURN p.age ---- 7 20 25 @@ -115,25 +115,25 @@ Dan|1 45 83 --NAME Unwind2Parquet --QUERY UNWIND [[1, 2, 3], [2, 3, 4], [3, 4, 1], [4, 1, 2]] AS x RETURN x +-LOG Unwind2Parquet +-STATEMENT UNWIND [[1, 2, 3], [2, 3, 4], [3, 4, 1], [4, 1, 2]] AS x RETURN x ---- 4 [1,2,3] [2,3,4] [3,4,1] [4,1,2] --NAME InsertNodeWithBoolIntDoubleTestParquet +-LOG InsertNodeWithBoolIntDoubleTestParquet -STATEMENT CREATE (:person {ID:80, isWorker:true,age:22,eyeSight:1.1}) ---- ok --QUERY MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.gender,a.isStudent, a.isWorker, a.age, a.eyeSight +-STATEMENT MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.gender,a.isStudent, a.isWorker, a.age, a.eyeSight ---- 3 10|2|False|True|83|4.900000 80|||True|22|1.100000 9|2|False|False|40|4.900000 --NAME NodeUndirectedTest2Parquet --QUERY MATCH (a)-[e:knows|:studyAt|:workAt*1..2]-(b) WHERE a.ID=7 RETURN e, label(b) +-LOG NodeUndirectedTest2Parquet +-STATEMENT MATCH (a)-[e:knows|:studyAt|:workAt*1..2]-(b) WHERE a.ID=7 RETURN e, label(b) ---- 8 [0:4,3:12,0:5,3:12,0:4]|person [0:4,3:12,0:5,4:2,1:0]|organisation diff --git a/test/test_files/tinysnb/projection/multi_label.test b/test/test_files/tinysnb/projection/multi_label.test index e918a73b17..56522eaed6 100644 --- a/test/test_files/tinysnb/projection/multi_label.test +++ b/test/test_files/tinysnb/projection/multi_label.test @@ -5,8 +5,8 @@ -CASE ProjectionMultiLabel --NAME MultiLabelReturn --QUERY MATCH (a:person:organisation) RETURN a.ID, label(a), a.fName, a.orgCode +-LOG MultiLabelReturn +-STATEMENT MATCH (a:person:organisation) RETURN a.ID, label(a), a.fName, a.orgCode ---- 11 0|person|Alice| 1|organisation||325 @@ -20,15 +20,15 @@ 9|person|Greg| 10|person|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff| --NAME MultiLabelFilter --QUERY MATCH (a) WHERE label(a)='organisation' RETURN a.orgCode +-LOG MultiLabelFilter +-STATEMENT MATCH (a) WHERE label(a)='organisation' RETURN a.orgCode ---- 3 325 934 824 --NAME MultiLabelReturnStar --QUERY MATCH (a:movies:organisation) RETURN * +-LOG MultiLabelReturnStar +-STATEMENT MATCH (a:movies:organisation) RETURN * ---- 6 (label:movies, 2:0, {ID:, name:Sóló cón tu párejâ, orgCode:, mark:, score:, history:, licenseValidInterval:, rating:, state:, length:126, note: this is a very very good movie, description:{RATING: 5.300000, VIEWS: 152, RELEASE: 2011-08-20 11:25:30, FILM: 2012-05-11}, content:\xAA\xABinteresting\x0B}) (label:movies, 2:1, {ID:, name:The 😂😃🧘🏻‍♂️🌍🌦️🍞🚗 movie, orgCode:, mark:, score:, history:, licenseValidInterval:, rating:, state:, length:2544, note: the movie is very very good, description:{RATING: 7.000000, VIEWS: 982, RELEASE: 2018-11-13 13:33:11, FILM: 2014-09-12}, content:\xAB\xCD}) diff --git a/test/test_files/tinysnb/projection/multi_query_part.test b/test/test_files/tinysnb/projection/multi_query_part.test index 3ea2b5ea09..cee65207bf 100644 --- a/test/test_files/tinysnb/projection/multi_query_part.test +++ b/test/test_files/tinysnb/projection/multi_query_part.test @@ -5,8 +5,8 @@ -CASE ProjectionMultiQuery --NAME PersonNodesWithTest --QUERY MATCH (a:person) WITH a RETURN a.age +-LOG PersonNodesWithTest +-STATEMENT MATCH (a:person) WITH a RETURN a.age ---- 8 35 30 @@ -17,8 +17,8 @@ 40 83 --NAME KnowsOneHopWithTest1 --QUERY MATCH (a:person) WHERE a.age>20 WITH a MATCH (a)-[e:knows]->(b:person) RETURN b.fName +-LOG KnowsOneHopWithTest1 +-STATEMENT MATCH (a:person) WHERE a.age>20 WITH a MATCH (a)-[e:knows]->(b:person) RETURN b.fName -ENUMERATE ---- 9 Alice @@ -31,8 +31,8 @@ Dan Dan Dan --NAME CrossProductTest --QUERY MATCH (a:person) WITH a.age AS s, a.fName as n MATCH (b:person) WHERE s=b.age RETURN n,b.fName,s +-LOG CrossProductTest +-STATEMENT MATCH (a:person) WITH a.age AS s, a.fName as n MATCH (b:person) WHERE s=b.age RETURN n,b.fName,s -ENUMERATE ---- 10 Alice|Alice|35 diff --git a/test/test_files/tinysnb/projection/single_label.test b/test/test_files/tinysnb/projection/single_label.test index 98ef93669c..10c2b51801 100644 --- a/test/test_files/tinysnb/projection/single_label.test +++ b/test/test_files/tinysnb/projection/single_label.test @@ -5,46 +5,46 @@ -CASE ProjectionSingleLabel --NAME ReturnLiteral3 --QUERY RETURN "abc", MIN(1) +-LOG ReturnLiteral3 +-STATEMENT RETURN "abc", MIN(1) ---- 1 abc|1 --NAME ReturnLiteral1 --QUERY RETURN 3 * 2, COUNT(*), MIN(2), COUNT(5) +-LOG ReturnLiteral1 +-STATEMENT RETURN 3 * 2, COUNT(*), MIN(2), COUNT(5) ---- 1 6|1|2|1 --NAME ReturnLiteral2 --QUERY MATCH (a:person) RETURN 1 + 1, label(a) LIMIT 2 +-LOG ReturnLiteral2 +-STATEMENT MATCH (a:person) RETURN 1 + 1, label(a) LIMIT 2 ---- 2 2|person 2|person --NAME ReturnNullLiteral --QUERY RETURN (NULL = NULL) IS NOT NULL, NULL, NULL = NULL +-LOG ReturnNullLiteral +-STATEMENT RETURN (NULL = NULL) IS NOT NULL, NULL, NULL = NULL ---- 1 False|| --NAME ReturnAggOnConst --QUERY MATCH (a:person) RETURN COUNT(3) +-LOG ReturnAggOnConst +-STATEMENT MATCH (a:person) RETURN COUNT(3) ---- 1 8 --NAME ReturnColumnWithSameExpression --QUERY MATCH (a:person) WHERE a.fName='Alice' RETURN a.age, a.age AS k +-LOG ReturnColumnWithSameExpression +-STATEMENT MATCH (a:person) WHERE a.fName='Alice' RETURN a.age, a.age AS k ---- 1 35|35 --NAME OrgNodesReturnStarTest --QUERY MATCH (a:organisation) RETURN * +-LOG OrgNodesReturnStarTest +-STATEMENT MATCH (a:organisation) RETURN * ---- 3 (label:organisation, 1:0, {ID:1, name:ABFsUni, orgCode:325, mark:3.700000, score:-2, history:10 years 5 months 13 hours 24 us, licenseValidInterval:3 years 5 days, rating:1.000000, state:{REVENUE: 138, LOCATION: ['toronto', 'montr,eal'], STOCK: {PRICE: [96,56], VOLUME: 1000}}}) (label:organisation, 1:1, {ID:4, name:CsWork, orgCode:934, mark:4.100000, score:-100, history:2 years 4 days 10 hours, licenseValidInterval:26 years 52 days 48:00:00, rating:0.780000, state:{REVENUE: 152, LOCATION: ["vanco,uver north area"], STOCK: {PRICE: [15,78,671], VOLUME: 432}}}) (label:organisation, 1:2, {ID:6, name:DEsWork, orgCode:824, mark:4.100000, score:7, history:2 years 4 hours 22 us 34 minutes, licenseValidInterval:82:00:00.1, rating:0.520000, state:{REVENUE: 558, LOCATION: ['very long city name', 'new york'], STOCK: {PRICE: [22], VOLUME: 99}}}) --NAME PersonNodesTestNull --QUERY MATCH (a:person) RETURN a.ID, a.fName STARTS WITH NULL, a.isWorker, a.isWorker AND null +-LOG PersonNodesTestNull +-STATEMENT MATCH (a:person) RETURN a.ID, a.fName STARTS WITH NULL, a.isWorker, a.isWorker AND null ---- 8 0||False|False 10||True| @@ -55,8 +55,8 @@ False|| 8||False|False 9||False|False --NAME PersonNodesTestString --QUERY MATCH (a:person) RETURN a.fName +-LOG PersonNodesTestString +-STATEMENT MATCH (a:person) RETURN a.fName ---- 8 Alice Bob @@ -67,8 +67,8 @@ Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME PersonNodesTestInt --QUERY MATCH (a:person) RETURN a.age +-LOG PersonNodesTestInt +-STATEMENT MATCH (a:person) RETURN a.age ---- 8 35 30 @@ -79,8 +79,8 @@ Hubert Blaine Wolfeschlegelsteinhausenbergerdorff 40 83 --NAME PersonNodesTestBoolean --QUERY MATCH (a:person) RETURN a.isStudent +-LOG PersonNodesTestBoolean +-STATEMENT MATCH (a:person) RETURN a.isStudent ---- 8 True True @@ -91,8 +91,8 @@ True False False --NAME PersonNodesTestDouble --QUERY MATCH (a:person) RETURN a.eyeSight +-LOG PersonNodesTestDouble +-STATEMENT MATCH (a:person) RETURN a.eyeSight ---- 8 5.000000 5.100000 @@ -103,8 +103,8 @@ False 4.900000 4.900000 --NAME PersonNodesTestDate --QUERY MATCH (a:person) RETURN a.birthdate +-LOG PersonNodesTestDate +-STATEMENT MATCH (a:person) RETURN a.birthdate ---- 8 1900-01-01 1900-01-01 @@ -115,8 +115,8 @@ False 1980-10-26 1990-11-27 --NAME PersonNodesTestList --QUERY MATCH (a:person) RETURN a.workedHours, a.usedNames +-LOG PersonNodesTestList +-STATEMENT MATCH (a:person) RETURN a.workedHours, a.usedNames ---- 8 [10,5]|[Aida] [12,8]|[Bobby] @@ -127,8 +127,8 @@ False [1]|[Grad] [10,11,12,3,4,5,6,7]|[Ad,De,Hi,Kye,Orlan] --NAME PersonNodesTestNestedList --QUERY MATCH (a:person) RETURN a.courseScoresPerTerm +-LOG PersonNodesTestNestedList +-STATEMENT MATCH (a:person) RETURN a.courseScoresPerTerm ---- 8 [[10,8],[6,7,8]] [[8,9],[9,10]] @@ -139,28 +139,28 @@ False [[10]] [[7],[10],[6,7]] --NAME ListWithNullValues --QUERY RETURN [5, null, 100, null, null] +-LOG ListWithNullValues +-STATEMENT RETURN [5, null, 100, null, null] ---- 1 [5,,100,,] --NAME NestedListWithNullValues --QUERY RETURN [[78, null, 100, null, null], null, [null, 5, null, 100, null]] +-LOG NestedListWithNullValues +-STATEMENT RETURN [[78, null, 100, null, null], null, [null, 5, null, 100, null]] ---- 1 [[78,,100,,],,[,5,,100,]] --NAME EmptyList --QUERY RETURN [] +-LOG EmptyList +-STATEMENT RETURN [] ---- 1 [] --NAME NestedEmptyList --QUERY RETURN [[],[]] +-LOG NestedEmptyList +-STATEMENT RETURN [[],[]] ---- 1 [[],[]] --NAME CrossProductReturn --QUERY MATCH (a:organisation), (b:organisation) RETURN a.orgCode = b.orgCode +-LOG CrossProductReturn +-STATEMENT MATCH (a:organisation), (b:organisation) RETURN a.orgCode = b.orgCode ---- 9 False False @@ -172,15 +172,15 @@ True True True --NAME KnowsOneHopTest1 --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE b.age=20 RETURN b.age +-LOG KnowsOneHopTest1 +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE b.age=20 RETURN b.age ---- 3 20 20 20 --NAME KnowsTwoHopTest1 --QUERY MATCH (a:person)-[:knows]->(:person)-[:knows]->(b:person) WHERE b.age>40 RETURN b.age +-LOG KnowsTwoHopTest1 +-STATEMENT MATCH (a:person)-[:knows]->(:person)-[:knows]->(b:person) WHERE b.age>40 RETURN b.age ---- 9 45 45 @@ -192,8 +192,8 @@ True 45 45 --NAME KnowsTwoHopTest2 --QUERY MATCH (a:person)-[:knows]->(:person)-[:knows]->(b:person) WHERE a.age>b.age+10 RETURN a.age, b.age +-LOG KnowsTwoHopTest2 +-STATEMENT MATCH (a:person)-[:knows]->(:person)-[:knows]->(b:person) WHERE a.age>b.age+10 RETURN a.age, b.age ---- 6 35|20 35|20 @@ -202,8 +202,8 @@ True 45|30 45|30 --NAME KnowsRelTestDate --QUERY MATCH (a:person)-[e:knows]->(b:person) RETURN e.date +-LOG KnowsRelTestDate +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) RETURN e.date -ENUMERATE ---- 14 2021-06-30 @@ -221,16 +221,16 @@ True 1905-12-12 1905-12-12 --NAME KnowsOneHopTest2 --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE b.age=20 RETURN b.age * 2 +-LOG KnowsOneHopTest2 +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE b.age=20 RETURN b.age * 2 -ENUMERATE ---- 3 40 40 40 --NAME KnowsOneHopTest3 --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.age>20 RETURN b.fName +-LOG KnowsOneHopTest3 +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.age>20 RETURN b.fName -ENUMERATE ---- 9 Alice @@ -244,8 +244,8 @@ Dan Dan --NAME KnowsTwoHopTest3 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.age>c.age+10 RETURN a.age, b.fName, c.age +-LOG KnowsTwoHopTest3 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.age>c.age+10 RETURN a.age, b.fName, c.age -ENUMERATE ---- 6 35|Bob|20 @@ -255,8 +255,8 @@ Dan 45|Bob|20 45|Dan|30 --NAME KnowsTwoHopTest4 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN a.fName, b.fName +-LOG KnowsTwoHopTest4 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) RETURN a.fName, b.fName -ENUMERATE ---- 36 Alice|Bob @@ -296,8 +296,8 @@ Dan|Carol Dan|Carol Dan|Carol --NAME KnowsTwoHopTest5 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.age < 31 RETURN a.age + b.age + c.age +-LOG KnowsTwoHopTest5 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.age < 31 RETURN a.age + b.age + c.age -ENUMERATE ---- 18 100 @@ -319,16 +319,16 @@ Dan|Carol 95 95 --NAME StudyAtPropertyProjectionTest --QUERY MATCH (a:person)-[e:studyAt]->(b:organisation) RETURN e.year +-LOG StudyAtPropertyProjectionTest +-STATEMENT MATCH (a:person)-[e:studyAt]->(b:organisation) RETURN e.year -ENUMERATE ---- 3 2021 2020 2020 --NAME RelID1 --QUERY MATCH (a:person)-[r:knows]->(b:person) RETURN id(r) +-LOG RelID1 +-STATEMENT MATCH (a:person)-[r:knows]->(b:person) RETURN id(r) -ENUMERATE ---- 14 3:0 @@ -346,31 +346,31 @@ Dan|Carol 3:8 3:9 --NAME RelID2 --QUERY MATCH (a:person)-[r:studyAt]->(o:organisation) RETURN id(r) +-LOG RelID2 +-STATEMENT MATCH (a:person)-[r:studyAt]->(o:organisation) RETURN id(r) -ENUMERATE ---- 3 4:0 4:1 4:2 --NAME RelID3 --QUERY MATCH (a:person)-[r:workAt]->(o:organisation) RETURN id(r) +-LOG RelID3 +-STATEMENT MATCH (a:person)-[r:workAt]->(o:organisation) RETURN id(r) -ENUMERATE ---- 3 5:0 5:1 5:2 --NAME QueryOneToOneRelTable --QUERY MATCH (:person)-[m:marries]->(:person) RETURN m +-LOG QueryOneToOneRelTable +-STATEMENT MATCH (:person)-[m:marries]->(:person) RETURN m ---- 3 (0:0)-[label:marries, {_id:7:0, usedAddress:[toronto], address:[4,5], note:}]->(0:1) (0:2)-[label:marries, {_id:7:1, usedAddress:, address:[2,5], note:long long long string}]->(0:3) (0:4)-[label:marries, {_id:7:2, usedAddress:[], address:[3,9], note:short str}]->(0:5) --NAME ReturnFixedListNodeProp --QUERY MATCH (a:person) RETURN a.grades +-LOG ReturnFixedListNodeProp +-STATEMENT MATCH (a:person) RETURN a.grades ---- 8 [96,54,86,92] [98,42,93,88] @@ -381,15 +381,15 @@ Dan|Carol [43,83,67,43] [77,64,100,54] --NAME ReturnFixedListRelProp --QUERY MATCH (a:person)-[e:workAt]->(o:organisation) RETURN e.grading +-LOG ReturnFixedListRelProp +-STATEMENT MATCH (a:person)-[e:workAt]->(o:organisation) RETURN e.grading ---- 3 [2.100000,4.400000] [3.800000,2.500000] [9.200000,3.100000] --NAME ReturnFloatNodeProp --QUERY MATCH (a:person) RETURN a.height +-LOG ReturnFloatNodeProp +-STATEMENT MATCH (a:person) RETURN a.height ---- 8 1.731000 0.990000 @@ -400,15 +400,15 @@ Dan|Carol 1.600000 1.323000 --NAME ReturnFloatRelProp --QUERY MATCH (a:person)-[e:workAt]->(o:organisation) RETURN e.rating +-LOG ReturnFloatRelProp +-STATEMENT MATCH (a:person)-[e:workAt]->(o:organisation) RETURN e.rating ---- 3 8.200000 7.600000 9.200000 --NAME ReturnFixedListFloatRelProp --QUERY MATCH (a:person)-[e:meets]->(b:person) RETURN e.location +-LOG ReturnFixedListFloatRelProp +-STATEMENT MATCH (a:person)-[e:meets]->(b:person) RETURN e.location ---- 7 [7.820000,3.540000] [2.870000,4.230000] @@ -418,29 +418,29 @@ Dan|Carol [3.000000,5.200000] [3.500000,1.100000] --NAME ReturnInt32NodeProp --QUERY MATCH (m:movies) RETURN m.length +-LOG ReturnInt32NodeProp +-STATEMENT MATCH (m:movies) RETURN m.length ---- 3 126 2544 298 --NAME ReturnInt16NodeProp --QUERY MATCH (:person)-[e:studyAt]->(:organisation) RETURN e.length +-LOG ReturnInt16NodeProp +-STATEMENT MATCH (:person)-[e:studyAt]->(:organisation) RETURN e.length ---- 3 5 55 22 --NAME ReturnFixedListInt16RelProp --QUERY MATCH (a:person)-[e:marries]->(b:person) RETURN e.address +-LOG ReturnFixedListInt16RelProp +-STATEMENT MATCH (a:person)-[e:marries]->(b:person) RETURN e.address ---- 3 [4,5] [2,5] [3,9] --NAME ReturnIntRelProp --QUERY MATCH (a:person)-[e:meets]->(b:person) RETURN e.times +-LOG ReturnIntRelProp +-STATEMENT MATCH (a:person)-[e:meets]->(b:person) RETURN e.times ---- 7 5 2 @@ -450,35 +450,35 @@ Dan|Carol 11 13 --NAME ReturnStructLiteral --QUERY RETURN {weight: 1.8, age: 42, name: "Mark", grades: [1,2,3]} +-LOG ReturnStructLiteral +-STATEMENT RETURN {weight: 1.8, age: 42, name: "Mark", grades: [1,2,3]} ---- 1 {WEIGHT: 1.800000, AGE: 42, NAME: Mark, GRADES: [1,2,3]} --NAME ReturnStructLiteral2 --QUERY WITH {a: '1', b: 2, c: [4,5,6]} AS st RETURN st.a, st.b * 5, (st.c)[1:3] +-LOG ReturnStructLiteral2 +-STATEMENT WITH {a: '1', b: 2, c: [4,5,6]} AS st RETURN st.a, st.b * 5, (st.c)[1:3] ---- 1 1|10|[4,5] --NAME ReturnStructLiteralWithNull --QUERY RETURN {info: {name: "AliceBobCarolDan", gender: "female", hobby: null}, height: 1.8, age: null} +-LOG ReturnStructLiteralWithNull +-STATEMENT RETURN {info: {name: "AliceBobCarolDan", gender: "female", hobby: null}, height: 1.8, age: null} ---- 1 {INFO: {NAME: AliceBobCarolDan, GENDER: female, HOBBY: }, HEIGHT: 1.800000, AGE: } --NAME ReturnStructListLiteralWithNull --QUERY RETURN {info: {name: "smith", gender: null, hobby: [null, "footBall"]}, height: 1.8, age: null} +-LOG ReturnStructListLiteralWithNull +-STATEMENT RETURN {info: {name: "smith", gender: null, hobby: [null, "footBall"]}, height: 1.8, age: null} ---- 1 {INFO: {NAME: smith, GENDER: , HOBBY: [,footBall]}, HEIGHT: 1.800000, AGE: } --NAME ReturnStruct --QUERY MATCH (m:movies) RETURN m.description +-LOG ReturnStruct +-STATEMENT MATCH (m:movies) RETURN m.description ---- 3 {RATING: 1223.000000, VIEWS: 10003, RELEASE: 2011-02-11 16:44:22, FILM: 2013-02-22} {RATING: 5.300000, VIEWS: 152, RELEASE: 2011-08-20 11:25:30, FILM: 2012-05-11} {RATING: 7.000000, VIEWS: 982, RELEASE: 2018-11-13 13:33:11, FILM: 2014-09-12} --NAME ReturnStructLiteralWithUnflatFlatChildren --QUERY MATCH (p:person)-[e:knows]->(p1:person) return {name: p.fName, id: p1.ID, date: e.date} +-LOG ReturnStructLiteralWithUnflatFlatChildren +-STATEMENT MATCH (p:person)-[e:knows]->(p1:person) return {name: p.fName, id: p1.ID, date: e.date} ---- 14 {NAME: Alice, ID: 2, DATE: 2021-06-30} {NAME: Alice, ID: 3, DATE: 2021-06-30} @@ -495,8 +495,8 @@ Dan|Carol {NAME: Elizabeth, ID: 8, DATE: 1905-12-12} {NAME: Elizabeth, ID: 9, DATE: 1905-12-12} --NAME ReturnNestedStructLiteral --QUERY MATCH (p:person) return {description: {gender: p.gender, age: p.age}, name: p.fName} +-LOG ReturnNestedStructLiteral +-STATEMENT MATCH (p:person) return {description: {gender: p.gender, age: p.age}, name: p.fName} ---- 8 {DESCRIPTION: {GENDER: 1, AGE: 20}, NAME: Elizabeth} {DESCRIPTION: {GENDER: 1, AGE: 35}, NAME: Alice} @@ -507,8 +507,8 @@ Dan|Carol {DESCRIPTION: {GENDER: 2, AGE: 40}, NAME: Greg} {DESCRIPTION: {GENDER: 2, AGE: 83}, NAME: Hubert Blaine Wolfeschlegelsteinhausenbergerdorff} --NAME ReturnNestedListOfStructLiteral --QUERY MATCH (p:person) return [{description: {propA: p.gender, propB: [p.age, 10]}, name: p.fName}, {description: {propA: p.ID, propB: [p.gender, 20]}, name: p.fName}] +-LOG ReturnNestedListOfStructLiteral +-STATEMENT MATCH (p:person) return [{description: {propA: p.gender, propB: [p.age, 10]}, name: p.fName}, {description: {propA: p.ID, propB: [p.gender, 20]}, name: p.fName}] ---- 8 [{DESCRIPTION: {PROPA: 1, PROPB: [35,10]}, NAME: Alice},{DESCRIPTION: {PROPA: 0, PROPB: [1,20]}, NAME: Alice}] [{DESCRIPTION: {PROPA: 2, PROPB: [30,10]}, NAME: Bob},{DESCRIPTION: {PROPA: 2, PROPB: [2,20]}, NAME: Bob}] @@ -519,8 +519,8 @@ Dan|Carol [{DESCRIPTION: {PROPA: 2, PROPB: [40,10]}, NAME: Greg},{DESCRIPTION: {PROPA: 9, PROPB: [2,20]}, NAME: Greg}] [{DESCRIPTION: {PROPA: 2, PROPB: [83,10]}, NAME: Hubert Blaine Wolfeschlegelsteinhausenbergerdorff},{DESCRIPTION: {PROPA: 10, PROPB: [2,20]}, NAME: Hubert Blaine Wolfeschlegelsteinhausenbergerdorff}] --NAME ReturnNestedListOfStructWithUnflatFlatChildren --QUERY MATCH (p1:person)-[e:knows]->(p2:person) return [{description: {propA: [p1.gender, p2.gender], propB: e.date}, name: p1.fName}, {description: {propA: [p1.ID, p2.ID], propB: p1.birthdate}, name: p2.fName}] +-LOG ReturnNestedListOfStructWithUnflatFlatChildren +-STATEMENT MATCH (p1:person)-[e:knows]->(p2:person) return [{description: {propA: [p1.gender, p2.gender], propB: e.date}, name: p1.fName}, {description: {propA: [p1.ID, p2.ID], propB: p1.birthdate}, name: p2.fName}] ---- 14 [{DESCRIPTION: {PROPA: [1,2], PROPB: 2021-06-30}, NAME: Alice},{DESCRIPTION: {PROPA: [0,2], PROPB: 1900-01-01}, NAME: Bob}] [{DESCRIPTION: {PROPA: [1,1], PROPB: 2021-06-30}, NAME: Alice},{DESCRIPTION: {PROPA: [0,3], PROPB: 1900-01-01}, NAME: Carol}] @@ -537,13 +537,13 @@ Dan|Carol [{DESCRIPTION: {PROPA: [1,2], PROPB: 1905-12-12}, NAME: Elizabeth},{DESCRIPTION: {PROPA: [7,8], PROPB: 1980-10-26}, NAME: Farooq}] [{DESCRIPTION: {PROPA: [1,2], PROPB: 1905-12-12}, NAME: Elizabeth},{DESCRIPTION: {PROPA: [7,9], PROPB: 1980-10-26}, NAME: Greg}] --NAME ReturnMapLiteral --QUERY RETURN map(['Alice', 'Bob', 'Carol', 'Dan'], [20, 34, 50, 22]); +-LOG ReturnMapLiteral +-STATEMENT RETURN map(['Alice', 'Bob', 'Carol', 'Dan'], [20, 34, 50, 22]); ---- 1 {Alice=20, Bob=34, Carol=50, Dan=22} --NAME ReturnMapLiteralWithProp --QUERY MATCH (p:person) RETURN map([p.ID, p.age], [p.fName, p.fName]); +-LOG ReturnMapLiteralWithProp +-STATEMENT MATCH (p:person) RETURN map([p.ID, p.age], [p.fName, p.fName]); ---- 8 {0=Alice, 35=Alice} {2=Bob, 30=Bob} @@ -554,8 +554,8 @@ Dan|Carol {9=Greg, 40=Greg} {10=Hubert Blaine Wolfeschlegelsteinhausenbergerdorff, 83=Hubert Blaine Wolfeschlegelsteinhausenbergerdorff} --NAME ReturnMapLiteralWithFlatUnflatProp --QUERY MATCH (p:person)-[:knows]->(p1:person) RETURN map([p.fName, p1.fName], [p.age, p1.age]); +-LOG ReturnMapLiteralWithFlatUnflatProp +-STATEMENT MATCH (p:person)-[:knows]->(p1:person) RETURN map([p.fName, p1.fName], [p.age, p1.age]); ---- 14 {Alice=35, Bob=30} {Alice=35, Carol=45} @@ -572,8 +572,8 @@ Dan|Carol {Elizabeth=20, Farooq=25} {Elizabeth=20, Greg=40} --NAME ReturnMapLiteralWithFlatUnflatProp1 --QUERY MATCH (p:person)-[:knows]->(p1:person) RETURN map([p.fName], [p1.age]); +-LOG ReturnMapLiteralWithFlatUnflatProp1 +-STATEMENT MATCH (p:person)-[:knows]->(p1:person) RETURN map([p.fName], [p1.age]); ---- 14 {Alice=30} {Alice=45} @@ -590,8 +590,8 @@ Dan|Carol {Elizabeth=25} {Elizabeth=40} --NAME ReturnMapLiteralWithNestedType --QUERY MATCH (p:person)-[:knows]->(p1:person) RETURN map([p.workedHours, p1.workedHours], [p.courseScoresPerTerm, p1.courseScoresPerTerm]); +-LOG ReturnMapLiteralWithNestedType +-STATEMENT MATCH (p:person)-[:knows]->(p1:person) RETURN map([p.workedHours, p1.workedHours], [p.courseScoresPerTerm, p1.courseScoresPerTerm]); ---- 14 {[10,5]=[[10,8],[6,7,8]], [12,8]=[[8,9],[9,10]]} {[10,5]=[[10,8],[6,7,8]], [4,5]=[[8,10]]} @@ -608,8 +608,8 @@ Dan|Carol {[2]=[[6],[7],[8]], [3,4,5,6,7]=[[8]]} {[2]=[[6],[7],[8]], [1]=[[10]]} --NAME ReturnMapLiteralWithNestedType1 --QUERY MATCH (p:person) RETURN map([map([p.ID], [p.fName])], [p.age]); +-LOG ReturnMapLiteralWithNestedType1 +-STATEMENT MATCH (p:person) RETURN map([map([p.ID], [p.fName])], [p.age]); ---- 8 {{0=Alice}=35} {{2=Bob}=30} @@ -620,15 +620,15 @@ Dan|Carol {{9=Greg}=40} {{10=Hubert Blaine Wolfeschlegelsteinhausenbergerdorff}=83} --NAME ReturnNodeBlobProp --QUERY MATCH (m:movies) RETURN m.content; +-LOG ReturnNodeBlobProp +-STATEMENT MATCH (m:movies) RETURN m.content; ---- 3 \xAA\xABinteresting\x0B \xAB\xCD pure ascii characters --NAME ReturnRelBlobProp --QUERY MATCH (p:person)-[e:meets]->(p1:person) RETURN e.data; +-LOG ReturnRelBlobProp +-STATEMENT MATCH (p:person)-[e:meets]->(p1:person) RETURN e.data; ---- 7 MIXED \x5CxAC with ASCII \x5Cx0A NO hex code @@ -638,7 +638,7 @@ NO hex code \x5CxA1\x5Cx2A \x5CxAA\x5CxBB\x5CxCC\x5CxDD --NAME ReturnStringLiteralWithSpecialChar --QUERY RETURN "hEl \'\"\\"; +-LOG ReturnStringLiteralWithSpecialChar +-STATEMENT RETURN "hEl \'\"\\"; ---- 1 hEl '"\ diff --git a/test/test_files/tinysnb/projection/skip_limit.test b/test/test_files/tinysnb/projection/skip_limit.test index 5df8105531..453dde56bf 100644 --- a/test/test_files/tinysnb/projection/skip_limit.test +++ b/test/test_files/tinysnb/projection/skip_limit.test @@ -5,25 +5,25 @@ -CASE ProjectionSkipLimit --NAME BasicSkipTest1 --QUERY MATCH (a:person) RETURN a.fName Skip 5 +-LOG BasicSkipTest1 +-STATEMENT MATCH (a:person) RETURN a.fName Skip 5 ---- 3 Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME BasicSkipTest2 --QUERY MATCH (a:person) RETURN a.fName Skip 10 +-LOG BasicSkipTest2 +-STATEMENT MATCH (a:person) RETURN a.fName Skip 10 ---- 0 --NAME BasicLimitTest1 --QUERY MATCH (a:person) RETURN a.fName LIMIT 2 +-LOG BasicLimitTest1 +-STATEMENT MATCH (a:person) RETURN a.fName LIMIT 2 ---- 2 Alice Bob --NAME BasicLimitTest2 --QUERY MATCH (a:person) RETURN a.fName LIMIT 10 +-LOG BasicLimitTest2 +-STATEMENT MATCH (a:person) RETURN a.fName LIMIT 10 ---- 8 Alice Bob @@ -34,80 +34,80 @@ Farooq Greg Hubert Blaine Wolfeschlegelsteinhausenbergerdorff --NAME BasicSkipLimitTest --QUERY MATCH (a:person) RETURN a.fName SKIP 1 LIMIT 2 +-LOG BasicSkipLimitTest +-STATEMENT MATCH (a:person) RETURN a.fName SKIP 1 LIMIT 2 ---- 2 Bob Carol --NAME BasicSkipTest3 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person) WITH d.ID as dummy SKIP 10 RETURN COUNT(*) +-LOG BasicSkipTest3 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person) WITH d.ID as dummy SKIP 10 RETURN COUNT(*) -ENUMERATE ---- 1 98 --NAME BasicSkipTest4 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person)-[:knows]->(e:person) WITH e.ID as dummy SKIP 300 RETURN COUNT(*) +-LOG BasicSkipTest4 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person)-[:knows]->(e:person) WITH e.ID as dummy SKIP 300 RETURN COUNT(*) -ENUMERATE ---- 1 24 --NAME BasicLimitTest3 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person) WITH d.fName AS k LIMIT 5 RETURN COUNT(*) +-LOG BasicLimitTest3 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person) WITH d.fName AS k LIMIT 5 RETURN COUNT(*) -ENUMERATE ---- 1 5 --NAME BasicLimitTest4 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person)-[:knows]->(e:person) WITH d.fName AS k LIMIT 5 RETURN COUNT(*) +-LOG BasicLimitTest4 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person)-[:knows]->(d:person)-[:knows]->(e:person) WITH d.fName AS k LIMIT 5 RETURN COUNT(*) -ENUMERATE ---- 1 5 --NAME KnowsTwoHopLimitTest --QUERY MATCH (a:person)-[:knows]->(:person)-[:knows]->(b:person) WHERE a.age=35 RETURN b.fName AS k ORDER BY k LIMIT 1 +-LOG KnowsTwoHopLimitTest +-STATEMENT MATCH (a:person)-[:knows]->(:person)-[:knows]->(b:person) WHERE a.age=35 RETURN b.fName AS k ORDER BY k LIMIT 1 -ENUMERATE ---- 1 Alice --NAME KnowsOneHopWithLimitTest1 --QUERY MATCH (a:person) WHERE a.age>20 WITH a LIMIT 1 MATCH (a)-[e:knows]->(b:person) RETURN b.fName +-LOG KnowsOneHopWithLimitTest1 +-STATEMENT MATCH (a:person) WHERE a.age>20 WITH a LIMIT 1 MATCH (a)-[e:knows]->(b:person) RETURN b.fName -ENUMERATE ---- 3 Bob Carol Dan --NAME KnowsOneHopWithSkipLimitTest1 --QUERY MATCH (a:person) WHERE a.age>20 WITH a ORDER BY a.ID SKIP 2 MATCH (a)-[e:knows]->(b:person) RETURN a.fName, b.fName ORDER BY b.fName LIMIT 2 +-LOG KnowsOneHopWithSkipLimitTest1 +-STATEMENT MATCH (a:person) WHERE a.age>20 WITH a ORDER BY a.ID SKIP 2 MATCH (a)-[e:knows]->(b:person) RETURN a.fName, b.fName ORDER BY b.fName LIMIT 2 -ENUMERATE ---- 2 Carol|Alice Carol|Bob --NAME KnowsOneHopWithSkipLimitTest2 --QUERY MATCH (a:person) WHERE a.age>20 WITH a SKIP 1 LIMIT 1 MATCH (a)-[e:knows]->(b:person) RETURN b.fName +-LOG KnowsOneHopWithSkipLimitTest2 +-STATEMENT MATCH (a:person) WHERE a.age>20 WITH a SKIP 1 LIMIT 1 MATCH (a)-[e:knows]->(b:person) RETURN b.fName -ENUMERATE ---- 3 Alice Carol Dan --NAME KnowsOneHopWithLimitTest3 --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.age=35 WITH b.ID AS id, b.fName AS n ORDER BY id LIMIT 1 RETURN n +-LOG KnowsOneHopWithLimitTest3 +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.age=35 WITH b.ID AS id, b.fName AS n ORDER BY id LIMIT 1 RETURN n -ENUMERATE ---- 1 Bob --NAME LimitFixedListNodeProp --QUERY MATCH (a:person) RETURN a.grades LIMIT 3 +-LOG LimitFixedListNodeProp +-STATEMENT MATCH (a:person) RETURN a.grades LIMIT 3 ---- 3 [96,54,86,92] [98,42,93,88] [91,75,21,95] --NAME LimitFixedListRelProp --QUERY MATCH (a:person)-[e:workAt]->(o:organisation) RETURN e.grading LIMIT 2 +-LOG LimitFixedListRelProp +-STATEMENT MATCH (a:person)-[e:workAt]->(o:organisation) RETURN e.grading LIMIT 2 ---- 2 [2.100000,4.400000] [3.800000,2.500000] diff --git a/test/test_files/tinysnb/shortest_path/all_shortest_path.test b/test/test_files/tinysnb/shortest_path/all_shortest_path.test index 8a0f3e9c1d..0ba356fddd 100644 --- a/test/test_files/tinysnb/shortest_path/all_shortest_path.test +++ b/test/test_files/tinysnb/shortest_path/all_shortest_path.test @@ -5,8 +5,8 @@ -CASE AllShortestPath --NAME MultiLabel1 --QUERY MATCH (a:person)-[e:knows|:meets|:marries* ALL SHORTEST 1..5]->(b:person) WHERE a.fName='Alice' RETURN b.fName, length(e) +-LOG MultiLabel1 +-STATEMENT MATCH (a:person)-[e:knows|:meets|:marries* ALL SHORTEST 1..5]->(b:person) WHERE a.fName='Alice' RETURN b.fName, length(e) ---- 9 Bob|1 Bob|1 @@ -18,8 +18,8 @@ Farooq|3 Farooq|3 Greg|3 --NAME MultiLabel2 --QUERY MATCH (a:person)-[e* ALL SHORTEST 1..5]->(b:organisation) WHERE a.fName='Bob' RETURN b.ID, length(e) +-LOG MultiLabel2 +-STATEMENT MATCH (a:person)-[e* ALL SHORTEST 1..5]->(b:organisation) WHERE a.fName='Bob' RETURN b.ID, length(e) ---- 4 1|1 4|2 diff --git a/test/test_files/tinysnb/shortest_path/shortest_path.test b/test/test_files/tinysnb/shortest_path/shortest_path.test index 251ed31658..891858b6a2 100644 --- a/test/test_files/tinysnb/shortest_path/shortest_path.test +++ b/test/test_files/tinysnb/shortest_path/shortest_path.test @@ -5,15 +5,15 @@ -CASE ShortestPath --NAME SingleLabelTest --QUERY MATCH (a:person)-[e:knows* SHORTEST 1..5]->(b:person) WHERE a.fName='Alice' RETURN b.fName, length(e) +-LOG SingleLabelTest +-STATEMENT MATCH (a:person)-[e:knows* SHORTEST 1..5]->(b:person) WHERE a.fName='Alice' RETURN b.fName, length(e) ---- 3 Bob|1 Carol|1 Dan|1 --NAME MultiLabelTest --QUERY MATCH (a:person)-[e* SHORTEST 1..5]->(b) WHERE a.fName='Alice' RETURN label(b), b.ID, length(e) +-LOG MultiLabelTest +-STATEMENT MATCH (a:person)-[e* SHORTEST 1..5]->(b) WHERE a.fName='Alice' RETURN label(b), b.ID, length(e) ---- 9 organisation|1|1 organisation|4|2 @@ -25,8 +25,8 @@ person|7|2 person|8|3 person|9|3 --NAME MultiLabelTest2 --QUERY MATCH (a)-[e* SHORTEST 1..5]-(b) WHERE a.ID=1 RETURN label(b), length(e), b.ID +-LOG MultiLabelTest2 +-STATEMENT MATCH (a)-[e* SHORTEST 1..5]-(b) WHERE a.ID=1 RETURN label(b), length(e), b.ID ---- 10 organisation|3|4 organisation|3|6 diff --git a/test/test_files/tinysnb/subquery/exists.test b/test/test_files/tinysnb/subquery/exists.test index a52ce925d6..3da8ff0489 100644 --- a/test/test_files/tinysnb/subquery/exists.test +++ b/test/test_files/tinysnb/subquery/exists.test @@ -5,80 +5,80 @@ -CASE SubqueryExists --NAME ExistSubqueryTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN COUNT(*) +-LOG ExistSubqueryTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN COUNT(*) -ENUMERATE ---- 1 5 --NAME ExistSubqueryTest2 --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE b.fName='Farooq' } RETURN COUNT(*) +-LOG ExistSubqueryTest2 +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE b.fName='Farooq' } RETURN COUNT(*) -ENUMERATE ---- 1 1 --NAME ExistSubqueryTest3 --QUERY MATCH (a:person)-[:knows]->(b:person) WHERE EXISTS { MATCH (a)-[:studyAt]->(c:organisation) } OR b.fName='Greg' RETURN COUNT(*) +-LOG ExistSubqueryTest3 +-STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE EXISTS { MATCH (a)-[:studyAt]->(c:organisation) } OR b.fName='Greg' RETURN COUNT(*) -ENUMERATE ---- 1 7 -#-NAME ExistSubqueryTest4 -#-QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE a.fName='Alice' } RETURN COUNT(*) +#-LOG ExistSubqueryTest4 +#-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE a.fName='Alice' } RETURN COUNT(*) #-ENUMERATE #---- 1 #1 --NAME ExistSubqueryTest5 --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(d:person) } RETURN COUNT(*) +-LOG ExistSubqueryTest5 +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person)-[:knows]->(c:person), (a)-[:knows]->(d:person) } RETURN COUNT(*) -ENUMERATE ---- 1 4 --NAME NotExistSubqueryTest --QUERY MATCH (a:person) WHERE NOT EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN COUNT(*) +-LOG NotExistSubqueryTest +-STATEMENT MATCH (a:person) WHERE NOT EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN COUNT(*) -ENUMERATE ---- 1 3 --NAME ExistSubqueryMultiPartCyclicTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person), (b)-[:knows]->(a) } RETURN COUNT(*) +-LOG ExistSubqueryMultiPartCyclicTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person), (b)-[:knows]->(a) } RETURN COUNT(*) -ENUMERATE ---- 1 4 --NAME ExistsSubqueryColExtendTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:studyAt]->(b:organisation) } RETURN COUNT(*) +-LOG ExistsSubqueryColExtendTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:studyAt]->(b:organisation) } RETURN COUNT(*) -ENUMERATE ---- 1 3 --NAME ExistsSubqueryORTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:studyAt]->(b:organisation) } OR EXISTS { MATCH (a)-[:workAt]->(c:organisation) } RETURN COUNT(*) +-LOG ExistsSubqueryORTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:studyAt]->(b:organisation) } OR EXISTS { MATCH (a)-[:workAt]->(c:organisation) } RETURN COUNT(*) -ENUMERATE ---- 1 6 --NAME NestedSubqueryTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE EXISTS { MATCH (b)-[:workAt]->(c:organisation) } } RETURN COUNT(*) +-LOG NestedSubqueryTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE EXISTS { MATCH (b)-[:workAt]->(c:organisation) } } RETURN COUNT(*) -ENUMERATE ---- 1 4 -#-NAME ExistSubqueryAliasTest1 -#-QUERY MATCH (a:person) WITH a, a.fName AS newName WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE newName='Alice' } RETURN COUNT(*) +#-LOG ExistSubqueryAliasTest1 +#-STATEMENT MATCH (a:person) WITH a, a.fName AS newName WHERE EXISTS { MATCH (a)-[:knows]->(b:person) WHERE newName='Alice' } RETURN COUNT(*) #-ENUMERATE #---- 1 #1 --NAME ExistSubqueryAliasTest2 --QUERY MATCH (a:person) WITH a AS k MATCH (k)-[:knows]->(b:person) WHERE EXISTS { MATCH (k)-[:studyAt]->(c:organisation) } OR b.fName='Greg' RETURN COUNT(*) +-LOG ExistSubqueryAliasTest2 +-STATEMENT MATCH (a:person) WITH a AS k MATCH (k)-[:knows]->(b:person) WHERE EXISTS { MATCH (k)-[:studyAt]->(c:organisation) } OR b.fName='Greg' RETURN COUNT(*) -ENUMERATE ---- 1 7 --NAME ExistSubqueryReturnTest --QUERY MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN a.fName +-LOG ExistSubqueryReturnTest +-STATEMENT MATCH (a:person) WHERE EXISTS { MATCH (a)-[:knows]->(b:person) } RETURN a.fName -ENUMERATE ---- 5 Alice diff --git a/test/test_files/tinysnb/subquery/multi_label.test b/test/test_files/tinysnb/subquery/multi_label.test index 12bb5a498d..df648334f3 100644 --- a/test/test_files/tinysnb/subquery/multi_label.test +++ b/test/test_files/tinysnb/subquery/multi_label.test @@ -5,7 +5,7 @@ -CASE SubqueryMultiLabel --NAME MultiLabelSubqueryTest --QUERY MATCH (a:person:organisation) WHERE EXISTS { MATCH (a)-[:knows|:studyAt]->(b:organisation:person) } RETURN COUNT(*) +-LOG MultiLabelSubqueryTest +-STATEMENT MATCH (a:person:organisation) WHERE EXISTS { MATCH (a)-[:knows|:studyAt]->(b:organisation:person) } RETURN COUNT(*) ---- 1 6 diff --git a/test/test_files/tinysnb/union/union.test b/test/test_files/tinysnb/union/union.test index 8aee90eb87..5a5dba0f44 100644 --- a/test/test_files/tinysnb/union/union.test +++ b/test/test_files/tinysnb/union/union.test @@ -5,8 +5,8 @@ -CASE Union --NAME UnionAllTwoQueriesTest --QUERY MATCH (p:person) RETURN p.age UNION ALL MATCH (p1:person) RETURN p1.age +-LOG UnionAllTwoQueriesTest +-STATEMENT MATCH (p:person) RETURN p.age UNION ALL MATCH (p1:person) RETURN p1.age -PARALLELISM 8 ---- 16 20 @@ -26,8 +26,8 @@ 83 83 --NAME UnionAllMultipleQueriesTest --QUERY MATCH (p:person) RETURN p.age UNION ALL MATCH (p1:person) RETURN p1.age UNION ALL MATCH (p2:person) RETURN p2.age +-LOG UnionAllMultipleQueriesTest +-STATEMENT MATCH (p:person) RETURN p.age UNION ALL MATCH (p1:person) RETURN p1.age UNION ALL MATCH (p2:person) RETURN p2.age -PARALLELISM 2 ---- 24 20 @@ -55,8 +55,8 @@ 83 83 --NAME UnionAllMultipleColumnsTest --QUERY MATCH (p:person) RETURN p.age, p.eyeSight UNION ALL MATCH (p1:person) RETURN p1.age, p1.eyeSight +-LOG UnionAllMultipleColumnsTest +-STATEMENT MATCH (p:person) RETURN p.age, p.eyeSight UNION ALL MATCH (p1:person) RETURN p1.age, p1.eyeSight -PARALLELISM 3 ---- 16 20|4.700000 @@ -76,8 +76,8 @@ 83|4.900000 83|4.900000 --NAME UnionTwoQueriesTest --QUERY MATCH (a:person) RETURN a.age UNION MATCH (p:person) RETURN p.age +-LOG UnionTwoQueriesTest +-STATEMENT MATCH (a:person) RETURN a.age UNION MATCH (p:person) RETURN p.age ---- 7 20 25 @@ -89,8 +89,8 @@ # If an expression to union has different flat/unflat state in different single queries, we need to flatten that # expression in all the single queries. --NAME UnionAllFlatAndUnFlatColTest --QUERY MATCH (a:person)-[e:knows]->(b:person) RETURN a.age UNION ALL MATCH (a:person)-[e:knows]->(b:person) RETURN a.age UNION ALL MATCH (a:person)-[e:knows]->(b:person) RETURN a.age +-LOG UnionAllFlatAndUnFlatColTest +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) RETURN a.age UNION ALL MATCH (a:person)-[e:knows]->(b:person) RETURN a.age UNION ALL MATCH (a:person)-[e:knows]->(b:person) RETURN a.age -ENUMERATE ---- 42 20 @@ -136,8 +136,8 @@ 45 45 --NAME UnionAllWithTest --QUERY MATCH (a:person)-[:knows]->(b:person) with b return b.age + 3 UNION ALL MATCH (a:person)-[e:knows]->(b:person) with a RETURN a.age +-LOG UnionAllWithTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person) with b return b.age + 3 UNION ALL MATCH (a:person)-[e:knows]->(b:person) with a RETURN a.age -ENUMERATE ---- 28 20 @@ -169,8 +169,8 @@ 48 48 --NAME UnionAllThreeHopsTest --QUERY MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person) RETURN a.fName order by d.age desc, c.age asc, b.age asc, a.age desc limit 10 UNION ALL MATCH (p:person) RETURN p.fName +-LOG UnionAllThreeHopsTest +-STATEMENT MATCH (a:person)-[e1:knows]->(b:person)-[e2:knows]->(c:person)-[e3:knows]->(d:person) RETURN a.fName order by d.age desc, c.age asc, b.age asc, a.age desc limit 10 UNION ALL MATCH (p:person) RETURN p.fName -ENUMERATE ---- 18 Alice diff --git a/test/test_files/tinysnb/unwind/unwind.test b/test/test_files/tinysnb/unwind/unwind.test index b01d4085a5..c91d365be9 100644 --- a/test/test_files/tinysnb/unwind/unwind.test +++ b/test/test_files/tinysnb/unwind/unwind.test @@ -4,52 +4,53 @@ -- -CASE Unwind +-DEFINE UNWIND_LIST ARANGE 1 4001 --NAME unwind1 --QUERY UNWIND [1, 2, 3, 4] AS x RETURN x +-LOG unwind1 +-STATEMENT UNWIND [1, 2, 3, 4] AS x RETURN x ---- 4 1 2 3 4 --NAME unwind2 --QUERY UNWIND [[1, 2, 3], [2, 3, 4], [3, 4, 1], [4, 1, 2]] AS x RETURN x +-LOG unwind2 +-STATEMENT UNWIND [[1, 2, 3], [2, 3, 4], [3, 4, 1], [4, 1, 2]] AS x RETURN x ---- 4 [1,2,3] [2,3,4] [3,4,1] [4,1,2] --NAME unwind3 --QUERY UNWIND ["adhjsdhhhhhhhhhhhhsjsjjdhsjdhdjshdjdadhjsdhhqwrtetrehhhhsjsjjdhsjdhdjshdjd", "basdfghjkjkjhkjhkjhkj", "c", "d"] AS x RETURN x +-LOG unwind3 +-STATEMENT UNWIND ["adhjsdhhhhhhhhhhhhsjsjjdhsjdhdjshdjdadhjsdhhqwrtetrehhhhsjsjjdhsjdhdjshdjd", "basdfghjkjkjhkjhkjhkj", "c", "d"] AS x RETURN x ---- 4 adhjsdhhhhhhhhhhhhsjsjjdhsjdhdjshdjdadhjsdhhqwrtetrehhhhsjsjjdhsjdhdjshdjd basdfghjkjkjhkjhkjhkj c d --NAME unwind4 --QUERY UNWIND [1, 2, 3, 4] AS x RETURN x + 2 +-LOG unwind4 +-STATEMENT UNWIND [1, 2, 3, 4] AS x RETURN x + 2 ---- 4 3 4 5 6 --NAME unwind5 --QUERY UNWIND [1,2,3,4] AS x WITH x AS b WHERE b > 2 RETURN b +-LOG unwind5 +-STATEMENT UNWIND [1,2,3,4] AS x WITH x AS b WHERE b > 2 RETURN b ---- 2 3 4 --NAME unwind6 --QUERY UNWIND [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,2180,2181,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252,2253,2254,2255,2256,2257,2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284,2285,2286,2287,2288,2289,2290,2291,2292,2293,2294,2295,2296,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2309,2310,2311,2312,2313,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2342,2343,2344,2345,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,2416,2417,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2438,2439,2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2501,2502,2503,2504,2505,2506,2507,2508,2509,2510,2511,2512,2513,2514,2515,2516,2517,2518,2519,2520,2521,2522,2523,2524,2525,2526,2527,2528,2529,2530,2531,2532,2533,2534,2535,2536,2537,2538,2539,2540,2541,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2592,2593,2594,2595,2596,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641,2642,2643,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2665,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2853,2854,2855,2856,2857,2858,2859,2860,2861,2862,2863,2864,2865,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891,2892,2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908,2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926,2927,2928,2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2990,2991,2992,2993,2994,2995,2996,2997,2998,2999,3000,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023,3024,3025,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3090,3091,3092,3093,3094,3095,3096,3097,3098,3099,3100,3101,3102,3103,3104,3105,3106,3107,3108,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3134,3135,3136,3137,3138,3139,3140,3141,3142,3143,3144,3145,3146,3147,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163,3164,3165,3166,3167,3168,3169,3170,3171,3172,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3197,3198,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3221,3222,3223,3224,3225,3226,3227,3228,3229,3230,3231,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3251,3252,3253,3254,3255,3256,3257,3258,3259,3260,3261,3262,3263,3264,3265,3266,3267,3268,3269,3270,3271,3272,3273,3274,3275,3276,3277,3278,3279,3280,3281,3282,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552,3553,3554,3555,3556,3557,3558,3559,3560,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3582,3583,3584,3585,3586,3587,3588,3589,3590,3591,3592,3593,3594,3595,3596,3597,3598,3599,3600,3601,3602,3603,3604,3605,3606,3607,3608,3609,3610,3611,3612,3613,3614,3615,3616,3617,3618,3619,3620,3621,3622,3623,3624,3625,3626,3627,3628,3629,3630,3631,3632,3633,3634,3635,3636,3637,3638,3639,3640,3641,3642,3643,3644,3645,3646,3647,3648,3649,3650,3651,3652,3653,3654,3655,3656,3657,3658,3659,3660,3661,3662,3663,3664,3665,3666,3667,3668,3669,3670,3671,3672,3673,3674,3675,3676,3677,3678,3679,3680,3681,3682,3683,3684,3685,3686,3687,3688,3689,3690,3691,3692,3693,3694,3695,3696,3697,3698,3699,3700,3701,3702,3703,3704,3705,3706,3707,3708,3709,3710,3711,3712,3713,3714,3715,3716,3717,3718,3719,3720,3721,3722,3723,3724,3725,3726,3727,3728,3729,3730,3731,3732,3733,3734,3735,3736,3737,3738,3739,3740,3741,3742,3743,3744,3745,3746,3747,3748,3749,3750,3751,3752,3753,3754,3755,3756,3757,3758,3759,3760,3761,3762,3763,3764,3765,3766,3767,3768,3769,3770,3771,3772,3773,3774,3775,3776,3777,3778,3779,3780,3781,3782,3783,3784,3785,3786,3787,3788,3789,3790,3791,3792,3793,3794,3795,3796,3797,3798,3799,3800,3801,3802,3803,3804,3805,3806,3807,3808,3809,3810,3811,3812,3813,3814,3815,3816,3817,3818,3819,3820,3821,3822,3823,3824,3825,3826,3827,3828,3829,3830,3831,3832,3833,3834,3835,3836,3837,3838,3839,3840,3841,3842,3843,3844,3845,3846,3847,3848,3849,3850,3851,3852,3853,3854,3855,3856,3857,3858,3859,3860,3861,3862,3863,3864,3865,3866,3867,3868,3869,3870,3871,3872,3873,3874,3875,3876,3877,3878,3879,3880,3881,3882,3883,3884,3885,3886,3887,3888,3889,3890,3891,3892,3893,3894,3895,3896,3897,3898,3899,3900,3901,3902,3903,3904,3905,3906,3907,3908,3909,3910,3911,3912,3913,3914,3915,3916,3917,3918,3919,3920,3921,3922,3923,3924,3925,3926,3927,3928,3929,3930,3931,3932,3933,3934,3935,3936,3937,3938,3939,3940,3941,3942,3943,3944,3945,3946,3947,3948,3949,3950,3951,3952,3953,3954,3955,3956,3957,3958,3959,3960,3961,3962,3963,3964,3965,3966,3967,3968,3969,3970,3971,3972,3973,3974,3975,3976,3977,3978,3979,3980,3981,3982,3983,3984,3985,3986,3987,3988,3989,3990,3991,3992,3993,3994,3995,3996,3997,3998,3999,4000,4001] AS x WITH x AS b WHERE b > 4000 RETURN b +-LOG unwind6 +-STATEMENT UNWIND ${UNWIND_LIST} AS x WITH x AS b WHERE b > 4000 RETURN b ---- 1 4001 --NAME unwind7 --QUERY UNWIND [1, 2, 3] AS x UNWIND [5, 6, 7] AS y RETURN x,y +-LOG unwind7 +-STATEMENT UNWIND [1, 2, 3] AS x UNWIND [5, 6, 7] AS y RETURN x,y ---- 9 1|5 1|6 @@ -61,14 +62,14 @@ d 3|6 3|7 --NAME unwind8 --QUERY MATCH (a:person) WHERE a.fName = 'Alice' UNWIND a.workedHours as x RETURN x,a.fName +-LOG unwind8 +-STATEMENT MATCH (a:person) WHERE a.fName = 'Alice' UNWIND a.workedHours as x RETURN x,a.fName ---- 2 10|Alice 5|Alice --NAME unwind9 --QUERY MATCH (a:person)-[:studyAt]->(b:organisation) WHERE b.ID = 1 AND a.fName = 'Farooq' UNWIND a.workedHours as x RETURN x,a.fName +-LOG unwind9 +-STATEMENT MATCH (a:person)-[:studyAt]->(b:organisation) WHERE b.ID = 1 AND a.fName = 'Farooq' UNWIND a.workedHours as x RETURN x,a.fName ---- 5 3|Farooq 4|Farooq @@ -76,26 +77,26 @@ d 6|Farooq 7|Farooq --NAME unwind10 --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.ID = 0 AND b.ID = 2 UNWIND a.usedNames as x RETURN x,a.fName,b.fName,c.fName +-LOG unwind10 +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE a.ID = 0 AND b.ID = 2 UNWIND a.usedNames as x RETURN x,a.fName,b.fName,c.fName ---- 3 Aida|Alice|Bob|Alice Aida|Alice|Bob|Carol Aida|Alice|Bob|Dan --NAME unwind11 --QUERY MATCH (a:person) UNWIND a.workedHours as x WITH x AS hour WHERE hour < 0 RETURN COUNT(*) +-LOG unwind11 +-STATEMENT MATCH (a:person) UNWIND a.workedHours as x WITH x AS hour WHERE hour < 0 RETURN COUNT(*) ---- 1 0 --NAME unwind12 --QUERY UNWIND [1,2,3,4] as val WITH val ORDER BY val SKIP 2 RETURN val +-LOG unwind12 +-STATEMENT UNWIND [1,2,3,4] as val WITH val ORDER BY val SKIP 2 RETURN val ---- 2 3 4 --NAME unwind13 --QUERY WITH [1, 1, 2, 2] AS coll UNWIND coll AS x WITH DISTINCT x return x +-LOG unwind13 +-STATEMENT WITH [1, 1, 2, 2] AS coll UNWIND coll AS x WITH DISTINCT x return x ---- 2 1 2 diff --git a/test/test_files/tinysnb/update_node/create.test b/test/test_files/tinysnb/update_node/create.test index 371093cd00..18009eb5b2 100644 --- a/test/test_files/tinysnb/update_node/create.test +++ b/test/test_files/tinysnb/update_node/create.test @@ -6,7 +6,7 @@ -CASE InsertNodeWithBoolIntDoubleTest -STATEMENT CREATE (:person {ID:80, isWorker:true,age:22,eyeSight:1.1}) ---- ok --QUERY MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.gender,a.isStudent, a.isWorker, a.age, a.eyeSight +-STATEMENT MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.gender,a.isStudent, a.isWorker, a.age, a.eyeSight ---- 3 10|2|False|True|83|4.900000 80|||True|22|1.100000 @@ -15,7 +15,7 @@ -CASE InsertNodeWithDateIntervalTest -STATEMENT CREATE (:person {ID:32, birthdate:date('1997-03-22'), lastJobDuration:interval('2 years')}); ---- ok --QUERY MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.birthdate,a.lastJobDuration +-STATEMENT MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.birthdate,a.lastJobDuration ---- 3 10|1990-11-27|3 years 2 days 13:02:00 32|1997-03-22|2 years @@ -24,7 +24,7 @@ -CASE InsertNodeWithStringTest -STATEMENT CREATE (:person {ID:32, fName:'A'}), (:person {ID:33, fName:'BCD'}), (:person {ID:34, fName:'this is a long name'}) ---- ok --QUERY MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.fName +-STATEMENT MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.fName ---- 5 10|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff 32|A @@ -35,10 +35,10 @@ -CASE InsertNodeWithMixedLabelTest -STATEMENT CREATE (:person {ID:32, fName:'A'}), (:organisation {ID:33, orgCode:144}) ---- ok --QUERY MATCH (a:person) WHERE a.ID > 30 RETURN a.ID, a.fName +-STATEMENT MATCH (a:person) WHERE a.ID > 30 RETURN a.ID, a.fName ---- 1 32|A --QUERY MATCH (a:organisation) RETURN a.ID, a.orgCode +-STATEMENT MATCH (a:organisation) RETURN a.ID, a.orgCode ---- 4 1|325 33|144 @@ -48,7 +48,7 @@ -CASE InsertNodeAfterMatchListTest -STATEMENT MATCH (a:person) CREATE (:person {ID:a.ID+11, age:a.age*2}) ---- ok --QUERY MATCH (a:person) RETURN a.ID, a.fName,a.age +-STATEMENT MATCH (a:person) RETURN a.ID, a.fName,a.age ---- 16 0|Alice|35 10|Hubert Blaine Wolfeschlegelsteinhausenbergerdorff|83 @@ -70,14 +70,14 @@ -CASE InsertSingleNToNRelTest -STATEMENT MATCH (a:person), (b:person) WHERE a.ID = 9 AND b.ID = 10 CREATE (a)-[:knows {meetTime:timestamp('1976-12-23 11:21:42'), validInterval:interval('2 years'), comments:['A', 'k'], date:date('1997-03-22')}]->(b) ---- ok --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID > 8 RETURN a.ID, b.ID, e, ID(e) +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID > 8 RETURN a.ID, b.ID, e, ID(e) ---- 1 9|10|(0:6)-[label:knows, {_id:3:14, date:1997-03-22, meetTime:1976-12-23 11:21:42, validInterval:2 years, comments:[A,k]}]->(0:7)|3:14 -CASE InsertSingleNTo1RelTest -STATEMENT MATCH (a:person), (b:organisation) WHERE a.ID = 9 AND b.orgCode = 934 CREATE (a)-[:studyAt {year:2022}]->(b) ---- ok --QUERY MATCH (a:person)-[e:studyAt]->(b:organisation) WHERE a.ID > 5 RETURN a.ID, b.orgCode, e, ID(e) +-STATEMENT MATCH (a:person)-[e:studyAt]->(b:organisation) WHERE a.ID > 5 RETURN a.ID, b.orgCode, e, ID(e) ---- 2 8|325|(0:5)-[label:studyAt, {_id:4:2, year:2020, places:[awndsnjwejwen,isuhuwennjnuhuhuwewe], length:22}]->(1:0)|4:2 9|934|(0:6)-[label:studyAt, {_id:4:3, year:2022, places:, length:}]->(1:1)|4:3 @@ -85,7 +85,7 @@ -CASE InsertRepeatedNToNRelTest -STATEMENT MATCH (a:person), (b:person) WHERE a.ID = 7 AND b.ID = 8 CREATE (a)-[:knows {validInterval:interval('3 years')}]->(b) ---- ok --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID=7 RETURN b.ID, e.validInterval +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID=7 RETURN b.ID, e.validInterval ---- 3 8|00:47:58 8|3 years @@ -94,14 +94,14 @@ -CASE InsertMixedRelTest -STATEMENT MATCH (a:person), (b:person), (c:organisation) WHERE a.ID = 0 AND b.ID = 9 AND c.ID = 4 CREATE (b)-[:studyAt]->(c), (a)<-[:knows]-(b) ---- ok --QUERY MATCH (a:person)-[:knows]->(b:person)-[:studyAt]->(c:organisation) RETURN COUNT(*) +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:studyAt]->(c:organisation) RETURN COUNT(*) ---- 1 9 -CASE InsertMultipleRelsTest -STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID = 7 CREATE (a)<-[:knows]-(b) ---- ok --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID > 6 RETURN a.ID, b.ID, ID(e) +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID > 6 RETURN a.ID, b.ID, ID(e) ---- 4 7|8|3:12 7|9|3:13 @@ -111,14 +111,14 @@ -CASE InsertNodeAndRelTest -STATEMENT CREATE (a:person {ID:100})-[:knows {date:date('1997-03-22')}]->(b:person {ID:202}) ---- ok --QUERY MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID > 50 RETURN a.ID, b.ID, e.date +-STATEMENT MATCH (a:person)-[e:knows]->(b:person) WHERE a.ID > 50 RETURN a.ID, b.ID, e.date ---- 1 100|202|1997-03-22 -CASE InsertNodeAndRelTest2 -STATEMENT CREATE (c:organisation {ID:50})<-[:workAt]-(a:person {ID:100}), (a)-[:studyAt]->(c) ---- ok --QUERY MATCH (a:person)-[e1:studyAt]->(b:organisation), (a)-[e2:workAt]->(b) RETURN a.ID, b.ID, ID(e1), ID(e2) +-STATEMENT MATCH (a:person)-[e1:studyAt]->(b:organisation), (a)-[e2:workAt]->(b) RETURN a.ID, b.ID, ID(e1), ID(e2) ---- 1 100|50|4:3|5:3 @@ -127,13 +127,13 @@ -BEGIN_WRITE_TRANSACTION -STATEMENT CREATE (:person {ID:11, workedHours:[1,2,3], usedNames:['A', 'this is a long name']}) ---- ok --QUERY MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.workedHours,a.usedNames +-STATEMENT MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.workedHours,a.usedNames ---- 3 10|[10,11,12,3,4,5,6,7]|[Ad,De,Hi,Kye,Orlan] 11|[1,2,3]|[A,this is a long name] 9|[1]|[Grad] # -COMMIT --QUERY MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.workedHours,a.usedNames +-STATEMENT MATCH (a:person) WHERE a.ID > 8 RETURN a.ID, a.workedHours,a.usedNames ---- 3 10|[10,11,12,3,4,5,6,7]|[Ad,De,Hi,Kye,Orlan] 11|[1,2,3]|[A,this is a long name] diff --git a/test/test_files/tinysnb/update_node/delete.test b/test/test_files/tinysnb/update_node/delete.test index 53d15610c6..a7af8481f1 100644 --- a/test/test_files/tinysnb/update_node/delete.test +++ b/test/test_files/tinysnb/update_node/delete.test @@ -10,24 +10,24 @@ ---- ok -STATEMENT CREATE (a:person {ID:101}) ---- ok --QUERY MATCH (a:person) WHERE a.ID = 101 RETURN a.ID, a.fName, a.age +-STATEMENT MATCH (a:person) WHERE a.ID = 101 RETURN a.ID, a.fName, a.age ---- 1 101|| -CASE MixedDeleteInsertTest -STATEMENT CREATE (a:organisation {ID:30, mark:3.3}) ---- ok --QUERY MATCH (a:organisation) WHERE a.ID = 30 RETURN a.orgCode, a.mark +-STATEMENT MATCH (a:organisation) WHERE a.ID = 30 RETURN a.orgCode, a.mark ---- 1 |3.300000 -STATEMENT MATCH (a:organisation) WHERE a.ID = 30 DELETE a ---- ok --QUERY MATCH (a:organisation) WHERE a.ID = 30 RETURN a.orgCode, a.mark +-STATEMENT MATCH (a:organisation) WHERE a.ID = 30 RETURN a.orgCode, a.mark ---- 0 -STATEMENT CREATE (a:organisation {ID:30, orgCode:33}) ---- ok --QUERY MATCH (a:organisation) WHERE a.ID = 30 RETURN a.orgCode, a.mark +-STATEMENT MATCH (a:organisation) WHERE a.ID = 30 RETURN a.orgCode, a.mark ---- 1 33| diff --git a/test/test_files/tinysnb/update_node/set.test b/test/test_files/tinysnb/update_node/set.test index 0803678c6b..a025922bcf 100644 --- a/test/test_files/tinysnb/update_node/set.test +++ b/test/test_files/tinysnb/update_node/set.test @@ -6,56 +6,56 @@ -CASE SetNodeInt64PropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.age=20 + 50 ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.age +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.age ---- 1 70 -CASE SetNodeInt32PropTest -STATEMENT MATCH (a:movies) WHERE a.name='Roma' SET a.length=2.2 ---- ok --QUERY MATCH (a:movies) WHERE a.name='Roma' RETURN a.length +-STATEMENT MATCH (a:movies) WHERE a.name='Roma' RETURN a.length ---- 1 2 -CASE SetNodeDoublePropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.eyeSight=1.0 ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.eyeSight +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.eyeSight ---- 1 1.000000 -CASE SetNodeFloatPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.height=12 ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.height +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.height ---- 1 12.000000 -CASE SetNodeBoolPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.isStudent=false ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.isStudent +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.isStudent ---- 1 False -CASE SetNodeDatePropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.birthdate='2200-10-10' ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.birthdate +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.birthdate ---- 1 2200-10-10 -CASE SetNodeTimestampPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.registerTime='2200-10-10 12:01:01' ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.registerTime +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.registerTime ---- 1 2200-10-10 12:01:01 -CASE SetNodeEmptyStringPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.fName='' ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.fName +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.fName ---- 1 # end of SetNodeEmptyStringPropTest @@ -63,14 +63,14 @@ False -CASE SetNodeShortStringPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.fName=string(22) ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.fName +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.fName ---- 1 22 -CASE SetNodeLongStringPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.fName='abcdefghijklmnopqrstuvwxyz' ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.fName +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.fName ---- 1 abcdefghijklmnopqrstuvwxyz @@ -84,14 +84,14 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetNodeIntervalPropTest -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.lastJobDuration=interval('1 years 1 days') ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.lastJobDuration +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.lastJobDuration ---- 1 1 year 1 day -CASE SetNodePropNullTest -STATEMENT MATCH (a:person) SET a.age=null ---- ok --QUERY MATCH (a:person) RETURN a.age +-STATEMENT MATCH (a:person) RETURN a.age ---- 8 @@ -106,7 +106,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetBothUnflatTest -STATEMENT MATCH (a:person) SET a.age=a.ID ---- ok --QUERY MATCH (a:person) WHERE a.ID < 4 RETURN a.ID, a.age +-STATEMENT MATCH (a:person) WHERE a.ID < 4 RETURN a.ID, a.age ---- 3 0|0 2|2 @@ -115,7 +115,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetFlatUnFlatTest -STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE a.ID=0 SET a.age=b.age ---- ok --QUERY MATCH (a:person) WHERE a.ID < 4 RETURN a.ID, a.age +-STATEMENT MATCH (a:person) WHERE a.ID < 4 RETURN a.ID, a.age ---- 3 0|20 2|30 @@ -124,7 +124,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetUnFlatFlatTest -STATEMENT MATCH (a:person)-[:knows]->(b:person) WHERE b.ID=2 AND a.ID = 0 SET b.age=a.age ---- ok --QUERY MATCH (a:person) WHERE a.ID < 4 RETURN a.ID, a.age +-STATEMENT MATCH (a:person) WHERE a.ID < 4 RETURN a.ID, a.age ---- 3 0|35 2|35 @@ -133,7 +133,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetTwoHopTest -STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) WHERE b.ID=0 AND c.fName = 'Bob' SET a.age=c.age ---- ok --QUERY MATCH (a:person) WHERE a.ID < 6 RETURN a.ID, a.age +-STATEMENT MATCH (a:person) WHERE a.ID < 6 RETURN a.ID, a.age ---- 4 0|35 2|30 @@ -143,7 +143,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetTwoHopNullTest -STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows]->(c:person) SET a.age=null ---- ok --QUERY MATCH (a:person) RETURN a.ID, a.age +-STATEMENT MATCH (a:person) RETURN a.ID, a.age ---- 8 0| 10|83 @@ -157,7 +157,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetIndexNestedLoopJoinTest -STATEMENT MATCH (a:person), (b:person) WHERE a.ID = b.ID SET a.age=b.gender ---- ok --QUERY MATCH (a:person) RETURN a.ID, a.age +-STATEMENT MATCH (a:person) RETURN a.ID, a.age ---- 8 0|1 10|2 @@ -171,7 +171,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -CASE SetRelInt16PropTest -STATEMENT MATCH (a:person)-[e:studyAt]->(b:organisation) WHERE a.ID = 0 SET e.length=99 ---- ok --QUERY MATCH (a:person)-[e:studyAt]->(b:organisation) RETURN e.length +-STATEMENT MATCH (a:person)-[e:studyAt]->(b:organisation) RETURN e.length ---- 3 22 55 @@ -182,7 +182,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -SKIP -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.workedHours=[10,20] ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.workedHours +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.workedHours ---- 1 [10,20] @@ -190,7 +190,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -SKIP -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.usedNames=['intel','microsoft'] ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.usedNames +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.usedNames ---- 1 [intel,microsoft] @@ -198,7 +198,7 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -SKIP -STATEMENT MATCH (a:person) WHERE a.ID=0 SET a.usedNames=['abcndwjbwesdsd','microsofthbbjuwgedsd'] ---- ok --QUERY MATCH (a:person) WHERE a.ID=0 RETURN a.usedNames +-STATEMENT MATCH (a:person) WHERE a.ID=0 RETURN a.usedNames ---- 1 [abcndwjbwesdsd,microsofthbbjuwgedsd] @@ -206,6 +206,6 @@ Runtime exception: Maximum length of strings is 4096. Input string's length is 2 -SKIP -STATEMENT MATCH (a:person) WHERE a.ID=8 SET a.courseScoresPerTerm=[[10,20],[0,0,0]] ---- ok --QUERY MATCH (a:person) WHERE a.ID=8 RETURN a.courseScoresPerTerm +-STATEMENT MATCH (a:person) WHERE a.ID=8 RETURN a.courseScoresPerTerm ---- 1 [[10,20],[0,0,0]] diff --git a/test/test_files/tinysnb/var_length_extend/multi_label.test b/test/test_files/tinysnb/var_length_extend/multi_label.test index 7c9d3ad1b4..88ddd3755c 100644 --- a/test/test_files/tinysnb/var_length_extend/multi_label.test +++ b/test/test_files/tinysnb/var_length_extend/multi_label.test @@ -5,13 +5,13 @@ -CASE MultiLabel --NAME NodeMultiLabelTest --QUERY MATCH (a)-[e:knows*1..2]->(b) RETURN COUNT(*) +-LOG NodeMultiLabelTest +-STATEMENT MATCH (a)-[e:knows*1..2]->(b) RETURN COUNT(*) ---- 1 50 --NAME NodeUndirectedTest --QUERY MATCH (a)-[e:knows*1..2]-(b) WHERE a.fName = 'Alice' AND b.fName = 'Bob' RETURN COUNT(*) +-LOG NodeUndirectedTest +-STATEMENT MATCH (a)-[e:knows*1..2]-(b) WHERE a.fName = 'Alice' AND b.fName = 'Bob' RETURN COUNT(*) ---- 1 10 @@ -23,8 +23,8 @@ #{_NODES: [0:4,1:2,0:3], _RELS: [5:2,5:1]} #{_NODES: [0:4,1:2,0:4], _RELS: [5:2,5:2]} #{_NODES: [0:4,1:2], _RELS: [5:2]} --NAME NodeUndirectedTest2 --QUERY MATCH (a)-[e:knows|:studyAt|:workAt*1..2]-(b) WHERE a.ID=7 RETURN id(rels(e)[1]), (rels(e)[1]).rating, (nodes(e)[2]).ID +-LOG NodeUndirectedTest2 +-STATEMENT MATCH (a)-[e:knows|:studyAt|:workAt*1..2]-(b) WHERE a.ID=7 RETURN id(rels(e)[1]), (rels(e)[1]).rating, (nodes(e)[2]).ID ---- 8 3:12||8 3:12||8 @@ -42,8 +42,8 @@ #1|{_NODES: [0:0,1:0], _RELS: [4:0]} #4|{_NODES: [0:0,0:2,1:1], _RELS: [3:1,5:0]} #6|{_NODES: [0:0,0:3,1:2], _RELS: [3:2,5:1]} --NAME RelMultiLabelTest --QUERY MATCH (a:person)-[e*1..2]->(b:organisation) WHERE a.fName = 'Alice' RETURN b.ID, id(rels(e)[1]), (nodes(e)[2]).ID +-LOG RelMultiLabelTest +-STATEMENT MATCH (a:person)-[e*1..2]->(b:organisation) WHERE a.fName = 'Alice' RETURN b.ID, id(rels(e)[1]), (nodes(e)[2]).ID ---- 6 1|3:0|2 1|4:0|1 @@ -56,21 +56,21 @@ #1|{_NODES: [0:0,0:1,1:0], _RELS: [7:0,4:1]} #5|{_NODES: [0:0,0:1,0:3], _RELS: [6:0,6:1]} #5|{_NODES: [0:0,0:1,0:3], _RELS: [7:0,6:1]} --NAME MixMultiLabelTest2 --QUERY MATCH (a:person)-[e:meets|:marries|:studyAt*2..2]->(b) WHERE a.fName = 'Alice' RETURN b.ID, id(rels(e)[2]), (nodes(e)[3]).ID +-LOG MixMultiLabelTest2 +-STATEMENT MATCH (a:person)-[e:meets|:marries|:studyAt*2..2]->(b) WHERE a.fName = 'Alice' RETURN b.ID, id(rels(e)[2]), (nodes(e)[3]).ID ---- 4 1|4:1|1 1|4:1|1 5|6:1|5 5|6:1|5 --NAME MixMultiLabelTest3 --QUERY MATCH (a:person)-[e:meets|:marries|:studyAt*2..2]->(b) WHERE a.fName = 'Alice' AND b.ID < 5 RETURN COUNT(*) +-LOG MixMultiLabelTest3 +-STATEMENT MATCH (a:person)-[e:meets|:marries|:studyAt*2..2]->(b) WHERE a.fName = 'Alice' AND b.ID < 5 RETURN COUNT(*) -ENUMERATE ---- 1 2 --NAME MixMultiLabelTest4 --QUERY MATCH (a:person)-[e*2..2]->(b:organisation) WHERE a.fName = 'Alice' RETURN COUNT(*) +-LOG MixMultiLabelTest4 +-STATEMENT MATCH (a:person)-[e*2..2]->(b:organisation) WHERE a.fName = 'Alice' RETURN COUNT(*) ---- 1 5 diff --git a/test/test_files/tinysnb/var_length_extend/n_1.test b/test/test_files/tinysnb/var_length_extend/n_1.test index 2cd7408f54..7d41220fb7 100644 --- a/test/test_files/tinysnb/var_length_extend/n_1.test +++ b/test/test_files/tinysnb/var_length_extend/n_1.test @@ -13,13 +13,13 @@ -CASE VarLengthExtendN1Tests --NAME meetsOneToTwoHopTest --QUERY MATCH (a:person)-[:meets*1..2]->(b:person) RETURN COUNT(*) +-LOG meetsOneToTwoHopTest +-STATEMENT MATCH (a:person)-[:meets*1..2]->(b:person) RETURN COUNT(*) ---- 1 13 --NAME meetsThreeHopMinLenEqualsMaxLen --QUERY MATCH (a:person)-[:meets*3..3]->(b:person) RETURN COUNT(*) +-LOG meetsThreeHopMinLenEqualsMaxLen +-STATEMENT MATCH (a:person)-[:meets*3..3]->(b:person) RETURN COUNT(*) ---- 1 4 @@ -28,18 +28,18 @@ # 3 levels (Node 3 -> Node 7 -> Node 3 -> Node 7), which generates 6 paths (3 paths of length 2 and 3 paths of length # 3). Node 5 doesn't have any adjacent nodes. Node 8,9 can extend 2 or 3 levels (Node 8 9 -> Node 3 -> Node 7 -> Node # 3), which generates another 4 paths (2 paths of length 2 and 2 paths of length 3). In total, there are 15 paths. --NAME varLenAdjListJoinWithVarLenColumnJoinTwoToFourHopTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:meets*2..3]->(c:person) RETURN COUNT(*) +-LOG varLenAdjListJoinWithVarLenColumnJoinTwoToFourHopTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:meets*2..3]->(c:person) RETURN COUNT(*) ---- 1 13 --NAME meetsLongPathTest --QUERY MATCH (a:person)-[:meets*8..11]->(b:person) RETURN COUNT(*) +-LOG meetsLongPathTest +-STATEMENT MATCH (a:person)-[:meets*8..11]->(b:person) RETURN COUNT(*) ---- 1 16 --NAME meetsOneToTwoHopWithFilterTest --QUERY MATCH (a:person)-[:meets*1..2]->(b:person) WHERE a.ID = 3 RETURN b.fName +-LOG meetsOneToTwoHopWithFilterTest +-STATEMENT MATCH (a:person)-[:meets*1..2]->(b:person) WHERE a.ID = 3 RETURN b.fName ---- 2 Carol Elizabeth @@ -47,7 +47,7 @@ Elizabeth # Node 3,7,8,9 can extend 3,4 levels and generate 8 paths (by using the above formulas). Node 0,2,5,10 don't have # such paths, the optional match will put 'null' in the b valueVector for Node 0,2,5,10. In total, we have 12 output # tuples. --NAME KnowsWithOptionalMatch --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:meets*3..4]->(b:person) RETURN COUNT(*) +-LOG KnowsWithOptionalMatch +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:meets*3..4]->(b:person) RETURN COUNT(*) ---- 1 12 diff --git a/test/test_files/tinysnb/var_length_extend/n_n.test b/test/test_files/tinysnb/var_length_extend/n_n.test index e76d492b2f..9e2f17a1c1 100644 --- a/test/test_files/tinysnb/var_length_extend/n_n.test +++ b/test/test_files/tinysnb/var_length_extend/n_n.test @@ -14,31 +14,31 @@ -CASE VarLengthExtendNNTests --NAME KnowsThreeHopMinLenEqualsMaxLen --QUERY MATCH (a:person)-[e:knows*3..3]->(b:person) RETURN COUNT(*) +-LOG KnowsThreeHopMinLenEqualsMaxLen +-STATEMENT MATCH (a:person)-[e:knows*3..3]->(b:person) RETURN COUNT(*) -PARALLELISM 1 ---- 1 108 --NAME KnowsKnows2To4HopTest --QUERY MATCH (a:person)-[:knows]->(b:person)-[:knows*2..4]->(c:person) RETURN COUNT(*) +-LOG KnowsKnows2To4HopTest +-STATEMENT MATCH (a:person)-[:knows]->(b:person)-[:knows*2..4]->(c:person) RETURN COUNT(*) ---- 1 1404 --NAME KnowsLongPathTest --QUERY MATCH (a:person)-[:knows*8..11]->(b:person) RETURN COUNT(*) +-LOG KnowsLongPathTest +-STATEMENT MATCH (a:person)-[:knows*8..11]->(b:person) RETURN COUNT(*) -PARALLELISM 1 ---- 1 1049760 --NAME KnowsOneToTwoHopWithFilterTest --QUERY MATCH (a:person)-[:knows*1..2]->(b:person) WHERE a.ID = 7 RETURN b.fName +-LOG KnowsOneToTwoHopWithFilterTest +-STATEMENT MATCH (a:person)-[:knows*1..2]->(b:person) WHERE a.ID = 7 RETURN b.fName ---- 2 Farooq Greg --NAME KnowsWithOptionalMatch --QUERY MATCH (a:person) OPTIONAL MATCH (a)-[:knows*2..3]->(b:person) RETURN COUNT(*) +-LOG KnowsWithOptionalMatch +-STATEMENT MATCH (a:person) OPTIONAL MATCH (a)-[:knows*2..3]->(b:person) RETURN COUNT(*) ---- 1 148 @@ -54,8 +54,8 @@ Greg #[3:2,3:11]|Dan #[3:2,3:9]|Dan #[3:2]|Dan --NAME KnowsOneToTwoHopTest --QUERY MATCH (a:person)-[e:knows*1..2]->(b:person) WHERE a.fName='Alice' RETURN id(rels(e)[1]), ((nodes(e))[2]).fName +-LOG KnowsOneToTwoHopTest +-STATEMENT MATCH (a:person)-[e:knows*1..2]->(b:person) WHERE a.fName='Alice' RETURN id(rels(e)[1]), ((nodes(e))[2]).fName ---- 12 3:0|Bob 3:0|Bob diff --git a/test/test_runner/test_parser.cpp b/test/test_runner/test_parser.cpp index f9a5108565..3273cc2e8a 100644 --- a/test/test_runner/test_parser.cpp +++ b/test/test_runner/test_parser.cpp @@ -138,13 +138,12 @@ TestStatement* TestParser::extractStatement(TestStatement* statement) { } tokenize(); switch (currentToken.type) { - case TokenType::NAME: { + case TokenType::LOG: { checkMinimumParams(1); - statement->name = currentToken.params[1]; + statement->logMessage = paramsToString(1); break; } - case TokenType::STATEMENT: - case TokenType::QUERY: { + case TokenType::STATEMENT: { std::string query = paramsToString(1); query += extractTextBeforeNextStatement(true); replaceVariables(query); @@ -265,7 +264,7 @@ void TestParser::parseBody() { variableMap[currentToken.params[1]] = parseCommand(); break; } - case TokenType::STATEMENT_BLOCK: { + case TokenType::INSERT_STATEMENT_BLOCK: { checkMinimumParams(1); addStatementBlock(currentToken.params[1], testCaseName); break; diff --git a/test/test_runner/test_runner.cpp b/test/test_runner/test_runner.cpp index 35615fa918..7ed7659d96 100644 --- a/test/test_runner/test_runner.cpp +++ b/test/test_runner/test_runner.cpp @@ -22,7 +22,7 @@ void TestRunner::runTest( } void TestRunner::initializeConnection(TestStatement* statement, Connection& conn) { - spdlog::info("TEST: {}", statement->name); + spdlog::info("DEBUG LOG: {}", statement->logMessage); spdlog::info("QUERY: {}", statement->query); conn.setMaxNumThreadForExec(statement->numThreads); }