1
0
Fork 0

fixed tests

This commit is contained in:
Jan Steemann 2013-01-18 03:45:24 +01:00
parent e8be35d420
commit 752b9a4846
33 changed files with 172 additions and 76 deletions

View File

@ -29,6 +29,7 @@
var arangodb = require("org/arangodb");
var actions = require("org/arangodb/actions");
var graph = require("org/arangodb/graph");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
// -----------------------------------------------------------------------------
// --SECTION-- global variables

View File

@ -28,6 +28,8 @@
var arangodb = require("org/arangodb");
var actions = require("org/arangodb/actions");
var internal = require("internal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
// -----------------------------------------------------------------------------
// --SECTION-- global variables
@ -206,7 +208,7 @@ function PUT_api_cursor (req, res) {
var cursorId = decodeURIComponent(req.suffix[0]);
var cursor = CURSOR(cursorId);
if (! (cursor instanceof ArangoCursor)) {
if (! (cursor instanceof arangodb.ArangoCursor)) {
actions.resultBad(req, res, arangodb.ERROR_CURSOR_NOT_FOUND);
return;
}

View File

@ -26,6 +26,8 @@
////////////////////////////////////////////////////////////////////////////////
var actions = require("org/arangodb/actions");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
var ERRORS = require("internal").errors;
// -----------------------------------------------------------------------------
// --SECTION-- global variables
@ -120,7 +122,7 @@ var actions = require("org/arangodb/actions");
function POST_api_explain (req, res) {
if (req.suffix.length != 0) {
actions.resultNotFound(req, res, internal.errors.ERROR_HTTP_NOT_FOUND.code, internal.errors.ERROR_HTTP_NOT_FOUND.message);
actions.resultNotFound(req, res, ERRORS.errors.ERROR_HTTP_NOT_FOUND.code, ERRORS.errors.ERROR_HTTP_NOT_FOUND.message);
return;
}

View File

@ -29,6 +29,7 @@
(function() {
var actions = require("org/arangodb/actions");
var graph = require("org/arangodb/graph");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
// -----------------------------------------------------------------------------
// --SECTION-- global variables

View File

@ -27,6 +27,7 @@
var arangodb = require("org/arangodb");
var actions = require("org/arangodb/actions");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
// -----------------------------------------------------------------------------
// --SECTION-- global variables

View File

@ -27,6 +27,8 @@
var actions = require("org/arangodb/actions");
var simple = require("org/arangodb/simple-query");
var db = require("org/arangodb").db;
var ERRORS = require("internal").errors;
var API = "_api/simple/";
@ -89,7 +91,7 @@ actions.defineHttp({
var limit = body.limit;
var skip = body.skip;
var name = body.collection;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -172,7 +174,7 @@ actions.defineHttp({
else {
var name = body.collection;
var id = parseInt(name) || name;
var collection = internal.db._collection(id);
var collection = db._collection(id);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -263,7 +265,7 @@ actions.defineHttp({
var name = body.collection;
var geo = body.geo;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -378,7 +380,7 @@ actions.defineHttp({
var radius = body.radius;
var geo = body.geo;
var name = body.collection;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -478,7 +480,7 @@ actions.defineHttp({
var query = body.query;
var iid = body.index || undefined;
var name = body.collection;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -567,7 +569,7 @@ actions.defineHttp({
var skip = body.skip;
var example = body.example;
var name = body.collection;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -644,7 +646,7 @@ actions.defineHttp({
else {
var example = body.example;
var name = body.collection;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -659,7 +661,7 @@ actions.defineHttp({
actions.resultOk(req, res, actions.HTTP_OK, { document : result.next() });
}
else {
actions.resultNotFound(req, res, internal.errors.ERROR_HTTP_NOT_FOUND.code, "no match");
actions.resultNotFound(req, res, ERRORS.ERROR_HTTP_NOT_FOUND.code, "no match");
}
}
}
@ -695,7 +697,7 @@ actions.defineHttp({
var name = body.collection;
var example = body.example;
var index = body.index;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);
@ -774,7 +776,7 @@ actions.defineHttp({
var left = body.left;
var right = body.right;
var closed = body.closed;
var collection = internal.db._collection(name);
var collection = db._collection(name);
if (collection === null) {
actions.collectionNotFound(req, res, name);

View File

@ -37,6 +37,8 @@
var actions = require("org/arangodb/actions");
var simple = require("org/arangodb/simple-query");
var db = require("org/arangodb").db;
var internal = require("internal");
// -----------------------------------------------------------------------------
// --SECTION-- private functions
@ -124,7 +126,7 @@ function postKeyValue(req, res) {
var collection = req.suffix[0];
if (internal.db._collection(collection) === null) {
if (db._collection(collection) === null) {
actions.collectionNotFound(req, res, collection);
return;
}
@ -136,7 +138,7 @@ function postKeyValue(req, res) {
var doc = buildDocumentFromReq(req);
var oldDoc = internal.db._collection(collection).firstExample("$key", doc["$key"]);
var oldDoc = db._collection(collection).firstExample("$key", doc["$key"]);
if (oldDoc != undefined) {
actions.resultError(req, res, actions.HTTP_BAD, arangodb.ERROR_KEYVALUE_KEY_EXISTS, actions.getErrorMessage(arangodb.ERROR_KEYVALUE_KEY_EXISTS));
@ -167,14 +169,14 @@ function putKeyValue(req, res) {
var collection = req.suffix[0];
if (internal.db._collection(collection) === null) {
if (db._collection(collection) === null) {
actions.collectionNotFound(req, res);
return;
}
var doc = buildDocumentFromReq(req);
var oldDoc = internal.db._collection(collection).firstExample("$key", doc["$key"]);
var oldDoc = db._collection(collection).firstExample("$key", doc["$key"]);
if (oldDoc == undefined) {
if (req.parameters["create"] == 1) {
@ -223,7 +225,7 @@ function deleteKeyValue(req, res) {
var collection = req.suffix[0];
if (internal.db._collection(collection) === null) {
if (db._collection(collection) === null) {
actions.collectionNotFound(req, res);
return;
}
@ -234,7 +236,7 @@ function deleteKeyValue(req, res) {
key += "/" + req.suffix[i];
}
var doc = internal.db._collection(collection).firstExample("$key", key);
var doc = db._collection(collection).firstExample("$key", key);
if (doc == undefined) {
actions.resultError(req, res, actions.HTTP_NOT_FOUND, arangodb.ERROR_KEYVALUE_KEY_NOT_FOUND, actions.getErrorMessage(arangodb.ERROR_KEYVALUE_KEY_NOT_FOUND));
@ -267,7 +269,7 @@ function getKeyValue(req, res) {
var collection = req.suffix[0];
if (internal.db._collection(collection) === null) {
if (db._collection(collection) === null) {
actions.collectionNotFound(req, res);
return;
}
@ -278,7 +280,7 @@ function getKeyValue(req, res) {
key += "/" + req.suffix[i];
}
var doc = internal.db._collection(collection).firstExample("$key", key);
var doc = db._collection(collection).firstExample("$key", key);
if (doc == undefined) {
actions.resultError(req, res, actions.HTTP_NOT_FOUND, arangodb.ERROR_KEYVALUE_KEY_NOT_FOUND, actions.getErrorMessage(arangodb.ERROR_KEYVALUE_KEY_NOT_FOUND));
@ -373,7 +375,7 @@ function searchKeyValue(req, res) {
var collection = req.suffix[0];
if (internal.db._collection(collection) === null) {
if (db._collection(collection) === null) {
actions.collectionNotFound(req, res);
return;
}
@ -388,7 +390,7 @@ function searchKeyValue(req, res) {
// TODO: build a query which selects the keys
//
var cursor = internal.db._collection(collection).all();
var cursor = db._collection(collection).all();
result = [];

View File

@ -32,7 +32,7 @@
var internal = require("internal");
var arangosh = require("org/arangodb/arangosh");
var ArangoError = require("org/arangodb/arango-error");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
// -----------------------------------------------------------------------------
// --SECTION-- ArangoCollection

View File

@ -213,7 +213,7 @@ ArangoQueryCursor.prototype.next = function () {
////////////////////////////////////////////////////////////////////////////////
ArangoQueryCursor.prototype.dispose = function () {
if (!this.data.id) {
if (! this.data.id) {
// client side only cursor
return;
}
@ -236,13 +236,21 @@ ArangoQueryCursor.prototype.dispose = function () {
////////////////////////////////////////////////////////////////////////////////
ArangoQueryCursor.prototype.count = function () {
if (!this.data.id) {
if (! this.data.id) {
throw "cursor has been disposed";
}
return this.data.count;
};
////////////////////////////////////////////////////////////////////////////////
/// @brief return baseurl for query cursor
////////////////////////////////////////////////////////////////////////////////
ArangoQueryCursor.prototype._baseurl = function () {
return "/_api/cursor/"+ encodeURIComponent(this.data.id);
}
////////////////////////////////////////////////////////////////////////////////
/// @}
////////////////////////////////////////////////////////////////////////////////

View File

@ -174,6 +174,21 @@ ArangoStatement.prototype.execute = function () {
/// @}
////////////////////////////////////////////////////////////////////////////////
// -----------------------------------------------------------------------------
// --SECTION-- MODULE EXPORTS
// -----------------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////////////
/// @addtogroup ArangoStatement
/// @{
////////////////////////////////////////////////////////////////////////////////
exports.ArangoStatement = ArangoStatement;
////////////////////////////////////////////////////////////////////////////////
/// @}
////////////////////////////////////////////////////////////////////////////////
// -----------------------------------------------------------------------------
// --SECTION-- END-OF-FILE
// -----------------------------------------------------------------------------

View File

@ -27,6 +27,7 @@
var internal = require("internal");
var jsunity = require("jsunity");
var db = require("org/arangodb").db;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -79,7 +79,3 @@ ArangoError.prototype.toString = function() {
// mode: outline-minor
// outline-regexp: "/// @brief\\|/// @addtogroup\\|// --SECTION--\\|/// @}\\|/\\*jslint"
// End:
var arangodb = require("org/arangodb");
var output = arangodb.output;

View File

@ -51,7 +51,7 @@ function ArangoStatement (database, data) {
this._batchSize = null;
this._bindVars = {};
if (!(data instanceof Object)) {
if (! (data instanceof Object)) {
throw "ArangoStatement needs initial data";
}

View File

@ -31,8 +31,7 @@
var jsunity = require("jsunity");
var arangodb = require("org/arangodb");
var ArangoStatement = arangodb.ArangoStatement;
var ArangoStatement = require("org/arangodb/arango-statement").ArangoStatement;
var db = arangodb.db;
// -----------------------------------------------------------------------------

View File

@ -27,6 +27,7 @@
var INTERNAL = require("internal");
var TRAVERSAL = require("org/arangodb/graph/traversal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief type weight used for sorting and comparing
@ -2347,7 +2348,7 @@ function AHUACATL_GRAPH_TRAVERSE () {
AHUACATL_THROW(INTERNAL.errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH, "TRAVERSE");
}
if (params.maxDepth <= 0) {
if (params.maxDepth === undefined) {
// we need to have at least SOME limit to prevent endless iteration
params.maxDepth = 256;
}
@ -2381,17 +2382,18 @@ function AHUACATL_GRAPH_TRAVERSE () {
trackPaths: params.paths || false,
visitor: AHUACATL_TRAVERSE_VISITOR,
maxDepth: params.maxDepth,
minDepth: params.minDepth,
filter: filter,
uniqueness: {
vertices: validate(params.uniqueness && params.uniqueness.vertices, {
'global': traversal.Traverser.UNIQUE_GLOBAL,
'none': traversal.Traverser.UNIQUE_NONE,
'path': traversal.Traverser.UNIQUE_PATH
'global': TRAVERSAL.Traverser.UNIQUE_GLOBAL,
'none': TRAVERSAL.Traverser.UNIQUE_NONE,
'path': TRAVERSAL.Traverser.UNIQUE_PATH
}),
edges: validate(params.uniqueness && params.uniqueness.edges, {
'global': traversal.Traverser.UNIQUE_GLOBAL,
'none': traversal.Traverser.UNIQUE_NONE,
'path': traversal.Traverser.UNIQUE_PATH
'global': TRAVERSAL.Traverser.UNIQUE_GLOBAL,
'none': TRAVERSAL.Traverser.UNIQUE_NONE,
'path': TRAVERSAL.Traverser.UNIQUE_PATH
}),
},
expander: validate(direction, {
@ -2405,9 +2407,18 @@ function AHUACATL_GRAPH_TRAVERSE () {
config.sort = function (l, r) { return l._key < r._key ? -1 : 1 };
}
var v = null;
var result = [ ];
var traverser = new TRAVERSAL.Traverser(config);
traverser.traverse(result, vertexCollection.document(startVertex));
try {
v = vertexCollection.document(startVertex);
}
catch (err) {
}
if (v != null) {
var traverser = new TRAVERSAL.Traverser(config);
traverser.traverse(result, v);
}
return result;
}

View File

@ -27,6 +27,7 @@
var internal = require("internal");
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,8 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var internal = require("internal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,7 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -27,6 +27,7 @@
var internal = require("internal");
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,9 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var db = require("org/arangodb").db;
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite
@ -58,7 +61,7 @@ function ahuacatlQueryPathsTestSuite () {
var results = [ ];
for (var i in result) {
if (!result.hasOwnProperty(i)) {
if (! result.hasOwnProperty(i)) {
continue;
}
@ -96,11 +99,11 @@ function ahuacatlQueryPathsTestSuite () {
////////////////////////////////////////////////////////////////////////////////
setUp : function () {
internal.db._drop("UnitTestsAhuacatlUsers");
internal.db._drop("UnitTestsAhuacatlUserRelations");
db._drop("UnitTestsAhuacatlUsers");
db._drop("UnitTestsAhuacatlUserRelations");
users = internal.db._create("UnitTestsAhuacatlUsers");
relations = internal.db._createEdgeCollection("UnitTestsAhuacatlUserRelations");
users = db._create("UnitTestsAhuacatlUsers");
relations = db._createEdgeCollection("UnitTestsAhuacatlUserRelations");
docs["John"] = users.save({ "id" : 100, "name" : "John" });
docs["Fred"] = users.save({ "id" : 101, "name" : "Fred" });
@ -115,8 +118,8 @@ function ahuacatlQueryPathsTestSuite () {
////////////////////////////////////////////////////////////////////////////////
tearDown : function () {
internal.db._drop("UnitTestsAhuacatlUsers");
internal.db._drop("UnitTestsAhuacatlUserRelations");
db._drop("UnitTestsAhuacatlUsers");
db._drop("UnitTestsAhuacatlUserRelations");
},
////////////////////////////////////////////////////////////////////////////////
@ -341,14 +344,15 @@ function ahuacatlQueryTraverseTestSuite () {
itemOrder: "forward",
minDepth: 1,
uniqueness: {
vertices: "global"
vertices: "global",
edges: "none"
},
_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" ], actual);
assertEqual([ "B", "C", "D" ], actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -361,6 +365,10 @@ function ahuacatlQueryTraverseTestSuite () {
order: "preorder",
itemOrder: "forward",
maxDepth: 2,
uniqueness: {
vertices: "none",
edges: "none"
},
_sort: true
};
@ -379,6 +387,10 @@ function ahuacatlQueryTraverseTestSuite () {
order: "preorder",
itemOrder: "forward",
maxDepth: 3,
uniqueness: {
vertices: "none",
edges: "none"
},
_sort: true
};
@ -398,12 +410,16 @@ function ahuacatlQueryTraverseTestSuite () {
itemOrder: "forward",
minDepth: 1,
maxDepth: 3,
uniqueness: {
vertices: "none",
edges: "none"
},
_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);
assertEqual([ "B", "C", "A", "D", "C", "A" ], actual);
},
////////////////////////////////////////////////////////////////////////////////
@ -416,7 +432,8 @@ function ahuacatlQueryTraverseTestSuite () {
order: "preorder",
itemOrder: "forward",
uniqueness: {
vertices: "global"
vertices: "global",
edges: "none"
},
_sort: true
};
@ -436,7 +453,8 @@ function ahuacatlQueryTraverseTestSuite () {
order: "preorder",
itemOrder: "forward",
uniqueness: {
vertices: "path"
vertices: "path",
edges: "none"
},
_sort: true
};
@ -456,12 +474,29 @@ function ahuacatlQueryTraverseTestSuite () {
order: "preorder",
itemOrder: "forward",
maxDepth: 2,
uniqueness: {
vertices: "none",
edges: "none"
},
_sort: true
};
var actual = executeQuery("FOR p IN TRAVERSE(@@v, @@e, '" + vn + "/A', 'any', " + JSON.stringify(config) + ") RETURN p.vertex._key", { "@v" : vn, "@e" : en }).getRows();
assertEqual([ "A", "B", "A", "C", "D", "A", "C", "C", "B", "A", "D" ], actual);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief test non-existing start vertex
////////////////////////////////////////////////////////////////////////////////
testTraversalNonExisting : function () {
var config = {
};
var actual = executeQuery("FOR p IN TRAVERSE(@@v, @@e, '" + vn + "/FOX', 'any', " + JSON.stringify(config) + ") RETURN p.vertex._key", { "@v" : vn, "@e" : en }).getRows();
assertEqual([ ], actual);
}
};

View File

@ -26,6 +26,8 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var internal = require("internal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -25,15 +25,16 @@
/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany
////////////////////////////////////////////////////////////////////////////////
var internal = require("internal");
var db = require("org/arangodb").db;
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
var ERRORS = require("org/arangodb").errors;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite
////////////////////////////////////////////////////////////////////////////////
function ahuacatlFulltextTestSuite () {
var errors = internal.errors;
var cn = "UnitTestsAhuacatlFulltext";
var fulltext;
@ -79,9 +80,9 @@ function ahuacatlFulltextTestSuite () {
////////////////////////////////////////////////////////////////////////////////
setUp : function () {
internal.db._drop(cn);
db._drop(cn);
fulltext = internal.db._create(cn);
fulltext = db._create(cn);
fulltext.ensureFulltextIndex("text");
},
@ -90,7 +91,7 @@ function ahuacatlFulltextTestSuite () {
////////////////////////////////////////////////////////////////////////////////
tearDown : function () {
internal.db._drop(cn);
db._drop(cn);
},
////////////////////////////////////////////////////////////////////////////////
@ -168,9 +169,9 @@ function ahuacatlFulltextTestSuite () {
////////////////////////////////////////////////////////////////////////////////
testNonIndexed : function () {
assertEqual(errors.ERROR_QUERY_FULLTEXT_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN FULLTEXT(" + fulltext.name() + ", 'bang', 'search')"); } ));
assertEqual(errors.ERROR_QUERY_FULLTEXT_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN FULLTEXT(" + fulltext.name() + ", 'texts', 'foo')"); } ));
assertEqual(errors.ERROR_QUERY_COLLECTION_NOT_FOUND.code, getErrorCode(function() { AHUACATL_RUN("RETURN FULLTEXT(NotExistingFooCollection, 'text', 'foo')"); } ));
assertEqual(ERRORS.ERROR_QUERY_FULLTEXT_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN FULLTEXT(" + fulltext.name() + ", 'bang', 'search')"); } ));
assertEqual(ERRORS.ERROR_QUERY_FULLTEXT_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN FULLTEXT(" + fulltext.name() + ", 'texts', 'foo')"); } ));
assertEqual(ERRORS.ERROR_QUERY_COLLECTION_NOT_FOUND.code, getErrorCode(function() { AHUACATL_RUN("RETURN FULLTEXT(NotExistingFooCollection, 'text', 'foo')"); } ));
}
}

View File

@ -25,15 +25,16 @@
/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany
////////////////////////////////////////////////////////////////////////////////
var internal = require("internal");
var jsunity = require("jsunity");
var db = require("org/arangodb").db;
var ArangoError = require("org/arangodb/arango-error").ArangoError;
var ERRORS = require("org/arangodb").errors;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite
////////////////////////////////////////////////////////////////////////////////
function ahuacatlGeoTestSuite () {
var errors = internal.errors;
var locations = null;
var locationsNon = null;
@ -59,7 +60,7 @@ function ahuacatlGeoTestSuite () {
var results = [ ];
for (var i in result) {
if (!result.hasOwnProperty(i)) {
if (! result.hasOwnProperty(i)) {
continue;
}
@ -113,7 +114,7 @@ function ahuacatlGeoTestSuite () {
////////////////////////////////////////////////////////////////////////////////
setUp : function () {
locations = internal.db.UnitTestsAhuacatlLocations;
locations = db.UnitTestsAhuacatlLocations;
if (locations.count() == 0) {
for (var lat = -40; lat <= 40; ++lat) {
for (var lon = -40; lon <= 40; ++lon) {
@ -124,7 +125,7 @@ function ahuacatlGeoTestSuite () {
locations.ensureGeoIndex("latitude", "longitude");
}
locationsNon = internal.db.UnitTestsAhuacatlLocationsNon;
locationsNon = db.UnitTestsAhuacatlLocationsNon;
if (locationsNon.count() == 0) {
for (var lat = -40; lat <= 40; ++lat) {
for (var lon = -40; lon <= 40; ++lon) {
@ -233,8 +234,8 @@ function ahuacatlGeoTestSuite () {
////////////////////////////////////////////////////////////////////////////////
testNonIndexed : function () {
assertEqual(errors.ERROR_QUERY_GEO_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN NEAR(" + locationsNon.name() + ", 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_GEO_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(" + locationsNon.name() + ", 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_GEO_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN NEAR(" + locationsNon.name() + ", 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_GEO_INDEX_MISSING.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(" + locationsNon.name() + ", 0, 0, 10)"); } ));
},
////////////////////////////////////////////////////////////////////////////////
@ -242,13 +243,13 @@ function ahuacatlGeoTestSuite () {
////////////////////////////////////////////////////////////////////////////////
testInvalidCollectionArgument : function () {
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(\"" + locationsNon.name() + "\", 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(1234, 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(false, 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(true, 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN([ ], 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN({ }, 0, 0, 10)"); } ));
assertEqual(errors.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(@name, 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(\"" + locationsNon.name() + "\", 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(1234, 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(false, 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(true, 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN([ ], 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN({ }, 0, 0, 10)"); } ));
assertEqual(ERRORS.ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH.code, getErrorCode(function() { AHUACATL_RUN("RETURN WITHIN(@name, 0, 0, 10)"); } ));
}
}

View File

@ -26,6 +26,7 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,8 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var internal = require("internal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,8 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var internal = require("internal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,8 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var internal = require("internal");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,7 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -26,6 +26,7 @@
////////////////////////////////////////////////////////////////////////////////
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -27,6 +27,7 @@
var internal = require("internal");
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -25,7 +25,6 @@
/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany
////////////////////////////////////////////////////////////////////////////////
var internal = require("internal");
var jsunity = require("jsunity");
////////////////////////////////////////////////////////////////////////////////

View File

@ -27,6 +27,7 @@
var internal = require("internal");
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite

View File

@ -27,6 +27,7 @@
var internal = require("internal");
var jsunity = require("jsunity");
var ArangoError = require("org/arangodb/arango-error").ArangoError;
////////////////////////////////////////////////////////////////////////////////
/// @brief test suite