1
0
Fork 0

remove now-superfluous tests for V8 versions of AQL functions (#5319)

This commit is contained in:
Jan 2018-05-11 08:31:14 +02:00 committed by GitHub
parent 5d2982fd7c
commit e1da502c67
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 30 additions and 503 deletions

View File

@ -69,8 +69,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(+0)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(+0)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -83,8 +81,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(+1)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(+1)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -97,8 +93,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(++1)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(++1)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -111,8 +105,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(+-5)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(+-5)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -125,8 +117,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(+++5.4)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(+++5.4)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -163,21 +153,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual([ 0 ], getQueryResults("RETURN NOOPT(+[ \"abc\" ])"));
assertEqual([ 3 ], getQueryResults("RETURN NOOPT(+[ \"3\" ])"));
assertEqual([ 0 ], getQueryResults("RETURN NOOPT(+{ })"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+null)"));
assertEqual([ 1 ], getQueryResults("RETURN V8(+true)"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+false)"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+\"value\")"));
assertEqual([ 1 ], getQueryResults("RETURN V8(+\"1\")"));
assertEqual([ -3 ], getQueryResults("RETURN V8(+\"-3\")"));
assertEqual([ -3.4 ], getQueryResults("RETURN V8(+\"-3.4\")"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+[ ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+[ 0 ])"));
assertEqual([ -34 ], getQueryResults("RETURN V8(+[ -34 ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+[ 1, 2 ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+[ \"abc\" ])"));
assertEqual([ 3 ], getQueryResults("RETURN V8(+[ \"3\" ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(+{ })"));
},
////////////////////////////////////////////////////////////////////////////////
@ -190,8 +165,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(-0)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(-0)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -204,8 +177,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(-1)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(-1)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -218,8 +189,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(--1)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(--1)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -232,8 +201,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(-+5)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(-+5)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -246,8 +213,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual(expected, actual);
actual = getQueryResults("RETURN NOOPT(---5.4)");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(---5.4)");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -284,21 +249,6 @@ function ahuacatlArithmeticTestSuite () {
assertEqual([ 0 ], getQueryResults("RETURN NOOPT(-[ \"abc\" ])"));
assertEqual([ -3 ], getQueryResults("RETURN NOOPT(-[ \"3\" ])"));
assertEqual([ 0 ], getQueryResults("RETURN NOOPT(-{ })"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-null)"));
assertEqual([ -1 ], getQueryResults("RETURN V8(-true)"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-false)"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-\"value\")"));
assertEqual([ -1 ], getQueryResults("RETURN V8(-\"1\")"));
assertEqual([ 3 ], getQueryResults("RETURN V8(-\"-3\")"));
assertEqual([ 3.5 ], getQueryResults("RETURN V8(-\"-3.5\")"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-[ ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-[ 0 ])"));
assertEqual([ 34 ], getQueryResults("RETURN V8(-[ -34 ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-[ 1, 2 ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-[ \"abc\" ])"));
assertEqual([ -3 ], getQueryResults("RETURN V8(-[ \"3\" ])"));
assertEqual([ 0 ], getQueryResults("RETURN V8(-{ })"));
},
////////////////////////////////////////////////////////////////////////////////

View File

@ -176,24 +176,6 @@ function arrayAccessTestSuite () {
assertEqual([ null ], result);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief test non-array access
////////////////////////////////////////////////////////////////////////////////
testV8NonArrayRange1 : function () {
var result = AQL_EXECUTE("RETURN NOOPT(V8({ foo: 'bar' }))[0..1]").json;
assertEqual([ null ], result);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief test non-array access
////////////////////////////////////////////////////////////////////////////////
testV8NonArrayRange2 : function () {
var result = AQL_EXECUTE("RETURN NOOPT(V8({ foo: 'bar' }))[-2..-1]").json;
assertEqual([ null ], result);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief test subquery result
////////////////////////////////////////////////////////////////////////////////

View File

@ -74,9 +74,6 @@ function distanceSuite () {
actual = AQL_EXECUTE("RETURN NOOPT(" + query + ")").json;
assertAlmostEqual(expected[0], actual[0]);
actual = AQL_EXECUTE("RETURN NOOPT(V8(" + query + "))").json;
assertAlmostEqual(expected[0], actual[0]);
},
////////////////////////////////////////////////////////////////////////////////
@ -94,9 +91,6 @@ function distanceSuite () {
actual = AQL_EXECUTE("RETURN NOOPT(" + query + ")").json;
assertAlmostEqual(expected[0], actual[0]);
actual = AQL_EXECUTE("RETURN NOOPT(V8(" + query + "))").json;
assertAlmostEqual(expected[0], actual[0]);
},
////////////////////////////////////////////////////////////////////////////////
@ -114,9 +108,6 @@ function distanceSuite () {
actual = AQL_EXECUTE("RETURN NOOPT(" + query + ")").json;
assertAlmostEqual(expected[0], actual[0]);
actual = AQL_EXECUTE("RETURN NOOPT(V8(" + query + "))").json;
assertAlmostEqual(expected[0], actual[0]);
},
////////////////////////////////////////////////////////////////////////////////

View File

@ -39,10 +39,6 @@ function ahuacatlDynamicAttributesTestSuite () {
function checkResult(query, expected) {
var q;
q = "RETURN NOOPT(V8(" + query + "))";
assertEqual(expected, AQL_EXECUTE(q).json[0]);
assertEqual("simple", AQL_EXPLAIN(q).plan.nodes[1].expressionType);
q = "RETURN NOOPT(" + query + ")";
assertEqual(expected, AQL_EXECUTE(q).json[0]);
assertEqual("simple", AQL_EXPLAIN(q).plan.nodes[1].expressionType);
@ -239,10 +235,8 @@ function ahuacatlDynamicAttributesTestSuite () {
doc["test-value-" + i] = i;
expected.push(doc);
}
var actual = AQL_EXECUTE("FOR i IN 1..100 RETURN V8({ [ CONCAT('test-value-', i) ] : i })");
assertEqual(expected, actual.json);
actual = AQL_EXECUTE("FOR i IN 1..100 RETURN { [ CONCAT('test-value-', i) ] : i }");
let actual = AQL_EXECUTE("FOR i IN 1..100 RETURN { [ CONCAT('test-value-', i) ] : i }");
assertEqual(expected, actual.json);
},

View File

@ -94,9 +94,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(PUSH(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(PUSH(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -149,28 +146,6 @@ function ahuacatlListTestSuite () {
l.push(1001);
assertEqual(l, actual[0]);
assertEqual(1002, actual[0].length);
// Reset to default
l.pop();
l.pop();
actual = getQueryResults("RETURN NOOPT(V8(PUSH(" + JSON.stringify(l) + ", 1000, true)))");
assertEqual(l, actual[0]);
assertEqual(1000, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(PUSH(" + JSON.stringify(l) + ", 1000, true)))");
assertEqual(l, actual[0]);
assertEqual(1000, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(PUSH(" + JSON.stringify(l) + ", 1000, false)))");
l.push(1000);
assertEqual(l, actual[0]);
assertEqual(1001, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(PUSH(" + JSON.stringify(l) + ", 1001, true)))");
l.push(1001);
assertEqual(l, actual[0]);
assertEqual(1002, actual[0].length);
},
////////////////////////////////////////////////////////////////////////////////
@ -185,10 +160,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(PUSH())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(PUSH([ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(PUSH([ ], 1, 2, 3))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(PUSH()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(PUSH([ ])))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(PUSH([ ], 1, 2, 3)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -231,9 +202,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(UNSHIFT(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(UNSHIFT(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -286,28 +254,6 @@ function ahuacatlListTestSuite () {
l.unshift(1001);
assertEqual(l, actual[0]);
assertEqual(1002, actual[0].length);
// Reset to start
l.shift();
l.shift();
actual = getQueryResults("RETURN NOOPT(V8(UNSHIFT(" + JSON.stringify(l) + ", 1000, true)))");
assertEqual(l, actual[0]);
assertEqual(1000, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(UNSHIFT(" + JSON.stringify(l) + ", 1000, true)))");
assertEqual(l, actual[0]);
assertEqual(1000, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(UNSHIFT(" + JSON.stringify(l) + ", 1000, false)))");
l.unshift(1000);
assertEqual(l, actual[0]);
assertEqual(1001, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(UNSHIFT(" + JSON.stringify(l) + ", 1001, true)))");
l.unshift(1001);
assertEqual(l, actual[0]);
assertEqual(1002, actual[0].length);
},
////////////////////////////////////////////////////////////////////////////////
@ -322,10 +268,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(UNSHIFT())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(UNSHIFT([ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(UNSHIFT([ ], 1, 2, 3))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(UNSHIFT()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(UNSHIFT([ ])))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(UNSHIFT([ ], 1, 2, 3)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -376,9 +318,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(POP(" + JSON.stringify(d[1]) + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(POP(" + JSON.stringify(d[1]) + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -410,16 +349,6 @@ function ahuacatlListTestSuite () {
l.pop();
assertEqual(l, actual[0]);
assertEqual(996, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(POP(" + JSON.stringify(l) + ")))");
l.pop();
assertEqual(l, actual[0]);
assertEqual(995, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(POP(" + JSON.stringify(l) + ")))");
l.pop();
assertEqual(l, actual[0]);
assertEqual(994, actual[0].length);
},
////////////////////////////////////////////////////////////////////////////////
@ -434,10 +363,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(POP())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(POP([ ], 1))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(POP([ ], 1, 2))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(POP()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(POP([ ], 1)))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(POP([ ], 1, 2)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -490,9 +415,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(SHIFT(" + JSON.stringify(d[1]) + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(SHIFT(" + JSON.stringify(d[1]) + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -527,19 +449,6 @@ function ahuacatlListTestSuite () {
second = l.shift();
assertEqual(l, actual[0]);
assertEqual(998, actual[0].length);
l.unshift(second);
l.unshift(first);
actual = getQueryResults("RETURN NOOPT(V8(SHIFT(" + JSON.stringify(l) + ")))");
l.shift();
assertEqual(l, actual[0]);
assertEqual(999, actual[0].length);
actual = getQueryResults("RETURN NOOPT(V8(SHIFT(" + JSON.stringify(l) + ")))");
l.shift();
assertEqual(l, actual[0]);
assertEqual(998, actual[0].length);
},
////////////////////////////////////////////////////////////////////////////////
@ -554,10 +463,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(SHIFT())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(SHIFT([ ], 1))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(SHIFT([ ], 1, 2))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(SHIFT()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(SHIFT([ ], 1)))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(SHIFT([ ], 1, 2)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -593,19 +498,6 @@ function ahuacatlListTestSuite () {
}
assertEqual(l.length, 0);
for (i = 0; i < 1000; ++i) {
actual = getQueryResults("RETURN NOOPT(V8(PUSH(" + JSON.stringify(l) + ", " + JSON.stringify(i) + ")))");
l.push(i);
assertEqual(l, actual[0]);
}
for (i = 0; i < 1000; ++i) {
actual = getQueryResults("RETURN NOOPT(V8(POP(" + JSON.stringify(l) + ")))");
l.pop();
assertEqual(l, actual[0]);
}
},
////////////////////////////////////////////////////////////////////////////////
@ -656,9 +548,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(APPEND(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(APPEND(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -707,20 +596,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(APPEND(" + JSON.stringify(l) + ", " + JSON.stringify(l1) + ", true))");
assertEqual(1000, actual[0].length);
assertEqual(l, actual[0]);
actual = getQueryResults("RETURN NOOPT(V8(APPEND(" + JSON.stringify(l1) + ", " + JSON.stringify(l2) + ")))");
lx = l1.concat(l2);
assertEqual(1000, actual[0].length);
assertEqual(lx, actual[0]);
actual = getQueryResults("RETURN NOOPT(V8(APPEND(" + JSON.stringify(l) + ", " + JSON.stringify(l1) + ")))");
lx = l.concat(l1);
assertEqual(1500, actual[0].length);
assertEqual(lx, actual[0]);
actual = getQueryResults("RETURN NOOPT(V8(APPEND(" + JSON.stringify(l) + ", " + JSON.stringify(l1) + ", true)))");
assertEqual(1000, actual[0].length);
assertEqual(l, actual[0]);
},
testAppendDocuments : function () {
@ -734,15 +609,6 @@ function ahuacatlListTestSuite () {
for (i = 0; i < 10; ++i) {
assertEqual(actual[i]._key, "test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x) RETURN V8(APPEND([], tmp))", bindVars);
assertEqual(actual.length, 1);
actual = actual[0];
assertEqual(actual.length, 10);
actual = actual.sort(function(l, r) { if (l._key < r._key) { return -1;} else if (l._key > r._key) { return 1;} return 0; });
for (i = 0; i < 10; ++i) {
assertEqual(actual[i]._key, "test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x) RETURN APPEND(tmp, [])", bindVars);
assertEqual(actual.length, 1);
@ -753,15 +619,6 @@ function ahuacatlListTestSuite () {
assertEqual(actual[i]._key, "test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x) RETURN V8(APPEND(tmp, []))", bindVars);
assertEqual(actual.length, 1);
actual = actual[0];
assertEqual(actual.length, 10);
actual = actual.sort(function(l, r) { if (l._key < r._key) { return -1;} else if (l._key > r._key) { return 1;} return 0; });
for (i = 0; i < 10; ++i) {
assertEqual(actual[i]._key, "test" + i);
}
actual = getQueryResults("LET doc = DOCUMENT('nonexistantCollection/nonexistantDocument') RETURN append(doc.t,[1,2,2], true)");
assertEqual(actual[0], [1,2,2]);
},
@ -778,22 +635,9 @@ function ahuacatlListTestSuite () {
assertEqual(actual[i]._key, "test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection SORT x._key RETURN x) RETURN V8(APPEND(tmp, 'stringvalue'))", bindVars);
assertEqual(actual.length, 1);
actual = actual[0];
assertEqual(actual.length, 11);
assertEqual(actual[10], 'stringvalue');
for (i = 0; i < 10; ++i) {
assertEqual(actual[i]._key, "test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x) RETURN APPEND('stringvalue', tmp)", bindVars);
assertEqual(actual.length, 1);
assertNull(actual[0]);
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x) RETURN V8(APPEND('stringvalue', tmp))", bindVars);
assertEqual(actual.length, 1);
assertNull(actual[0]);
},
testAppendDocuments3 : function () {
@ -809,43 +653,20 @@ function ahuacatlListTestSuite () {
assertEqual(actual[i], collectionName + "/test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x._id) RETURN V8(APPEND(tmp, 'stringvalue'))", bindVars);
assertEqual(actual.length, 1);
actual = actual[0];
assertEqual(actual.length, 11);
actual = actual.sort(function(l, r) { if (l < r) { return -1;} else if (l > r) { return 1;} return 0; });
assertEqual('stringvalue', actual[10]);
for (i = 0; i < 10; ++i) {
assertEqual(actual[i], collectionName + "/test" + i);
}
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x._id) RETURN APPEND('stringvalue', tmp)", bindVars);
assertEqual(actual.length, 1);
assertNull(actual[0]);
actual = getQueryResults("LET tmp = (FOR x IN @@collection RETURN x._id) RETURN V8(APPEND('stringvalue', tmp))", bindVars);
assertEqual(actual.length, 1);
assertNull(actual[0]);
},
testAppendSecondUnique : function () {
var actual = getQueryResults("RETURN APPEND('stringvalue', [1,1,1,1,1,1], true)");
assertEqual(actual.length, 1);
actual = actual[0];
assertNull(null);
actual = getQueryResults("RETURN V8(APPEND('stringvalue', [1,1,1,1,1,1], true))");
assertEqual(actual.length, 1);
actual = actual[0];
assertNull(null);
assertNull(actual);
actual = getQueryResults("RETURN APPEND([1,1,1,1,1,1], 'stringvalue', true)");
assertEqual(actual.length, 1);
assertEqual([1, 'stringvalue'], actual[0]);
actual = getQueryResults("RETURN V8(APPEND([1,1,1,1,1,1], 'stringvalue', true))");
assertEqual(actual.length, 1);
assertEqual([1, 'stringvalue'], actual[0]);
},
////////////////////////////////////////////////////////////////////////////////
@ -860,13 +681,8 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(APPEND())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(APPEND([ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(APPEND([ ], [ ], false, [ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(APPEND()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(APPEND([ ])))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(APPEND([ ], [ ], false, [ ])))");
assertEqual([ null ], getQueryResults("RETURN APPEND('foo', [1])"));
assertEqual([ null ], getQueryResults("RETURN V8(APPEND('foo', [1]))"));
},
////////////////////////////////////////////////////////////////////////////////
@ -905,9 +721,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(REMOVE_VALUES(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(REMOVE_VALUES(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -923,10 +736,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_VALUES())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_VALUES([ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_VALUES([ ], [ ], true))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_VALUES()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_VALUES([ ])))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_VALUES([ ], [ ], true)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -970,9 +779,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(REMOVE_VALUE(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(REMOVE_VALUE(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -988,10 +794,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_VALUE())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_VALUE([ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_VALUE([ ], [ ], true, true))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_VALUE()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_VALUE([ ])))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_VALUE([ ], [ ], true, true)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -1037,9 +839,6 @@ function ahuacatlListTestSuite () {
actual = getQueryResults("RETURN NOOPT(REMOVE_NTH(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + "))");
assertEqual(d[0], actual[0], d);
actual = getQueryResults("RETURN NOOPT(V8(REMOVE_NTH(" + d[1].map(function (v) { return JSON.stringify(v); }).join(", ") + ")))");
assertEqual(d[0], actual[0], d);
});
},
@ -1055,10 +854,6 @@ function ahuacatlListTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_NTH())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_NTH([ ]))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(REMOVE_NTH([ ], 1, true))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_NTH()))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_NTH([ ])))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(REMOVE_NTH([ ], 1, true)))");
}
};

View File

@ -54,14 +54,12 @@ function ahuacatlMiscFunctionsTestSuite () { return {
return `RETURN PARSE_IDENTIFIER(${input})`;
case 1:
return `RETURN NOOPT(PARSE_IDENTIFIER(${input}))`;
case 2:
return `RETURN NOOPT(V8(PARSE_IDENTIFIER(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
actual = getQueryResults(buildQuery(i, "'foo/bar'"));
assertEqual([ { collection: 'foo', key: 'bar' } ], actual);
@ -104,14 +102,12 @@ function ahuacatlMiscFunctionsTestSuite () { return {
return `RETURN PARSE_IDENTIFIER(${input})`;
case 1:
return `RETURN NOOPT(PARSE_IDENTIFIER(${input}))`;
case 2:
return `RETURN NOOPT(V8(PARSE_IDENTIFIER(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
expected = [ { collection: cn, key: "foobar" } ];
actual = getQueryResults(buildQuery(i, "DOCUMENT(CONCAT(@cn, '/', @key))"), { cn: cn, key: "foobar" });
assertEqual(expected, actual);
@ -143,14 +139,12 @@ function ahuacatlMiscFunctionsTestSuite () { return {
return `RETURN PARSE_IDENTIFIER(${input})`;
case 1:
return `RETURN NOOPT(PARSE_IDENTIFIER(${input}))`;
case 2:
return `RETURN NOOPT(V8(PARSE_IDENTIFIER(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "'foo', 'bar'"));
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, buildQuery(i, "null"));
@ -177,14 +171,12 @@ function ahuacatlMiscFunctionsTestSuite () { return {
return "RETURN " + q;
case 1:
return "RETURN NOOPT(" + q + ")";
case 2:
return "RETURN NOOPT(V8(" + q + "))";
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertEqual([ true ], getQueryResults(buildQuery(i, "foo", "foo/bar")));
assertEqual([ true ], getQueryResults(buildQuery(i, "foo", "foo/bark")));
assertEqual([ false ], getQueryResults(buildQuery(i, "FOO", "foo/bark")));
@ -232,14 +224,12 @@ function ahuacatlMiscFunctionsTestSuite () { return {
return `RETURN IS_SAME_COLLECTION(${cn}, ${input})`;
case 1:
return `RETURN NOOPT(IS_SAME_COLLECTION(${cn}, ${input}))`;
case 2:
return `RETURN NOOPT(V8(IS_SAME_COLLECTION(${cn}, ${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
actual = getQueryResults(buildQuery(i, "DOCUMENT(CONCAT(@cn, '/', @key))"), { cn: cn, key: "foobar" });
assertTrue(actual[0]);
@ -262,11 +252,8 @@ function ahuacatlMiscFunctionsTestSuite () { return {
testIsSameCollectionInvalid : function () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN IS_SAME_COLLECTION()");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION())");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo')");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo'))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo', 'bar', 'baz')");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', 'bar', 'baz'))");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo', null)");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo', false)");
@ -274,13 +261,6 @@ function ahuacatlMiscFunctionsTestSuite () { return {
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo', 3)");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo', [ ])");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN IS_SAME_COLLECTION('foo', { })");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', null))");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', false))");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', true))");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', 3))");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', [ ]))");
assertQueryWarningAndNull(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, "RETURN V8(IS_SAME_COLLECTION('foo', { }))");
},
////////////////////////////////////////////////////////////////////////////////
@ -303,14 +283,12 @@ function ahuacatlMiscFunctionsTestSuite () { return {
return `RETURN DOCUMENT(${input})`;
case 1:
return `RETURN NOOPT(DOCUMENT(${input}))`;
case 2:
return `RETURN NOOPT(V8(DOCUMENT(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
// test with two parameters
expected = [ { title: "123", value : 456 } ];
actual = getQueryResults(buildQuery(i, cn + ", \"" + d1._id + "\""));
@ -534,9 +512,6 @@ function ahuacatlMiscFunctionsTestSuite () { return {
actual = getQueryResults("RETURN NOOPT(CURRENT_DATABASE())");
assertEqual([ "_system" ], actual);
actual = getQueryResults("RETURN NOOPT(V8(CURRENT_DATABASE()))");
assertEqual([ "_system" ], actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -643,20 +618,13 @@ function ahuacatlCollectionCountTestSuite () {
testLengthNonExisting : function () {
var cnot = cn + "DoesNotExist";
var queries = [
"RETURN LENGTH(" + cnot + ")",
"RETURN V8(LENGTH(" + cnot + "))"
];
queries.forEach(function(q) {
try {
AQL_EXECUTE(q);
fail();
}
catch (err) {
assertEqual(errors.ERROR_ARANGO_DATA_SOURCE_NOT_FOUND.code, err.errorNum);
}
});
try {
AQL_EXECUTE("RETURN LENGTH(" + cnot + ")");
fail();
}
catch (err) {
assertEqual(errors.ERROR_ARANGO_DATA_SOURCE_NOT_FOUND.code, err.errorNum);
}
},
////////////////////////////////////////////////////////////////////////////////
@ -664,16 +632,9 @@ function ahuacatlCollectionCountTestSuite () {
////////////////////////////////////////////////////////////////////////////////
testLength : function () {
var queries = [
"RETURN LENGTH(" + cn + ")",
"RETURN V8(LENGTH(" + cn + "))"
];
queries.forEach(function(q) {
var actual = AQL_EXECUTE(q);
assertEqual([ ], actual.warnings);
assertEqual([ 1000 ], actual.json);
});
var actual = AQL_EXECUTE("RETURN LENGTH(" + cn + ")");
assertEqual([ ], actual.warnings);
assertEqual([ 1000 ], actual.json);
},
////////////////////////////////////////////////////////////////////////////////
@ -708,7 +669,6 @@ function ahuacatlCollectionCountTestSuite () {
testCollections : function () {
assertEqual(db._collections().map((col) => {return {name:col.name(),_id:col._id};}), getQueryResults('RETURN NOOPT(COLLECTIONS())')[0]);
assertEqual(db._collections().map((col) => {return {name:col.name(),_id:col._id};}), getQueryResults('RETURN NOOPT(V8(COLLECTIONS()))')[0]);
}
};
}

View File

@ -68,9 +68,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(PI())";
assertAlmostEqual(expected, getQueryResults(query)[0], "comparing NOOPT(PI)");
query = "RETURN NOOPT(V8(PI()))";
assertAlmostEqual(expected, getQueryResults(query)[0], "comparing NOOPT(V8(PI))");
},
////////////////////////////////////////////////////////////////////////////////
@ -140,9 +137,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(LOG(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(LOG(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -213,9 +207,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(LOG2(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(LOG2(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -286,9 +277,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(LOG10(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(LOG10(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -359,9 +347,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(EXP(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(EXP(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -432,9 +417,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(EXP2(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(EXP2(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -503,9 +485,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(RADIANS(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(RADIANS(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -574,9 +553,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(DEGREES(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(DEGREES(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -647,9 +623,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(SIN(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(SIN(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -720,9 +693,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(COS(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(COS(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -793,9 +763,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(TAN(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(TAN(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -869,9 +836,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(ASIN(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(ASIN(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -945,9 +909,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(ACOS(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(ACOS(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -1018,9 +979,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(ATAN(@v))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(ATAN(@v)))";
assertAlmostEqual(v[1], getQueryResults(query, { v: v[0] })[0], query + " " + JSON.stringify(v));
});
},
@ -3847,9 +3805,6 @@ function ahuacatlNumericFunctionsTestSuite () {
query = "RETURN NOOPT(ATAN2(@v1, @v2))";
assertAlmostEqual(v[2], getQueryResults(query, { v1: v[0], v2: v[1] })[0], query + " " + JSON.stringify(v));
query = "RETURN NOOPT(V8(ATAN2(@v1, @v2)))";
assertAlmostEqual(v[2], getQueryResults(query, { v1: v[0], v2: v[1] })[0], query + " " + JSON.stringify(v));
});
},
@ -3865,9 +3820,6 @@ function ahuacatlNumericFunctionsTestSuite () {
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(FLOOR(r))");
assertEqual(expected, actual);
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(V8(FLOOR(r)))");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -3881,13 +3833,11 @@ function ahuacatlNumericFunctionsTestSuite () {
return `RETURN FLOOR(${input})`;
case 1:
return `RETURN NOOPT(FLOOR(${input}))`;
case 2:
return `RETURN NOOPT(V8(FLOOR(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "1, 2"));
assertEqual([ 0 ], getQueryResults(buildQuery(i, "null")));
@ -3910,9 +3860,6 @@ function ahuacatlNumericFunctionsTestSuite () {
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(CEIL(r))");
assertEqual(expected, actual);
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(V8(CEIL(r)))");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -3926,13 +3873,11 @@ function ahuacatlNumericFunctionsTestSuite () {
return `RETURN CEIL(${input})`;
case 1:
return `RETURN NOOPT(CEIL(${input}))`;
case 2:
return `RETURN NOOPT(V8(CEIL(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "1, 2"));
assertEqual([ 0 ], getQueryResults(buildQuery(i, "null")));
@ -3962,12 +3907,6 @@ function ahuacatlNumericFunctionsTestSuite () {
for (i = 0; i < expected.length; ++i) {
assertEqual(expected[i].toPrecision(5), actual[i].toPrecision(5));
}
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(V8(ABS(r)))");
assertEqual(actual.length, expected.length);
for (i = 0; i < expected.length; ++i) {
assertEqual(expected[i].toPrecision(5), actual[i].toPrecision(5));
}
},
////////////////////////////////////////////////////////////////////////////////
@ -3981,13 +3920,11 @@ function ahuacatlNumericFunctionsTestSuite () {
return `RETURN ABS(${input})`;
case 1:
return `RETURN NOOPT(ABS(${input}))`;
case 2:
return `RETURN NOOPT(V8(ABS(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "1,2"));
assertEqual([ 0 ], getQueryResults(buildQuery(i, "null")));
@ -4010,9 +3947,6 @@ function ahuacatlNumericFunctionsTestSuite () {
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(ROUND(r))");
assertEqual(expected, actual);
actual = getQueryResults("FOR r IN [ -99.999, -3, -2.1, -2.01, -2, -1.99, -1.1, -1.01, -1, -0.9, -0.6, -0.5, -0.4, -0.1, -0.01, 0, 0.01, 0.1, 0.4, 0.5, 0.6, 0.9, 1, 1.01, 1.1, 1.99, 2, 2.01, 2.1, 3, 99.999 ] return NOOPT(V8(ROUND(r)))");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -4026,14 +3960,12 @@ function ahuacatlNumericFunctionsTestSuite () {
return `RETURN ROUND(${input})`;
case 1:
return `RETURN NOOPT(ROUND(${input}))`;
case 2:
return `RETURN NOOPT(V8(ROUND(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "1,2"));
assertEqual([ 0 ], getQueryResults(buildQuery(i, "null")));
@ -4052,8 +3984,7 @@ function ahuacatlNumericFunctionsTestSuite () {
testRand : function () {
var queries = [
"FOR r IN [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ] RETURN RAND()",
"FOR r IN [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ] RETURN NOOPT(RAND())",
"FOR r IN [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ] RETURN NOOPT(V8(RAND()))"
"FOR r IN [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ] RETURN NOOPT(RAND())"
];
queries.forEach(function(query) {
var actual = getQueryResults(query);
@ -4076,9 +4007,6 @@ function ahuacatlNumericFunctionsTestSuite () {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(RAND(1))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(RAND(2))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(RAND(1)))");
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN NOOPT(V8(RAND(2)))");
},
////////////////////////////////////////////////////////////////////////////////
@ -4149,14 +4077,6 @@ function ahuacatlNumericFunctionsTestSuite () {
// if (value[1] === null) {
// assertEqual(0, actual[0]);
// }
// else {
assertAlmostEqual(value[1], actual[0], query);
// }
query = "RETURN NOOPT(V8(SQRT(" + JSON.stringify(value[0]) + ")))";
actual = getQueryResults(query);
// if (value[1] === null) {
// assertEqual(0, actual[0]);
// }
// else {
assertAlmostEqual(value[1], actual[0], query);
// }
@ -4174,13 +4094,11 @@ function ahuacatlNumericFunctionsTestSuite () {
return `RETURN SQRT(${input})`;
case 1:
return `RETURN NOOPT(SQRT(${input}))`;
case 2:
return `RETURN NOOPT(V8(SQRT(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "2, 2"));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "2, 2, 3"));
@ -5803,20 +5721,12 @@ function ahuacatlNumericFunctionsTestSuite () {
var valgrind = require("internal").valgrind;
data.forEach(function (value) {
if (valgrind && (value[0] === 0 || value[1] >= 0 && value[1] < 1)) {
// V8 under Valgrind has an issue with Math.pow(0, 0.1);
return;
}
var query = "RETURN POW(" + JSON.stringify(value[0]) + ", " + JSON.stringify(value[1]) + ")";
var actual = getQueryResults(query);
assertAlmostEqual(value[2], actual[0], query + " " + JSON.stringify(value));
actual = getQueryResults("RETURN NOOPT(POW(" + JSON.stringify(value[0]) + ", " + JSON.stringify(value[1]) + "))");
assertAlmostEqual(value[2], actual[0], value, query + " " + JSON.stringify(value));
query = "RETURN NOOPT(V8(POW(" + JSON.stringify(value[0]) + ", " + JSON.stringify(value[1]) + ")))";
actual = getQueryResults(query);
assertAlmostEqual(value[2], actual[0], query + " " + JSON.stringify(value));
});
},
@ -5831,13 +5741,11 @@ function ahuacatlNumericFunctionsTestSuite () {
return `RETURN POW(${input})`;
case 1:
return `RETURN NOOPT(POW(${input}))`;
case 2:
return `RETURN NOOPT(V8(POW(${input})))`;
default:
assertTrue(false, "Undefined state");
}
};
for (var i = 0; i < 3; ++i) {
for (var i = 0; i < 2; ++i) {
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, ""));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "2"));
assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, buildQuery(i, "2, 2, 3"));

View File

@ -697,9 +697,9 @@ function multiCollectionGraphSuite () {
});
},
testNoBindParameterV8Function: function () {
testNoBindParameterRandFunction: function () {
var query = 'FOR s IN ' + vn + ' FOR x, e, p IN OUTBOUND s ' +
en + ' FILTER p.vertices[1]._key == NOOPT(V8(RAND())) SORT x._key RETURN x';
en + ' FILTER p.vertices[1]._key == NOOPT(RAND()) SORT x._key RETURN x';
var result = db._query(query).toArray();
assertEqual(result.length, 0);
var plans = AQL_EXPLAIN(query, { }, opts).plans;

View File

@ -678,8 +678,6 @@ function ahuacatlOperatorsTestSuite () {
assertEqual(v.ex, db._query(q).next(), q);
q = `RETURN NOOPT(TO_STRING(${v.val}))`;
assertEqual(v.ex, db._query(q).next(), q);
q = `RETURN NOOPT(V8(TO_STRING(${v.val})))`;
assertEqual(v.ex, db._query(q).next(), q);
});
},

View File

@ -45,7 +45,6 @@ function optimizerOperatorsTestSuite () {
testOrLhsDynamicRhsFalse : function() {
var queries = [
"RETURN @data.value || 0",
"RETURN V8(@data.value || 0)",
"RETURN NOOPT(@data.value || 0)"
];
@ -66,7 +65,6 @@ function optimizerOperatorsTestSuite () {
testOrLhsDynamicRhsTrue : function() {
var queries = [
"RETURN @data.value || 1",
"RETURN V8(@data.value || 1)",
"RETURN NOOPT(@data.value || 1)"
];
@ -87,7 +85,6 @@ function optimizerOperatorsTestSuite () {
testOrRhsDynamicLhsFalse : function() {
var queries = [
"RETURN 0 || @data.value",
"RETURN V8(0 || @data.value)",
"RETURN NOOPT(0 || @data.value)"
];
@ -108,7 +105,6 @@ function optimizerOperatorsTestSuite () {
testOrRhsDynamicLhsTrue : function() {
var queries = [
"RETURN 1 || @data.value",
"RETURN V8(1 || @data.value)",
"RETURN NOOPT(1 || @data.value)"
];
@ -129,7 +125,6 @@ function optimizerOperatorsTestSuite () {
testAndLhsDynamicRhsFalse : function() {
var queries = [
"RETURN @data.value && 0",
"RETURN V8(@data.value && 0)",
"RETURN NOOPT(@data.value && 0)"
];
@ -149,7 +144,6 @@ function optimizerOperatorsTestSuite () {
testAndLhsDynamicRhsTrue : function() {
var queries = [
"RETURN @data.value && 1",
"RETURN V8(@data.value && 1)",
"RETURN NOOPT(@data.value && 1)"
];
@ -169,7 +163,6 @@ function optimizerOperatorsTestSuite () {
testNot : function() {
var queries = [
"RETURN !@data.value",
"RETURN V8(!@data.value)",
"RETURN NOOPT(!@data.value)"
];

View File

@ -60,9 +60,6 @@ function optimizerQuantifiersTestSuite () {
result = AQL_EXECUTE("RETURN NOOPT(" + query + ")").json[0];
assertEqual(true, result);
result = AQL_EXECUTE("RETURN V8(" + query + ")").json[0];
assertEqual(true, result);
},
testAnyEmpty : function () {
@ -73,9 +70,6 @@ function optimizerQuantifiersTestSuite () {
result = AQL_EXECUTE("RETURN NOOPT(" + query + ")").json[0];
assertEqual(false, result);
result = AQL_EXECUTE("RETURN V8(" + query + ")").json[0];
assertEqual(false, result);
},
testNoneEmpty : function () {
@ -86,9 +80,6 @@ function optimizerQuantifiersTestSuite () {
result = AQL_EXECUTE("RETURN NOOPT(" + query + ")").json[0];
assertEqual(true, result);
result = AQL_EXECUTE("RETURN V8(" + query + ")").json[0];
assertEqual(true, result);
},
////////////////////////////////////////////////////////////////////////////////
@ -104,15 +95,7 @@ function optimizerQuantifiersTestSuite () {
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ALL > doc.value SORT doc.value RETURN doc.value", [ 0, 0 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ALL >= doc.value SORT doc.value RETURN doc.value", [ 0, 0, 1, 1 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ALL < doc.value SORT doc.value RETURN doc.value", [ 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ALL <= doc.value SORT doc.value RETURN doc.value", [ 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL IN [ doc.value ]) SORT doc.value RETURN doc.value", [ ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL NOT IN [ doc.value ]) SORT doc.value RETURN doc.value", [ 0, 0, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL == doc.value) SORT doc.value RETURN doc.value", [ ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL != doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL > doc.value) SORT doc.value RETURN doc.value", [ 0, 0 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL >= doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 1, 1 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL < doc.value) SORT doc.value RETURN doc.value", [ 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ALL <= doc.value) SORT doc.value RETURN doc.value", [ 3, 3, 4, 4 ] ]
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ALL <= doc.value SORT doc.value RETURN doc.value", [ 3, 3, 4, 4 ] ]
];
queries.forEach(function(query) {
@ -134,15 +117,7 @@ function optimizerQuantifiersTestSuite () {
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ANY > doc.value SORT doc.value RETURN doc.value", [ 0, 0, 1, 1, 2, 2 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ANY >= doc.value SORT doc.value RETURN doc.value", [ 0, 0, 1, 1, 2, 2, 3, 3 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ANY < doc.value SORT doc.value RETURN doc.value", [ 2, 2, 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ANY <= doc.value SORT doc.value RETURN doc.value", [ 1, 1, 2, 2, 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY IN [ doc.value ]) SORT doc.value RETURN doc.value", [ 1, 1, 2, 2, 3, 3 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY NOT IN [ doc.value ]) SORT doc.value RETURN doc.value", [ 0, 0, 1, 1, 2, 2, 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY == doc.value) SORT doc.value RETURN doc.value", [ 1, 1, 2, 2, 3, 3 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY != doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 1, 1, 2, 2, 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY > doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 1, 1, 2, 2 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY >= doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 1, 1, 2, 2, 3, 3 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY < doc.value) SORT doc.value RETURN doc.value", [ 2, 2, 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] ANY <= doc.value) SORT doc.value RETURN doc.value", [ 1, 1, 2, 2, 3, 3, 4, 4 ] ]
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] ANY <= doc.value SORT doc.value RETURN doc.value", [ 1, 1, 2, 2, 3, 3, 4, 4 ] ]
];
queries.forEach(function(query) {
@ -164,15 +139,7 @@ function optimizerQuantifiersTestSuite () {
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] NONE > doc.value SORT doc.value RETURN doc.value", [ 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] NONE >= doc.value SORT doc.value RETURN doc.value", [ 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] NONE < doc.value SORT doc.value RETURN doc.value", [ 0, 0, 1, 1 ] ],
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] NONE <= doc.value SORT doc.value RETURN doc.value", [ 0, 0 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE IN [ doc.value ]) SORT doc.value RETURN doc.value", [ 0, 0, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE NOT IN [ doc.value ]) SORT doc.value RETURN doc.value", [ ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE == doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE != doc.value) SORT doc.value RETURN doc.value", [ ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE > doc.value) SORT doc.value RETURN doc.value", [ 3, 3, 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE >= doc.value) SORT doc.value RETURN doc.value", [ 4, 4 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE < doc.value) SORT doc.value RETURN doc.value", [ 0, 0, 1, 1 ] ],
[ "FOR doc IN " + c.name() + " FILTER V8([ 1, 2, 3 ] NONE <= doc.value) SORT doc.value RETURN doc.value", [ 0, 0 ] ]
[ "FOR doc IN " + c.name() + " FILTER [ 1, 2, 3 ] NONE <= doc.value SORT doc.value RETURN doc.value", [ 0, 0 ] ]
];
queries.forEach(function(query) {

View File

@ -137,9 +137,6 @@ describe('Rule optimize-traversals', () => {
`FOR v, e, p IN 2 OUTBOUND 'circles/A' GRAPH '${graphName}'
FILTER NOOPT(CONCAT(p.edges[0]._key, '')) == " + edgeKey + " SORT v._key
RETURN {v:v,e:e,p:p}`,
`FOR v, e, p IN 2 OUTBOUND 'circles/A' GRAPH '${graphName}'
FILTER NOOPT(V8(CONCAT(p.edges[0]._key, ''))) == " + edgeKey + " SORT v._key
RETURN {v:v,e:e,p:p}`,
`FOR snippet IN ['a', 'b']
FOR v, e, p IN 1..5 OUTBOUND 'circles/A' GRAPH '${graphName}'
FILTER p.edges[1].label == CONCAT(snippet, 'ar')
@ -241,9 +238,6 @@ describe('Rule optimize-traversals', () => {
SORT v._key RETURN v._key`,
`WITH circles FOR v, e, p IN 2 OUTBOUND @start @@ecol
FILTER NOOPT(CONCAT(p.edges[0]._key, '')) == @edgeKey
SORT v._key RETURN v._key`,
`WITH circles FOR v, e, p IN 2 OUTBOUND @start @@ecol
FILTER NOOPT(V8(CONCAT(p.edges[0]._key, ''))) == @edgeKey
SORT v._key RETURN v._key`
];
const bindVars = {

View File

@ -265,7 +265,6 @@ function optimizerRuleTestSuite () {
"FOR i IN 1..2 LET a = CONCAT('UnitTestsOptimizer', i) REPLACE CONCAT('UnitTestsOptimizer', i * 2) WITH CONCAT(a, i) INTO UnitTestsOptimizerTest OPTIONS { ignoreErrors: true }",
// same expression types
"FOR doc IN [ { a: 1 }, { a: 2 } ] LET a = V8(ATTRIBUTES(doc)) RETURN V8(KEEP(doc, a))",
"FOR doc IN [ { a: 1 }, { a: 2 } ] LET a = ATTRIBUTES(doc) RETURN KEEP(doc, a)",
// same loop

View File

@ -885,8 +885,6 @@ function ahuacatlQueryCollectionTestSuite () {
];
var actual = getQueryResults("FOR u in " + users.name() + " SORT u.id RETURN HASH(UNSET(u, ['_key', '_rev', '_id']))");
assertEqual(expected, actual);
actual = getQueryResults("FOR u in " + users.name() + " SORT u.id RETURN V8(HASH(UNSET(u, ['_key', '_rev', '_id'])))");
assertEqual(expected, actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -897,8 +895,6 @@ function ahuacatlQueryCollectionTestSuite () {
var expected = [ 1815371496337334 ];
var actual = getQueryResults("RETURN HASH(FOR u in " + users.name() + " SORT u.id RETURN UNSET(u, ['_key', '_rev', '_id']))");
assertEqual(expected, actual);
actual = getQueryResults("RETURN V8(HASH(FOR u in " + users.name() + " SORT u.id RETURN UNSET(u, ['_key', '_rev', '_id'])))");
assertEqual(expected, actual);
}
};