From 4761e9c28cebb01831e09dfbd08ded628ddd74b2 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 14 Jan 2013 00:02:10 +0100 Subject: [PATCH 1/3] added more tests --- .../modules/org/arangodb/graph/traversal.js | 2 +- js/server/tests/ahuacatl-paths.js | 40 ++++++++++++++++++- 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/js/common/modules/org/arangodb/graph/traversal.js b/js/common/modules/org/arangodb/graph/traversal.js index e3e1a1a252..73ddcd5531 100644 --- a/js/common/modules/org/arangodb/graph/traversal.js +++ b/js/common/modules/org/arangodb/graph/traversal.js @@ -531,7 +531,7 @@ function CollectionAnyExpander (config, vertex, path) { /// @brief default expander that expands all edges labeled with one label in config.labels /////////////////////////////////////////////////////////////////////////////////////////// -var ExpandEdgesWithLabels = function (config, vertex, path) { +function ExpandEdgesWithLabels (config, vertex, path) { var result = [ ]; if (!Array.isArray(config.labels)) { config.labels = [config.labels]; diff --git a/js/server/tests/ahuacatl-paths.js b/js/server/tests/ahuacatl-paths.js index a683e4d9dc..9b7692d222 100644 --- a/js/server/tests/ahuacatl-paths.js +++ b/js/server/tests/ahuacatl-paths.js @@ -334,7 +334,7 @@ function ahuacatlQueryTraverseTestSuite () { /// @brief test max-depth filtering //////////////////////////////////////////////////////////////////////////////// - testTraversalDepthFirstMax : function () { + testTraversalDepthFirstMax1 : function () { var config = { strategy: "depthfirst", order: "preorder", @@ -348,6 +348,24 @@ function ahuacatlQueryTraverseTestSuite () { assertEqual([ "A", "B", "C", "D", "C" ], actual); }, +//////////////////////////////////////////////////////////////////////////////// +/// @brief test max-depth filtering +//////////////////////////////////////////////////////////////////////////////// + + testTraversalDepthFirstMax2 : function () { + var config = { + strategy: "depthfirst", + order: "preorder", + itemOrder: "forward", + maxDepth: 3, + _sort: true + }; + + var actual = executeQuery("FOR p IN TRAVERSE(@@v, @@e, '" + vn + "/A', 'outbound', " + JSON.stringify(config) + ") RETURN p.vertex._key", { "@v" : vn, "@e" : en }).getRows(); + + assertEqual([ "A", "B", "C", "A", "D", "C", "A" ], actual); + }, + //////////////////////////////////////////////////////////////////////////////// /// @brief test max-depth filtering //////////////////////////////////////////////////////////////////////////////// @@ -368,6 +386,26 @@ function ahuacatlQueryTraverseTestSuite () { assertEqual([ "A", "B", "C", "D" ], actual); }, +//////////////////////////////////////////////////////////////////////////////// +/// @brief test max-depth filtering +//////////////////////////////////////////////////////////////////////////////// + + testTraversalDepthFirstUniquePath : function () { + var config = { + strategy: "depthfirst", + order: "preorder", + itemOrder: "forward", + uniqueness: { + vertices: "path" + }, + _sort: true + }; + + var actual = executeQuery("FOR p IN TRAVERSE(@@v, @@e, '" + vn + "/A', 'outbound', " + JSON.stringify(config) + ") RETURN p.vertex._key", { "@v" : vn, "@e" : en }).getRows(); + + assertEqual([ "A", "B", "C", "D", "C" ], actual); + }, + //////////////////////////////////////////////////////////////////////////////// /// @brief test max-depth filtering //////////////////////////////////////////////////////////////////////////////// From f7d8df846b7c21a53d8b34bec5f32bc31e8423cb Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 14 Jan 2013 00:24:00 +0100 Subject: [PATCH 2/3] fixed test --- js/common/tests/shell-document.js | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/js/common/tests/shell-document.js b/js/common/tests/shell-document.js index 040fb89da2..f84b5868ab 100644 --- a/js/common/tests/shell-document.js +++ b/js/common/tests/shell-document.js @@ -69,9 +69,23 @@ function CollectionDocumentSuiteErrorHandling () { /// @brief bad handle //////////////////////////////////////////////////////////////////////////////// - testErrorHandlingBadHandle : function () { + testErrorHandlingBadHandleDatabase : function () { try { - collection.document(" 123456"); + internal.db._document("123456"); + fail(); + } + catch (err) { + assertEqual(ERRORS.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code, err.errorNum); + } + }, + +//////////////////////////////////////////////////////////////////////////////// +/// @brief bad handle +//////////////////////////////////////////////////////////////////////////////// + + testErrorHandlingBadHandleCollection : function () { + try { + collection.document(""); fail(); } catch (err) { @@ -85,7 +99,7 @@ function CollectionDocumentSuiteErrorHandling () { testErrorHandlingBadHandleReplace : function () { try { - collection.replace("123456 ", {}); + internal.db._replace("123456 ", {}); fail(); } catch (err) { From d5cd3ee5d1955262e1d209f07469b6409b8f6842 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 14 Jan 2013 00:58:48 +0100 Subject: [PATCH 3/3] adding derived js --- html/admin/js/modules/statement-basics.js | 8 -------- 1 file changed, 8 deletions(-) diff --git a/html/admin/js/modules/statement-basics.js b/html/admin/js/modules/statement-basics.js index 57bbc10bb5..43059d8052 100644 --- a/html/admin/js/modules/statement-basics.js +++ b/html/admin/js/modules/statement-basics.js @@ -85,10 +85,6 @@ ArangoStatement.prototype.bind = function (key, value) { this._bindVars = key; } else if (typeof(key) === "string") { - if (this._bindVars[key] !== undefined) { - throw "redeclaration of bind parameter"; - } - this._bindVars[key] = value; } else if (typeof(key) === "number") { @@ -98,10 +94,6 @@ ArangoStatement.prototype.bind = function (key, value) { throw "invalid bind parameter declaration"; } - if (this._bindVars[strKey] !== undefined) { - throw "redeclaration of bind parameter"; - } - this._bindVars[strKey] = value; } else {