From 0e7c51bb0a4755a2bebe11c72a579a962b3c205b Mon Sep 17 00:00:00 2001 From: Dimitry Date: Fri, 17 Feb 2017 16:19:07 +0400 Subject: move tests to separate folders --- RPCTests/main.js | 7 ++-- RPCTests/modules/testutils.js | 49 +++++++++++++--------- RPCTests/modules/utils.js | 21 ++++++++-- RPCTests/scripts/test00_node02_AddPeer.js | 26 ------------ RPCTests/scripts/test01_node01_getPeerCount.js | 11 ----- RPCTests/scripts/test02_node01_mineBlocks.js | 31 -------------- RPCTests/scripts/test03_node02_getBlockHash.js | 13 ------ RPCTests/scripts/test04_node02_mineBlocks.js | 31 -------------- RPCTests/scripts/test05_node01_getBlockHash.js | 13 ------ .../scripts/tests/AddPeer/step00_node02_AddPeer.js | 26 ++++++++++++ .../tests/AddPeer/step01_node01_getPeerCount.js.js | 12 ++++++ .../tests/MineBlocks/step00_node01_mineBlocks.js | 32 ++++++++++++++ .../tests/MineBlocks/step01_node02_getBlockHash.js | 14 +++++++ .../tests/MineBlocks2/step00_node02_mineBlocks.js | 31 ++++++++++++++ .../MineBlocks2/step01_node01_getBlockHash.js | 13 ++++++ 15 files changed, 179 insertions(+), 151 deletions(-) delete mode 100644 RPCTests/scripts/test00_node02_AddPeer.js delete mode 100644 RPCTests/scripts/test01_node01_getPeerCount.js delete mode 100644 RPCTests/scripts/test02_node01_mineBlocks.js delete mode 100644 RPCTests/scripts/test03_node02_getBlockHash.js delete mode 100644 RPCTests/scripts/test04_node02_mineBlocks.js delete mode 100644 RPCTests/scripts/test05_node01_getBlockHash.js create mode 100644 RPCTests/scripts/tests/AddPeer/step00_node02_AddPeer.js create mode 100644 RPCTests/scripts/tests/AddPeer/step01_node01_getPeerCount.js.js create mode 100644 RPCTests/scripts/tests/MineBlocks/step00_node01_mineBlocks.js create mode 100644 RPCTests/scripts/tests/MineBlocks/step01_node02_getBlockHash.js create mode 100644 RPCTests/scripts/tests/MineBlocks2/step00_node02_mineBlocks.js create mode 100644 RPCTests/scripts/tests/MineBlocks2/step01_node01_getBlockHash.js diff --git a/RPCTests/main.js b/RPCTests/main.js index ffb5cfa62..e3089f0d0 100644 --- a/RPCTests/main.js +++ b/RPCTests/main.js @@ -16,10 +16,10 @@ function cb(){} function main() { -testutils.readTestsInFolder("./scripts"); +testutils.readTestsInFolder("./scripts/tests"); async.series([ function(cb) { - utils.setDebug(false); + utils.setDebug(true); ethconsole.startNode(ethpath, testdir + "/ethnode1", testdir + "/genesis.json", 30305, cb); }, function(cb) { @@ -53,7 +53,7 @@ function(cb) { function prepareDynamicVars(finished) { async.series([ - function(cb) { + function(cb) { ethconsole.runScriptOnNode(testdir + "/ethnode1", "./scripts/testNewAccount.js", {}, cb); }, function(cb) { @@ -117,3 +117,4 @@ function runAllTests(finished) } main(); +//testutils.readTestsInFolder("./scripts/tests"); diff --git a/RPCTests/modules/testutils.js b/RPCTests/modules/testutils.js index 7128c6972..54cd64525 100644 --- a/RPCTests/modules/testutils.js +++ b/RPCTests/modules/testutils.js @@ -26,31 +26,40 @@ generateCustomGenesis: function generateCustomGenesis(path, originalPath, accoun readTestsInFolder: function readTestsInFolder(path) { - var res = utils.listFiles(path); - res.forEach(function(file) { - var testn = file.indexOf("test"); - var slashn = file.indexOf("_"); - if (testn != -1 && slashn != -1) - { - testNumber = parseInt(file.substring(testn + 4, slashn)); - var noden = file.indexOf("node"); - var slashn = file.indexOf("_", slashn+1); - var tmpFile = file.indexOf("~"); - if (noden != -1 && slashn != -1 && tmpFile == -1) + var testNumber = 0; + var folders = utils.listFolders(path); + folders.forEach(function(folder) { + + var res = utils.listFiles(folder); + res.forEach(function(file) { + + var testn = file.indexOf("step"); + var slashn = file.indexOf("_"); + if (testn != -1 && slashn != -1) { - if (tests[testNumber]) - console.log("Error: dublicate test found " + file); - else + //testNumber = parseInt(file.substring(testn + 4, slashn)); + var noden = file.indexOf("node"); + var slashn = file.indexOf("_", slashn+1); + var tmpFile = file.indexOf("~"); + if (noden != -1 && slashn != -1 && tmpFile == -1) { - var testObject = {}; - testObject.file = file; - testObject.node = file.substring(noden + 4, slashn); - tests[testNumber] = testObject; - testCount++; + if (tests[testNumber]) + console.log("Error: dublicate test found " + file); + else + { + var testObject = {}; + testObject.file = file; + testObject.node = file.substring(noden + 4, slashn); + tests[testNumber] = testObject; + testCount++; + testNumber++; + } } } - } + }); }); + + //console.log(tests); }, getTestCount: function getTestCount() diff --git a/RPCTests/modules/utils.js b/RPCTests/modules/utils.js index 24e9bd811..5d32ec771 100644 --- a/RPCTests/modules/utils.js +++ b/RPCTests/modules/utils.js @@ -45,18 +45,33 @@ module.exports = { fs.writeFile(path, data, (err) => { if (err) throw err;}); }, - listFiles: function listFiles(dir) { + listFiles: function listFiles(dir, recursive = false) { var results = []; fs.readdirSync(dir).forEach(function(file) { file = dir+'/'+file; var stat = fs.statSync(file); - if (stat && stat.isDirectory()) { - results = results.concat(listFiles(file)) + if (stat && stat.isDirectory() && recursive) { + results = results.concat(listFiles(file, recursive)) } else results.push(file); }); + return results; + }, + + listFolders: function listFolders(dir) { + + var results = []; + fs.readdirSync(dir).forEach(function(file) { + file = dir+'/'+file; + var stat = fs.statSync(file); + + if (stat && stat.isDirectory()) { + results.push(file); + } + }); + return results; } diff --git a/RPCTests/scripts/test00_node02_AddPeer.js b/RPCTests/scripts/test00_node02_AddPeer.js deleted file mode 100644 index 233648dc3..000000000 --- a/RPCTests/scripts/test00_node02_AddPeer.js +++ /dev/null @@ -1,26 +0,0 @@ -process.stdout.write("TEST_addPeerOnNode2 "); -var onResult = {}; -web3.admin.addPeer("enode://" + args["node1_ID"] + "@127.0.0.1:" + args["node1_port"], function(err, res){ onResult(err, res); }) - -function sleep(ms) { - return new Promise(resolve => setTimeout(resolve, ms)); -} - -var onGetPeerCount = {}; -onResult = function (err,res) -{ - //wait for peer being added - sleep(1000).then(() => { - web3.net.getPeerCount(function(err, res){ onGetPeerCount(err, res); }) - }); -} - -onGetPeerCount = function (err, res) -{ - if (res == 1) - console.log("OK"); - else - console.log("FAILED"); - callback(err, res); -} - diff --git a/RPCTests/scripts/test01_node01_getPeerCount.js b/RPCTests/scripts/test01_node01_getPeerCount.js deleted file mode 100644 index 155846dbf..000000000 --- a/RPCTests/scripts/test01_node01_getPeerCount.js +++ /dev/null @@ -1,11 +0,0 @@ -process.stdout.write("TEST_getPeerCountOnNode1 "); -var onResult = {}; -web3.net.getPeerCount(function(err, res){ onResult(err, res); }) -onResult = function (err,res) -{ - if (res == 1) - console.log("OK"); - else - console.log("FAILED"); - callback(err, res); -} diff --git a/RPCTests/scripts/test02_node01_mineBlocks.js b/RPCTests/scripts/test02_node01_mineBlocks.js deleted file mode 100644 index 14bc0bb63..000000000 --- a/RPCTests/scripts/test02_node01_mineBlocks.js +++ /dev/null @@ -1,31 +0,0 @@ -process.stdout.write("TEST_mineBlockOnNode1 "); - -var latestBlock; -web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber1(err, res); }) -onGetBlockNumber1 = function (err, res) -{ - latestBlock = res; - web3.test.mineBlocks(1, function(err, res){ onResult(err, res); }) -} - - -onResult = function (err,res) -{ - function sleep(ms) { - return new Promise(resolve => setTimeout(resolve, ms)); - } - - //wait for block being mined - sleep(1000).then(() => { - web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber(err, res); }) - }); -} - -onGetBlockNumber = function (err, res) -{ - if (res == latestBlock + 1) - console.log("OK"); - else - console.log("FAILED"); - callback(err, res); -} diff --git a/RPCTests/scripts/test03_node02_getBlockHash.js b/RPCTests/scripts/test03_node02_getBlockHash.js deleted file mode 100644 index fc09f8423..000000000 --- a/RPCTests/scripts/test03_node02_getBlockHash.js +++ /dev/null @@ -1,13 +0,0 @@ -process.stdout.write("TEST_getBlockHashOnNode2 "); - -var onResult = {}; -web3.eth.getBlock("latest", function(err, res){ onResult(err, res); }) - -onResult = function (err,res) -{ - if (res.hash == args["node1_lastblock"].hash) - console.log("OK"); - else - console.log("FAILED"); - callback(err, res); -} diff --git a/RPCTests/scripts/test04_node02_mineBlocks.js b/RPCTests/scripts/test04_node02_mineBlocks.js deleted file mode 100644 index 70936cc41..000000000 --- a/RPCTests/scripts/test04_node02_mineBlocks.js +++ /dev/null @@ -1,31 +0,0 @@ -process.stdout.write("TEST_mineBlockOnNode2 "); - -var latestBlock; -web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber1(err, res); }) -onGetBlockNumber1 = function (err, res) -{ - latestBlock = res; - web3.test.mineBlocks(1, function(err, res){ onResult(err, res); }) -} - - -onResult = function (err,res) -{ - function sleep(ms) { - return new Promise(resolve => setTimeout(resolve, ms)); - } - - //wait for block being mined and propagated - sleep(1000).then(() => { - web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber(err, res); }) - }); -} - -onGetBlockNumber = function (err, res) -{ - if (res == latestBlock + 1) - console.log("OK"); - else - console.log("FAILED"); - callback(err, res); -} diff --git a/RPCTests/scripts/test05_node01_getBlockHash.js b/RPCTests/scripts/test05_node01_getBlockHash.js deleted file mode 100644 index d3a3b0bbf..000000000 --- a/RPCTests/scripts/test05_node01_getBlockHash.js +++ /dev/null @@ -1,13 +0,0 @@ -process.stdout.write("TEST_getBlockHashOnNode1 "); - -var onResult = {}; -web3.eth.getBlock("latest", function(err, res){ onResult(err, res); }) - -onResult = function (err,res) -{ - if (res.hash == args["node2_lastblock"].hash) - console.log("OK"); - else - console.log("FAILED "); - callback(err, res); -} diff --git a/RPCTests/scripts/tests/AddPeer/step00_node02_AddPeer.js b/RPCTests/scripts/tests/AddPeer/step00_node02_AddPeer.js new file mode 100644 index 000000000..233648dc3 --- /dev/null +++ b/RPCTests/scripts/tests/AddPeer/step00_node02_AddPeer.js @@ -0,0 +1,26 @@ +process.stdout.write("TEST_addPeerOnNode2 "); +var onResult = {}; +web3.admin.addPeer("enode://" + args["node1_ID"] + "@127.0.0.1:" + args["node1_port"], function(err, res){ onResult(err, res); }) + +function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); +} + +var onGetPeerCount = {}; +onResult = function (err,res) +{ + //wait for peer being added + sleep(1000).then(() => { + web3.net.getPeerCount(function(err, res){ onGetPeerCount(err, res); }) + }); +} + +onGetPeerCount = function (err, res) +{ + if (res == 1) + console.log("OK"); + else + console.log("FAILED"); + callback(err, res); +} + diff --git a/RPCTests/scripts/tests/AddPeer/step01_node01_getPeerCount.js.js b/RPCTests/scripts/tests/AddPeer/step01_node01_getPeerCount.js.js new file mode 100644 index 000000000..1f53480ff --- /dev/null +++ b/RPCTests/scripts/tests/AddPeer/step01_node01_getPeerCount.js.js @@ -0,0 +1,12 @@ +process.stdout.write("TEST_getPeerCountOnNode1 "); +var onResult = {}; +web3.net.getPeerCount(function(err, res){ onResult(err, res); }) +onResult = function (err,res) +{ + if (res == 1) + console.log("OK"); + else + console.log("FAILED"); + callback(err, res); +} + diff --git a/RPCTests/scripts/tests/MineBlocks/step00_node01_mineBlocks.js b/RPCTests/scripts/tests/MineBlocks/step00_node01_mineBlocks.js new file mode 100644 index 000000000..4abcdbd40 --- /dev/null +++ b/RPCTests/scripts/tests/MineBlocks/step00_node01_mineBlocks.js @@ -0,0 +1,32 @@ +process.stdout.write("TEST_mineBlockOnNode1 "); + +var latestBlock; +web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber1(err, res); }) +onGetBlockNumber1 = function (err, res) +{ + latestBlock = res; + web3.test.mineBlocks(1, function(err, res){ onResult(err, res); }) +} + + +onResult = function (err,res) +{ + function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); + } + + //wait for block being mined + sleep(1000).then(() => { + web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber(err, res); }) + }); +} + +onGetBlockNumber = function (err, res) +{ + if (res == latestBlock + 1) + console.log("OK"); + else + console.log("FAILED"); + callback(err, res); +} + diff --git a/RPCTests/scripts/tests/MineBlocks/step01_node02_getBlockHash.js b/RPCTests/scripts/tests/MineBlocks/step01_node02_getBlockHash.js new file mode 100644 index 000000000..92be98acf --- /dev/null +++ b/RPCTests/scripts/tests/MineBlocks/step01_node02_getBlockHash.js @@ -0,0 +1,14 @@ +process.stdout.write("TEST_getBlockHashOnNode2 "); + +var onResult = {}; +web3.eth.getBlock("latest", function(err, res){ onResult(err, res); }) + +onResult = function (err,res) +{ + if (res.hash == args["node1_lastblock"].hash) + console.log("OK"); + else + console.log("FAILED"); + callback(err, res); +} + diff --git a/RPCTests/scripts/tests/MineBlocks2/step00_node02_mineBlocks.js b/RPCTests/scripts/tests/MineBlocks2/step00_node02_mineBlocks.js new file mode 100644 index 000000000..70936cc41 --- /dev/null +++ b/RPCTests/scripts/tests/MineBlocks2/step00_node02_mineBlocks.js @@ -0,0 +1,31 @@ +process.stdout.write("TEST_mineBlockOnNode2 "); + +var latestBlock; +web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber1(err, res); }) +onGetBlockNumber1 = function (err, res) +{ + latestBlock = res; + web3.test.mineBlocks(1, function(err, res){ onResult(err, res); }) +} + + +onResult = function (err,res) +{ + function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); + } + + //wait for block being mined and propagated + sleep(1000).then(() => { + web3.eth.getBlockNumber(function(err, res){ onGetBlockNumber(err, res); }) + }); +} + +onGetBlockNumber = function (err, res) +{ + if (res == latestBlock + 1) + console.log("OK"); + else + console.log("FAILED"); + callback(err, res); +} diff --git a/RPCTests/scripts/tests/MineBlocks2/step01_node01_getBlockHash.js b/RPCTests/scripts/tests/MineBlocks2/step01_node01_getBlockHash.js new file mode 100644 index 000000000..d3a3b0bbf --- /dev/null +++ b/RPCTests/scripts/tests/MineBlocks2/step01_node01_getBlockHash.js @@ -0,0 +1,13 @@ +process.stdout.write("TEST_getBlockHashOnNode1 "); + +var onResult = {}; +web3.eth.getBlock("latest", function(err, res){ onResult(err, res); }) + +onResult = function (err,res) +{ + if (res.hash == args["node2_lastblock"].hash) + console.log("OK"); + else + console.log("FAILED "); + callback(err, res); +} -- cgit v1.2.3