mirror of https://gitee.com/bigwinds/arangodb
Optimized readability of routes in agency-comm tests
This commit is contained in:
parent
17cbbcd092
commit
5bed79017e
|
@ -34,7 +34,8 @@ var _ = require("underscore");
|
||||||
// --SECTION-- agency-result-helper
|
// --SECTION-- agency-result-helper
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
var createResult = function(prefix, list) {
|
var createResult = function(prefixes, list) {
|
||||||
|
var prefix = prefixes.join("/") + "/";
|
||||||
var res = {};
|
var res = {};
|
||||||
_.each(list, function(v, k) {
|
_.each(list, function(v, k) {
|
||||||
res[prefix + k] = v;
|
res[prefix + k] = v;
|
||||||
|
@ -63,25 +64,25 @@ function runGoodCaseTests(test) {
|
||||||
var registered;
|
var registered;
|
||||||
|
|
||||||
agencyRoutes = {
|
agencyRoutes = {
|
||||||
vision: "Vision/",
|
vision: "Vision",
|
||||||
target: "Target/",
|
target: "Target",
|
||||||
plan: "Plan/",
|
plan: "Plan",
|
||||||
current: "Current/",
|
current: "Current",
|
||||||
fail: "Fail/"
|
fail: "Fail"
|
||||||
};
|
};
|
||||||
|
|
||||||
resetToDefault = function() {
|
resetToDefault = function() {
|
||||||
agencyTargetServers = createResult(agencyRoutes.target + "DBServers/", {
|
agencyTargetServers = createResult([agencyRoutes.target, "DBServers"], {
|
||||||
"pavel": "sandro",
|
"pavel": "sandro",
|
||||||
"paul": "sally",
|
"paul": "sally",
|
||||||
"patricia": "sandra"
|
"patricia": "sandra"
|
||||||
});
|
});
|
||||||
plannedServers = createResult(agencyRoutes.plan + "DBServers/", {
|
plannedServers = createResult([agencyRoutes.plan, "DBServers"], {
|
||||||
"pavel": "sandro",
|
"pavel": "sandro",
|
||||||
"paul": "sally",
|
"paul": "sally",
|
||||||
"patricia": "sandra"
|
"patricia": "sandra"
|
||||||
});
|
});
|
||||||
registered = createResult(agencyRoutes.current + "ServersRegistered/", {
|
registered = createResult([agencyRoutes.current, "ServersRegistered"], {
|
||||||
"pavel": "tcp://192.168.0.1:8529",
|
"pavel": "tcp://192.168.0.1:8529",
|
||||||
"paul": "tcp://192.168.0.2:8529",
|
"paul": "tcp://192.168.0.2:8529",
|
||||||
"patricia": "tcp://192.168.0.3:8529",
|
"patricia": "tcp://192.168.0.3:8529",
|
||||||
|
@ -101,17 +102,27 @@ function runGoodCaseTests(test) {
|
||||||
|
|
||||||
agencyMock = {
|
agencyMock = {
|
||||||
get: function(route, recursive) {
|
get: function(route, recursive) {
|
||||||
if (route === agencyRoutes.target + "DBServers" && recursive) {
|
var parts = route.split("/");
|
||||||
|
switch (parts[0]) {
|
||||||
|
case agencyRoutes.target:
|
||||||
|
if (parts[1] === "DBServers" && recursive) {
|
||||||
return agencyTargetServers;
|
return agencyTargetServers;
|
||||||
}
|
}
|
||||||
if (route === agencyRoutes.plan + "DBServers" && recursive) {
|
break;
|
||||||
|
case agencyRoutes.plan:
|
||||||
|
if (parts[1] === "DBServers" && recursive) {
|
||||||
return plannedServers;
|
return plannedServers;
|
||||||
}
|
}
|
||||||
if (route === agencyRoutes.current + "ServersRegistered" && recursive) {
|
break;
|
||||||
|
case agencyRoutes.current:
|
||||||
|
if (parts[1] === "ServersRegesitered" && recursive) {
|
||||||
return registered;
|
return registered;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
fail();
|
fail();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
Communication._createAgency = function() {
|
Communication._createAgency = function() {
|
||||||
return agencyMock;
|
return agencyMock;
|
||||||
|
@ -176,7 +187,7 @@ function runGoodCaseTests(test) {
|
||||||
var name = "pancho";
|
var name = "pancho";
|
||||||
var wasCalled = false;
|
var wasCalled = false;
|
||||||
agencyMock.set = function(route, value) {
|
agencyMock.set = function(route, value) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + name);
|
assertEqual(route, [agencyRoutes.target, "DBServers", name].join("/"));
|
||||||
assertEqual(value, "none");
|
assertEqual(value, "none");
|
||||||
agencyTargetServers[route] = value;
|
agencyTargetServers[route] = value;
|
||||||
wasCalled = true;
|
wasCalled = true;
|
||||||
|
@ -196,7 +207,7 @@ function runGoodCaseTests(test) {
|
||||||
var secName = "samuel";
|
var secName = "samuel";
|
||||||
var wasCalled = false;
|
var wasCalled = false;
|
||||||
agencyMock.set = function(route, value) {
|
agencyMock.set = function(route, value) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + name);
|
assertEqual(route, [agencyRoutes.target, "DBServers", name].join("/"));
|
||||||
assertEqual(value, "none");
|
assertEqual(value, "none");
|
||||||
assertFalse(wasCalled, "Set has been called multiple times");
|
assertFalse(wasCalled, "Set has been called multiple times");
|
||||||
agencyTargetServers[route] = value;
|
agencyTargetServers[route] = value;
|
||||||
|
@ -207,7 +218,7 @@ function runGoodCaseTests(test) {
|
||||||
assertTrue(wasCalled, "Agency has not been informed to insert primary.");
|
assertTrue(wasCalled, "Agency has not been informed to insert primary.");
|
||||||
wasCalled = false;
|
wasCalled = false;
|
||||||
agencyMock.set = function(route, value) {
|
agencyMock.set = function(route, value) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + name);
|
assertEqual(route, [agencyRoutes.target, "DBServers", name].join("/"));
|
||||||
assertEqual(value, secName);
|
assertEqual(value, secName);
|
||||||
assertFalse(wasCalled, "Set has been called multiple times");
|
assertFalse(wasCalled, "Set has been called multiple times");
|
||||||
agencyTargetServers[route] = value;
|
agencyTargetServers[route] = value;
|
||||||
|
@ -230,7 +241,7 @@ function runGoodCaseTests(test) {
|
||||||
var secName = "samuel";
|
var secName = "samuel";
|
||||||
var wasCalled = false;
|
var wasCalled = false;
|
||||||
agencyMock.set = function(route, value) {
|
agencyMock.set = function(route, value) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + name);
|
assertEqual(route, [agencyRoutes.target, "DBServers", name].join("/"));
|
||||||
assertEqual(value, secName);
|
assertEqual(value, secName);
|
||||||
assertFalse(wasCalled, "Set has been called multiple times");
|
assertFalse(wasCalled, "Set has been called multiple times");
|
||||||
agencyTargetServers[route] = value;
|
agencyTargetServers[route] = value;
|
||||||
|
@ -252,7 +263,7 @@ function runGoodCaseTests(test) {
|
||||||
var secondaryName = "sandro";
|
var secondaryName = "sandro";
|
||||||
var setWasCalled = false;
|
var setWasCalled = false;
|
||||||
agencyMock.set = function(route, value) {
|
agencyMock.set = function(route, value) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + secondaryName);
|
assertEqual(route, [agencyRoutes.target, "DBServers", secondaryName].join("/"));
|
||||||
assertEqual(value, "none");
|
assertEqual(value, "none");
|
||||||
assertFalse(setWasCalled, "Set has been called multiple times");
|
assertFalse(setWasCalled, "Set has been called multiple times");
|
||||||
agencyTargetServers[route] = value;
|
agencyTargetServers[route] = value;
|
||||||
|
@ -261,7 +272,7 @@ function runGoodCaseTests(test) {
|
||||||
};
|
};
|
||||||
var delWasCalled = false;
|
var delWasCalled = false;
|
||||||
agencyMock.remove = function(route) {
|
agencyMock.remove = function(route) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + name);
|
assertEqual(route, [agencyRoutes.target, "DBServers", name].join("/"));
|
||||||
assertFalse(delWasCalled, "Delete has been called multiple times");
|
assertFalse(delWasCalled, "Delete has been called multiple times");
|
||||||
delete agencyTargetServers[route];
|
delete agencyTargetServers[route];
|
||||||
delWasCalled = true;
|
delWasCalled = true;
|
||||||
|
@ -283,7 +294,7 @@ function runGoodCaseTests(test) {
|
||||||
var pName = "pavel";
|
var pName = "pavel";
|
||||||
var wasCalled = false;
|
var wasCalled = false;
|
||||||
agencyMock.set = function(route, value) {
|
agencyMock.set = function(route, value) {
|
||||||
assertEqual(route, agencyRoutes.target + "DBServers/" + pName);
|
assertEqual(route, [agencyRoutes.target, "DBServers", pName].join("/"));
|
||||||
assertEqual(value, "none");
|
assertEqual(value, "none");
|
||||||
assertFalse(wasCalled, "Set has been called multiple times");
|
assertFalse(wasCalled, "Set has been called multiple times");
|
||||||
agencyTargetServers[route] = value;
|
agencyTargetServers[route] = value;
|
||||||
|
@ -310,61 +321,24 @@ function runGoodCaseTests(test) {
|
||||||
tearDown: teardown,
|
tearDown: teardown,
|
||||||
|
|
||||||
testGetDatabaseList: function() {
|
testGetDatabaseList: function() {
|
||||||
|
/*
|
||||||
|
var list = [
|
||||||
|
"_system",
|
||||||
|
"a_db",
|
||||||
|
"b_db",
|
||||||
|
"z_db"
|
||||||
|
];
|
||||||
|
assertEqual(targetDBs.getList(), list);
|
||||||
|
*/
|
||||||
assertTrue(true);
|
assertTrue(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
function DBServersSuite() {
|
|
||||||
|
|
||||||
var DBServers;
|
|
||||||
|
|
||||||
return {
|
|
||||||
setUp: function() {
|
|
||||||
DBServers = comm.DBServers();
|
|
||||||
},
|
|
||||||
tearDown: function() {},
|
|
||||||
|
|
||||||
testGetList: function() {
|
|
||||||
var expectedResult = {
|
|
||||||
pavel: {
|
|
||||||
address: "tcp://192.168.0.1:8529",
|
|
||||||
role: "primary",
|
|
||||||
secondary: "sandro"
|
|
||||||
},
|
|
||||||
paul: {
|
|
||||||
address: "tcp://192.168.0.2:8529",
|
|
||||||
role: "primary",
|
|
||||||
secondary: "sally"
|
|
||||||
},
|
|
||||||
patricia: {
|
|
||||||
address: "tcp://192.168.0.3:8529",
|
|
||||||
role: "primary",
|
|
||||||
secondary: "sandra"
|
|
||||||
},
|
|
||||||
sandro: {
|
|
||||||
address: "tcp://192.168.0.4:8529",
|
|
||||||
role: "secondary"
|
|
||||||
},
|
|
||||||
sally: {
|
|
||||||
address: "tcp://192.168.0.5:8529",
|
|
||||||
role: "secondary"
|
|
||||||
},
|
|
||||||
sandra: {
|
|
||||||
address: "tcp://192.168.0.6:8529",
|
|
||||||
role: "secondary"
|
|
||||||
}
|
|
||||||
};
|
|
||||||
var res = DBServers.list();
|
|
||||||
assertEqual(expectedResult, res);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
// test.run(VisionSuite);
|
// test.run(VisionSuite);
|
||||||
test.run(TargetDBServersSuite);
|
test.run(TargetDBServersSuite);
|
||||||
test.run(TargetShardSuite);
|
test.run(TargetShardSuite);
|
||||||
// test.run(DBServersSuite);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue