diff options
author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2015-11-10 13:09:58 -0800 |
---|---|---|
committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2015-11-10 13:09:58 -0800 |
commit | 0e4a2c378fc80988c5bc60bf4bad5b2022f0d366 (patch) | |
tree | 03968234b160bab1cebd18ece3d0e576d8e9116e /tests | |
parent | 2854f14966b430e551c2ca101694f542bdaa38b9 (diff) | |
download | infinitytier-0e4a2c378fc80988c5bc60bf4bad5b2022f0d366.tar.gz infinitytier-0e4a2c378fc80988c5bc60bf4bad5b2022f0d366.zip |
Fix a sporadic warning in cluster-geo, and fix test to not overload the test-watcher.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/http/agent.js | 15 | ||||
-rw-r--r-- | tests/http/server.js | 18 |
2 files changed, 18 insertions, 15 deletions
diff --git a/tests/http/agent.js b/tests/http/agent.js index 0595ada4..9ab2e019 100644 --- a/tests/http/agent.js +++ b/tests/http/agent.js @@ -97,7 +97,7 @@ function agentIdToIp(agentId) }; var lastTestResult = null; -var allOtherAgents = []; +var allOtherAgents = {}; function doTest() { @@ -114,16 +114,19 @@ function doTest() if (body) { try { var peers = JSON.parse(body); - if (Array.isArray(peers)) - allOtherAgents = allOtherAgents.concat(peers); + if (Array.isArray(peers)) { + for(var xx=0;xx<peers.length;++xx) + allOtherAgents[peers[xx]] = true; + } } catch (e) {} } - if (allOtherAgents.length > 1) { + var agents = Object.keys(allOtherAgents); + if (agents.length > 1) { - var target = allOtherAgents[Math.floor(Math.random() * allOtherAgents.length)]; + var target = agents[Math.floor(Math.random() * agents.length)]; while (target === thisAgentId) - target = allOtherAgents[Math.floor(Math.random() * allOtherAgents.length)]; + target = agents[Math.floor(Math.random() * agents.length)]; var testRequest = null; var timeoutId = null; diff --git a/tests/http/server.js b/tests/http/server.js index 681f1069..629784da 100644 --- a/tests/http/server.js +++ b/tests/http/server.js @@ -34,16 +34,16 @@ app.post('/:agentId',function(req,res) { } catch (e) {} } - var thisUpdate = null; - if (!(agentId in knownAgents)) { - thisUpdate = Object.keys(knownAgents); - for(var id in knownAgents) - knownAgents[id].push(agentId); - knownAgents[agentId] = []; - } else { - thisUpdate = knownAgents[agentId]; - knownAgents[agentId] = []; + knownAgents[agentId] = true; + var thisUpdate = []; + var agents = Object.keys(knownAgents); + if (agents.length < 100) + thisUpdate = agents; + else { + for(var xx=0;xx<100;++xx) + thisUpdate.push(agents[Math.floor(Math.random() * agents.length)]); } + return res.status(200).send(JSON.stringify(thisUpdate)); }); |