1
0
Fork 0

added more tests for edge creation

This commit is contained in:
Jan Steemann 2013-01-16 17:41:19 +01:00
parent adb5d32918
commit 0298bcc601
1 changed files with 119 additions and 0 deletions

View File

@ -160,6 +160,125 @@ function CollectionEdgeSuite () {
internal.wait(0.0);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief create an edge referring to a vertex documents by keys
////////////////////////////////////////////////////////////////////////////////
testSaveEdgeKeys : function () {
var k1 = vertex.save({ _key: "vx1", vx: 1 });
var k2 = vertex.save({ _key: "vx2", vx: 2 });
var k3 = vertex.save({ _key: "vx3", vx: 3 });
var d1 = vertex.document(k1._key);
assertEqual("vx1", k1._key);
assertEqual(vn + "/vx1", k1._id);
assertEqual("vx1", d1._key);
assertEqual(1, d1.vx);
assertEqual(vn + "/vx1", d1._id);
var d2 = vertex.document(k2._key);
assertEqual("vx2", k2._key);
assertEqual(vn + "/vx2", k2._id);
assertEqual("vx2", d2._key);
assertEqual(2, d2.vx);
assertEqual(vn + "/vx2", d2._id);
var d3 = vertex.document(vn + "/vx3");
assertEqual("vx3", k3._key);
assertEqual(vn + "/vx3", k3._id);
assertEqual("vx3", d3._key);
assertEqual(3, d3.vx);
assertEqual(vn + "/vx3", d3._id);
var e1 = edge.save(vn + "/vx1", vn + "/vx2", { _key: "ex1", connect: "vx1->vx2" });
var e2 = edge.save(vn + "/vx2", vn + "/vx1", { _key: "ex2", connect: "vx2->vx1" });
var e3 = edge.save(vn + "/vx3", vn + "/vx1", { _key: "ex3", connect: "vx3->vx1" });
d1 = edge.document("ex1");
assertEqual("ex1", d1._key);
assertEqual(en + "/ex1", d1._id);
assertEqual(vn + "/vx1", d1._from);
assertEqual(vn + "/vx2", d1._to);
assertEqual("vx1->vx2", d1.connect);
assertEqual("ex1", e1._key);
assertEqual(en + "/ex1", e1._id);
d2 = edge.document("ex2");
assertEqual("ex2", d2._key);
assertEqual(en + "/ex2", d2._id);
assertEqual(vn + "/vx2", d2._from);
assertEqual(vn + "/vx1", d2._to);
assertEqual("vx2->vx1", d2.connect);
assertEqual("ex2", e2._key);
assertEqual(en + "/ex2", e2._id);
d3 = edge.document(en + "/ex3");
assertEqual("ex3", d3._key);
assertEqual(en + "/ex3", d3._id);
assertEqual(vn + "/vx3", d3._from);
assertEqual(vn + "/vx1", d3._to);
assertEqual("vx3->vx1", d3.connect);
assertEqual("ex3", e3._key);
assertEqual(en + "/ex3", e3._id);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief create an edge referring to an unloaded vertex collection
////////////////////////////////////////////////////////////////////////////////
testSaveEdgeUnloaded : function () {
var k1 = vertex.save({ _key: "vx1", vx: 1 });
var k2 = vertex.save({ _key: "vx2", vx: 2 });
assertEqual("vx1", k1._key);
assertEqual(vn + "/vx1", k1._id);
assertEqual("vx2", k2._key);
assertEqual(vn + "/vx2", k2._id);
vertex.unload();
edge.unload();
console.log("waiting for collections to unload");
internal.wait(4);
var e1 = edge.save(vn + "/vx1", vn + "/vx2", { _key: "ex1", connect: "vx1->vx2" });
var e2 = edge.save(vn + "/vx2", vn + "/vx1", { _key: "ex2", connect: "vx2->vx1" });
vertex.unload();
edge.unload();
console.log("waiting for collections to unload");
internal.wait(4);
var e3 = edge.save(k1, k2, { _key: "ex3", connect: "vx1->vx2" });
d1 = edge.document("ex1");
assertEqual("ex1", d1._key);
assertEqual(en + "/ex1", d1._id);
assertEqual(vn + "/vx1", d1._from);
assertEqual(vn + "/vx2", d1._to);
assertEqual("vx1->vx2", d1.connect);
assertEqual("ex1", e1._key);
assertEqual(en + "/ex1", e1._id);
d2 = edge.document("ex2");
assertEqual("ex2", d2._key);
assertEqual(en + "/ex2", d2._id);
assertEqual(vn + "/vx2", d2._from);
assertEqual(vn + "/vx1", d2._to);
assertEqual("vx2->vx1", d2.connect);
assertEqual("ex2", e2._key);
assertEqual(en + "/ex2", e2._id);
d3 = edge.document("ex3");
assertEqual("ex3", d3._key);
assertEqual(en + "/ex3", d3._id);
assertEqual(vn + "/vx1", d3._from);
assertEqual(vn + "/vx2", d3._to);
assertEqual("vx1->vx2", d3.connect);
assertEqual("ex3", e3._key);
assertEqual(en + "/ex3", e3._id);
},
////////////////////////////////////////////////////////////////////////////////
/// @brief create an edge
////////////////////////////////////////////////////////////////////////////////