diff --git a/2nodetest.sh b/2nodetest.sh new file mode 100755 index 0000000000..2f3e49e4c5 --- /dev/null +++ b/2nodetest.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +Datadir0="~/.mainnode" +Datadir1="~/.peernode" + +#build/bin/geth --datadir $Datadir0 removedb +#build/bin/geth --datadir $Datadir1 removedb + +rm -rf ~/.ethash +rm -rf $Datadir0 +rm -rf $Datadir1 + +echo "node datadir cleared" + +echo "main node init" +build/bin/geth --datadir $Datadir0 init genesis.json +build/bin/geth --datadir $Datadir0 --port 30303 --networkid 9876 --exec 'loadScript("yapen/mainnode.js")' console & + +sleep 4s + +echo "peer node init" +build/bin/geth --datadir $Datadir1 init genesis.json +build/bin/geth --datadir $Datadir1 --port 30304 --networkid 9876 --exec 'loadScript("yapen/peernode.js")' console + +echo "all command executed" + diff --git a/genesis.json b/genesis.json index 5423d4bf91..115304818c 100644 --- a/genesis.json +++ b/genesis.json @@ -1,12 +1,11 @@ - -{ "config": { - "chainId": 987, +{ + "config": { + "chainId": 987, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "difficulty": "0x200", - "gasLimit": "0x8000000", + "gasLimit": "0x8000000", "alloc": {} } -} diff --git a/yapen/mainnode.js b/yapen/mainnode.js new file mode 100644 index 0000000000..ebaa082605 --- /dev/null +++ b/yapen/mainnode.js @@ -0,0 +1,40 @@ +function sleep(milliseconds) { + var start = new Date().getTime(); + for (var i = 0; i < 1e7; i++) { + if ((new Date().getTime() - start) > milliseconds){ + break; + } + } +} + +function interaction() { + personal.newAccount("123456") + acc0 = web3.eth.accounts[0] + acc1 = web3.eth.accounts[1] + console.log("[mainnode]: account list: " + eth.accounts) + console.log("[mainnode]: acc0 balance: " + web3.fromWei(web3.eth.getBalance(acc0))) + console.log("[mainnode]: acc1 balance: " + web3.fromWei(web3.eth.getBalance(acc1))) + + miner.setEtherbase(eth.accounts[0]) + miner.start() + + personal.unlockAccount(acc0, "123456") + eth.sendTransaction({from:acc0,to:acc1,value:web3.toWei(1,"ether")}) + while (1) { + balance0 = web3.fromWei(web3.eth.getBalance(acc0)) + balance1 = web3.fromWei(web3.eth.getBalance(acc1)) + if (balance0 >0 && balance1 > 0) { + miner.stop() + break + } + sleep(1000) + } + console.log("[mainnode]: acc0 balance: " + web3.fromWei(web3.eth.getBalance(acc0))) + console.log("[mainnode]: acc1 balance: " + web3.fromWei(web3.eth.getBalance(acc1))) + + console.log("[mainnode]: admin.nodeInfo: " + admin.nodeInfo.id) + + sleep(5000) +} + +interaction() diff --git a/yapen/peernode.js b/yapen/peernode.js new file mode 100644 index 0000000000..675580630a --- /dev/null +++ b/yapen/peernode.js @@ -0,0 +1,23 @@ +function sleep(milliseconds) { + var start = new Date().getTime(); + for (var i = 0; i < 1e7; i++) { + if ((new Date().getTime() - start) > milliseconds){ + break; + } + } +} + +function interaction() { + console.log("[peermode]: peer count: " + net.peerCount) + //admin.addPeer("enode://a321db2296eb0078fab331d27460456f9c66c478049ee34441595d9c4fc4391af31f24b81fcdf21f28a7e391d07ab4fc550b6e235021abad310992f32d2fc876@127.0.0.1:30303") + + console.log("[peermode]: connect to [::]:30303") + admin.addPeer("enode://07a0106f92170dd3fc3ffa201c5b0708c8b3b92f73ad58b6f21a43338eea924b53e0a1d942c70f582127f10fb86b569c10dabcc97fa308a90f23aa6003c5b76c@[::]:30303") + while (net.peerCount == 0) + { + sleep(1000) + console.log("[peermode]: peer count: " + net.peerCount) + } +} + +interaction()