diff --git a/aql/convertQuery.go b/aql/convertQuery.go index b6b936070750caeab7d8fbcee48aa3a7e6404dd3..cffbcd0b1eb4a53c9527b412ad764548cef84e32 100644 --- a/aql/convertQuery.go +++ b/aql/convertQuery.go @@ -49,7 +49,7 @@ func (s *Service) ConvertQuery(JSONQuery *entity.IncomingQueryJSON) (*string, er return nil, errors.New("non-existing relation referenced in return") } } - search(JSONQuery) + //search(JSONQuery) result := createQuery(JSONQuery) return result, nil } @@ -366,7 +366,7 @@ func createRelationLetWithOnlyToEntity(relation *entity.QueryRelationStruct, nam func createLetFor(variableName string, iteratorName string, enumerableName string) string { return "LET " + variableName + " = (\n\tFOR " + iteratorName + " IN " + - enumerableName + "\n" + enumerableName + " \n" } type variableNameGeneratorToken struct { diff --git a/aql/convertQuery_test.go b/aql/convertQuery_test.go index 25b4358aa14054ed7b88ec968faea3b562b09e07..810da7f75f907b4ef135bb91b3edde8eb416367a 100644 --- a/aql/convertQuery_test.go +++ b/aql/convertQuery_test.go @@ -78,7 +78,7 @@ func TestMultipleEntityTypes(t *testing.T) { { "attribute": "partij", "value": "GL", - "dataType": "text", + "dataType": "string", "matchType": "exact" } ] @@ -89,7 +89,7 @@ func TestMultipleEntityTypes(t *testing.T) { { "attribute": "zetels", "value": "6", - "dataType": "number", + "dataType": "int", "matchType": "GT" } ] @@ -121,13 +121,14 @@ func TestMultipleEntityTypes(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := "WITH partijen\nLET n0 = (\n\tFOR x IN kamerleden \n\tFILTER x.partij == \"GL\" \n\tRETURN x\n)\nLET r0 = (\n\tFOR x IN n0 \n\tFOR v, e, p IN 1..1 OUTBOUND x lid_van \n\tOPTIONS { uniqueEdges: \"path\" }\n\tFILTER v.zetels > 6 \n\tLIMIT 5000 \nRETURN DISTINCT p )\n\nLET nodes = first(RETURN UNION_DISTINCT(flatten(r0[**].vertices), [],[]))\nLET edges = first(RETURN UNION_DISTINCT(flatten(r0[**].edges), [],[]))\nRETURN {\"vertices\":nodes, \"edges\":edges }" - cleanedResult := strings.ReplaceAll(correctConvertedResult, "\n", "") - cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") + correctConvertedResult := `WITH partijenLET n0 = (FOR x IN kamerleden FILTER x.partij == "GL" RETURN x)LET r0 = (FOR x IN n0 FOR v, e, p IN 1..1 OUTBOUND x lid_van OPTIONS { uniqueEdges: "path" }FILTER v.zetels > 6 LIMIT 5000 RETURN DISTINCT p )LET nodes = first(RETURN UNION_DISTINCT(flatten(r0[**].vertices), [],[]))LET edges = first(RETURN UNION_DISTINCT(flatten(r0[**].edges), [],[]))RETURN {"vertices":nodes, "edges":edges }` + + //cleanedResult := strings.ReplaceAll(correctConvertedResult, "\n", "") + //cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") convertedCleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") convertedCleanedResult = strings.ReplaceAll(convertedCleanedResult, "\t", "") - assert.Equal(t, convertedCleanedResult, cleanedResult) + assert.Equal(t, correctConvertedResult, convertedCleanedResult) } /* diff --git a/aql/hierarchy.go b/aql/hierarchy.go index 9e95d20b32035c3673fc750b502d2831bed91a8a..837b85600561df59245b97e0892a9ce734a390d2 100644 --- a/aql/hierarchy.go +++ b/aql/hierarchy.go @@ -30,7 +30,7 @@ func search(JSONQuery *entity.IncomingQueryJSON) { initent := pdict{ typename: "entity", - pointer: 3, + pointer: 0, } s = append(s, initent) diff --git a/cypher/convertQuery_test.go b/cypher/convertQuery_test.go index 028455e58b73f596d7f8cda6254bfe9c9ba5e02b..a988d84c51ae65b77b8d526f68508d32a1c36a6b 100644 --- a/cypher/convertQuery_test.go +++ b/cypher/convertQuery_test.go @@ -78,7 +78,7 @@ func TestEntityOneAttributeQuery(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := `MATCH (n0:airports)WHERE n0.state = "HI" RETURN n0` + correctConvertedResult := `MATCH (n0:airports) WHERE n0.state = "HI" RETURN n0` cleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") assert.Equal(t, correctConvertedResult, cleanedResult) @@ -143,7 +143,7 @@ func TestRelationWithConstraint(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := `MATCH (n0:airports)WHERE n0.state = "HI" MATCH p0 = (n0)-[r0:flights*1..1]->()WHERE r0.Day = 15 RETURN n0,p0;` + correctConvertedResult := `MATCH (n0:airports) WHERE n0.state = "HI" MATCH p0 = (n0)-[r0:flights*1..1]->() WHERE r0.Day = 15 RETURN n0,p0;` cleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") assert.Equal(t, correctConvertedResult, cleanedResult) @@ -471,7 +471,7 @@ func TestRelationWithInOutConstraint(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := `MATCH (n1:airports)WHERE n1.state = "HI" MATCH p0 = (n1)-[r0:flights*1..3]->(n0)WHERE r0.Day = 15 RETURN n1,n0,p0;` + correctConvertedResult := `MATCH (n1:airports) WHERE n1.state = "HI" MATCH p0 = (n1)-[r0:flights*1..3]->(n0) WHERE r0.Day = 15 RETURN n1,n0,p0;` cleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") assert.Equal(t, correctConvertedResult, cleanedResult) @@ -571,7 +571,7 @@ func TestTwoRelations(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := `MATCH (n2:airports)WHERE n2.state = "HI" MATCH p0 = (n2)-[r0:flights*1..3]->(n1)WHERE r0.Day = 15 RETURN n2,n1,p0;MATCH (n0:airports)WHERE n0.city = "New York" MATCH p0 = (n0)-[r0:flights*1..1]->()RETURN n0,p0;` + correctConvertedResult := `MATCH (n2:airports) WHERE n2.state = "HI" MATCH p0 = (n2)-[r0:flights*1..3]->(n1) WHERE r0.Day = 15 RETURN n2,n1,p0; MATCH (n0:airports) WHERE n0.city = "New York" MATCH p0 = (n0)-[r0:flights*1..1]->() RETURN n0,p0;` cleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") assert.Equal(t, correctConvertedResult, cleanedResult) @@ -629,7 +629,7 @@ func TestRelationWithOnlyToNode(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := `MATCH (n0:airports)WHERE n0.city = "San Francisco" MATCH p0 = (n0)-[r0:flights*1..1]->()RETURN n0,p0;` + correctConvertedResult := `MATCH (n0:airports) WHERE n0.city = "San Francisco" MATCH p0 = (n0)-[r0:flights*1..1]->() RETURN n0,p0;` cleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") assert.Equal(t, correctConvertedResult, cleanedResult) @@ -835,7 +835,7 @@ func TestNoRelationsField(t *testing.T) { assert.NoError(t, err) // Assert that the result and the expected result are the same - correctConvertedResult := `MATCH (n0:airports)WHERE n0.city = "San Francisco" RETURN n0` + correctConvertedResult := `MATCH (n0:airports) WHERE n0.city = "San Francisco" RETURN n0` cleanedResult := strings.ReplaceAll(*convertedResult, "\n", "") cleanedResult = strings.ReplaceAll(cleanedResult, "\t", "") assert.Equal(t, correctConvertedResult, cleanedResult)