Skip to content

Commit 3a3b69c

Browse files
authored
Merge branch 'master' into stateManager/integratePromises
2 parents 437053d + 8310617 commit 3a3b69c

File tree

7 files changed

+212
-59
lines changed

7 files changed

+212
-59
lines changed
+105
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
const fs = require('fs')
2+
3+
// https://github.com/ethereum/go-ethereum/blob/master/params/bootnodes.go
4+
const bootnodes = {
5+
// MainnetBootnodes are the enode URLs of the P2P bootstrap nodes running on
6+
// the main Ethereum network.
7+
MainnetBootnodes: {
8+
'bootnode-aws-ap-southeast-1-001': "enode://d860a01f9722d78051619d1e2351aba3f43f943f6f00718d1b9baa4101932a1f5011f16bb2b1bb35db20d6fe28fa0bf09636d26a87d31de9ec6203eeedb1f666@18.138.108.67:30303",
9+
'bootnode-aws-us-east-1-001': "enode://22a8232c3abc76a16ae9d6c3b164f98775fe226f0917b0ca871128a74a8e9630b458460865bab457221f1d448dd9791d24c4e5d88786180ac185df813a68d4de@3.209.45.79:30303",
10+
'bootnode-aws-eu-west-1-001': "enode://ca6de62fce278f96aea6ec5a2daadb877e51651247cb96ee310a318def462913b653963c155a0ef6c7d50048bba6e6cea881130857413d9f50a621546b590758@34.255.23.113:30303",
11+
'bootnode-aws-eu-central-1-001': "enode://279944d8dcd428dffaa7436f25ca0ca43ae19e7bcf94a8fb7d1641651f92d121e972ac2e8f381414b80cc8e5555811c2ec6e1a99bb009b3f53c4c69923e11bd8@35.158.244.151:30303",
12+
'bootnode-azure-australiaeast-001': "enode://8499da03c47d637b20eee24eec3c356c9a2e6148d6fe25ca195c7949ab8ec2c03e3556126b0d7ed644675e78c4318b08691b7b57de10e5f0d40d05b09238fa0a@52.187.207.27:30303",
13+
'bootnode-azure-brazilsouth-001': "enode://103858bdb88756c71f15e9b5e09b56dc1be52f0a5021d46301dbbfb7e130029cc9d0d6f73f693bc29b665770fff7da4d34f3c6379fe12721b5d7a0bcb5ca1fc1@191.234.162.198:30303",
14+
'bootnode-azure-koreasouth-001': "enode://715171f50508aba88aecd1250af392a45a330af91d7b90701c436b618c86aaa1589c9184561907bebbb56439b8f8787bc01f49a7c77276c58c1b09822d75e8e8@52.231.165.108:30303",
15+
'bootnode-azure-westus-001': "enode://5d6d7cd20d6da4bb83a1d28cadb5d409b64edf314c0335df658c1a54e32c7c4a7ab7823d57c39b6a757556e68ff1df17c748b698544a55cb488b52479a92b60f@104.42.217.25:30303",
16+
}
17+
// RopstenBootnodes are the enode URLs of the P2P bootstrap nodes running on the
18+
// Ropsten test network.
19+
, RopstenBootnodes: {
20+
'US-Azure geth': "enode://30b7ab30a01c124a6cceca36863ece12c4f5fa68e3ba9b0b51407ccc002eeed3b3102d20a88f1c1d3c3154e2449317b8ef95090e77b312d5cc39354f86d5d606@52.176.7.10:30303", //
21+
'US-Azure parity': "enode://865a63255b3bb68023b6bffd5095118fcc13e79dcf014fe4e47e065c350c7cc72af2e53eff895f11ba1bbb6a2b33271c1116ee870f266618eadfc2e78aa7349c@52.176.100.77:30303", //
22+
'Parity': "enode://6332792c4a00e3e4ee0926ed89e0d27ef985424d97b6a45bf0f23e51f0dcb5e66b875777506458aea7af6f9e4ffb69f43f3778ee73c81ed9d34c51c4b16b0b0f@52.232.243.152:30303", //
23+
'@gpip': "enode://94c15d1b9e2fe7ce56e458b9a3b672ef11894ddedd0c6f247e0f1d3487f52b66208fb4aeb8179fce6e3a749ea93ed147c37976d67af557508d199d9594c35f09@192.81.208.223:30303", //
24+
}
25+
26+
// RinkebyBootnodes are the enode URLs of the P2P bootstrap nodes running on the
27+
// Rinkeby test network.
28+
, RinkebyBootnodes: {
29+
'IE': "enode://a24ac7c5484ef4ed0c5eb2d36620ba4e4aa13b8c84684e1b4aab0cebea2ae45cb4d375b77eab56516d34bfbd3c1a833fc51296ff084b770b94fb9028c4d25ccf@52.169.42.101:30303", //
30+
'INFURA': "enode://343149e4feefa15d882d9fe4ac7d88f885bd05ebb735e547f12e12080a9fa07c8014ca6fd7f373123488102fe5e34111f8509cf0b7de3f5b44339c9f25e87cb8@52.3.158.184:30303", //
31+
'AKASHA': "enode://b6b28890b006743680c52e64e0d16db57f28124885595fa03a562be1d2bf0f3a1da297d56b13da25fb992888fd556d4c1a27b1f39d531bde7de1921c90061cc6@159.89.28.211:30303", //
32+
}
33+
34+
// GoerliBootnodes are the enode URLs of the P2P bootstrap nodes running on the
35+
// Görli test network.
36+
, GoerliBootnodes: {
37+
// Upstream bootnodes
38+
'Upstream bootnode 1': "enode://011f758e6552d105183b1761c5e2dea0111bc20fd5f6422bc7f91e0fabbec9a6595caf6239b37feb773dddd3f87240d99d859431891e4a642cf2a0a9e6cbb98a@51.141.78.53:30303",
39+
'Upstream bootnode 2': "enode://176b9417f511d05b6b2cf3e34b756cf0a7096b3094572a8f6ef4cdcb9d1f9d00683bf0f83347eebdf3b81c3521c2332086d9592802230bf528eaf606a1d9677b@13.93.54.137:30303",
40+
'Upstream bootnode 3': "enode://46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291@94.237.54.114:30313",
41+
'Upstream bootnode 4': "enode://c1f8b7c2ac4453271fa07d8e9ecf9a2e8285aa0bd0c07df0131f47153306b0736fd3db8924e7a9bf0bed6b1d8d4f87362a71b033dc7c64547728d953e43e59b2@52.64.155.147:30303",
42+
'Upstream bootnode 5': "enode://f4a9c6ee28586009fb5a96c8af13a58ed6d8315a9eee4772212c1d4d9cebe5a8b8a78ea4434f318726317d04a3f531a1ef0420cf9752605a562cfe858c46e263@213.186.16.82:30303",
43+
44+
// Ethereum Foundation bootnode
45+
'Ethereum Foundation bootnode': "enode://a61215641fb8714a373c80edbfa0ea8878243193f57c96eeb44d0bc019ef295abd4e044fd619bfc4c59731a73fb79afe84e9ab6da0c743ceb479cbb6d263fa91@3.11.147.67:30303",
46+
}
47+
48+
// https://github.com/openethereum/openethereum/blob/master/ethcore/res/ethereum/kovan.json#L6783
49+
,KovanBootnodes: {
50+
'1': "enode://16898006ba2cd4fa8bf9a3dfe32684c178fa861df144bfc21fe800dc4838a03e342056951fa9fd533dcb0be1219e306106442ff2cf1f7e9f8faa5f2fc1a3aa45@116.203.116.241:30303",
51+
'2': "enode://2909846f78c37510cc0e306f185323b83bb2209e5ff4fdd279d93c60e3f365e3c6e62ad1d2133ff11f9fd6d23ad9c3dad73bb974d53a22f7d1ac5b7dea79d0b0@3.217.96.11:30303",
52+
'3': "enode://740e1c8ea64e71762c71a463a04e2046070a0c9394fcab5891d41301dc473c0cff00ebab5a9bc87fbcb610ab98ac18225ff897bc8b7b38def5975d5ceb0a7d7c@108.61.170.124:30303",
53+
'4': "enode://2909846f78c37510cc0e306f185323b83bb2209e5ff4fdd279d93c60e3f365e3c6e62ad1d2133ff11f9fd6d23ad9c3dad73bb974d53a22f7d1ac5b7dea79d0b0@157.230.31.163:30303"
54+
}
55+
}
56+
57+
58+
/*
59+
parse string and generate:
60+
{
61+
"ip": "52.74.57.123",
62+
"port": 30303,
63+
"id": "1118980bf48b0a3640bdba04e0fe78b1add18e1cd99bf22d53daac1fd9972ad650df52176e7c7d89d1114cfef2bc23a2959aa54998a46afcf7d91809f0855082",
64+
"location": "SG",
65+
"comment": "Go Bootnode"
66+
}
67+
*/
68+
const generateJson = (bootnodes) => {
69+
const nodes = []
70+
for (const b in bootnodes) {
71+
let enode = bootnodes[b]
72+
enode = enode.replace('enode://', '')
73+
const [id, rest] = enode.split('@')
74+
const [ip, port] = rest.split(':')
75+
const node = {
76+
ip,
77+
port: parseInt(port),
78+
id,
79+
location: (b.includes('-aws-') || b.includes('-azure-')) ? b.replace('bootnode-aws-', '').replace('bootnode-azure-', '') : '',
80+
comment: b
81+
}
82+
console.log('node', node)
83+
nodes.push(node)
84+
}
85+
return nodes
86+
}
87+
88+
const nameToJsonFile = {
89+
MainnetBootnodes: 'mainnet',
90+
RopstenBootnodes: 'ropsten',
91+
RinkebyBootnodes: 'rinkeby',
92+
GoerliBootnodes: 'goerli',
93+
KovanBootnodes: 'kovan',
94+
}
95+
96+
for (let configName in bootnodes) {
97+
console.log('process ', configName)
98+
const fileName = nameToJsonFile[configName]
99+
const filePath = `./src/chains/${fileName}.json`
100+
const _newConfig = JSON.parse(fs.readFileSync(filePath))
101+
_newConfig.bootstrapNodes = generateJson(bootnodes[configName])
102+
fs.writeFileSync(filePath, `${JSON.stringify(_newConfig, null, 2)}\n`)
103+
}
104+
105+

packages/common/src/chains/goerli.json

+12-5
Original file line numberDiff line numberDiff line change
@@ -75,35 +75,42 @@
7575
"port": 30303,
7676
"id": "011f758e6552d105183b1761c5e2dea0111bc20fd5f6422bc7f91e0fabbec9a6595caf6239b37feb773dddd3f87240d99d859431891e4a642cf2a0a9e6cbb98a",
7777
"location": "",
78-
"comment": "Source: https://github.com/goerli/testnet/blob/master/bootnodes.txt"
78+
"comment": "Upstream bootnode 1"
7979
},
8080
{
8181
"ip": "13.93.54.137",
8282
"port": 30303,
8383
"id": "176b9417f511d05b6b2cf3e34b756cf0a7096b3094572a8f6ef4cdcb9d1f9d00683bf0f83347eebdf3b81c3521c2332086d9592802230bf528eaf606a1d9677b",
8484
"location": "",
85-
"comment": "Source: https://github.com/goerli/testnet/blob/master/bootnodes.txt"
85+
"comment": "Upstream bootnode 2"
8686
},
8787
{
8888
"ip": "94.237.54.114",
8989
"port": 30313,
9090
"id": "46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291",
9191
"location": "",
92-
"comment": "Source: https://github.com/goerli/testnet/blob/master/bootnodes.txt"
92+
"comment": "Upstream bootnode 3"
9393
},
9494
{
9595
"ip": "52.64.155.147",
9696
"port": 30303,
9797
"id": "c1f8b7c2ac4453271fa07d8e9ecf9a2e8285aa0bd0c07df0131f47153306b0736fd3db8924e7a9bf0bed6b1d8d4f87362a71b033dc7c64547728d953e43e59b2",
9898
"location": "",
99-
"comment": "Source: https://github.com/goerli/testnet/blob/master/bootnodes.txt"
99+
"comment": "Upstream bootnode 4"
100100
},
101101
{
102102
"ip": "213.186.16.82",
103103
"port": 30303,
104104
"id": "f4a9c6ee28586009fb5a96c8af13a58ed6d8315a9eee4772212c1d4d9cebe5a8b8a78ea4434f318726317d04a3f531a1ef0420cf9752605a562cfe858c46e263",
105105
"location": "",
106-
"comment": "Source: https://github.com/goerli/testnet/blob/master/bootnodes.txt"
106+
"comment": "Upstream bootnode 5"
107+
},
108+
{
109+
"ip": "3.11.147.67",
110+
"port": 30303,
111+
"id": "a61215641fb8714a373c80edbfa0ea8878243193f57c96eeb44d0bc019ef295abd4e044fd619bfc4c59731a73fb79afe84e9ab6da0c743ceb479cbb6d263fa91",
112+
"location": "",
113+
"comment": "Ethereum Foundation bootnode"
107114
}
108115
]
109116
}

packages/common/src/chains/kovan.json

+12-19
Original file line numberDiff line numberDiff line change
@@ -71,39 +71,32 @@
7171
],
7272
"bootstrapNodes": [
7373
{
74-
"ip": "40.71.221.215",
74+
"ip": "116.203.116.241",
7575
"port": 30303,
76-
"id": "56abaf065581a5985b8c5f4f88bd202526482761ba10be9bfdcd14846dd01f652ec33fde0f8c0fd1db19b59a4c04465681fcef50e11380ca88d25996191c52de",
76+
"id": "16898006ba2cd4fa8bf9a3dfe32684c178fa861df144bfc21fe800dc4838a03e342056951fa9fd533dcb0be1219e306106442ff2cf1f7e9f8faa5f2fc1a3aa45",
7777
"location": "",
78-
"comment": "Parity Bootnode"
78+
"comment": "1"
7979
},
8080
{
81-
"ip": "52.166.117.77",
81+
"ip": "3.217.96.11",
8282
"port": 30303,
83-
"id": "d07827483dc47b368eaf88454fb04b41b7452cf454e194e2bd4c14f98a3278fed5d819dbecd0d010407fc7688d941ee1e58d4f9c6354d3da3be92f55c17d7ce3",
83+
"id": "2909846f78c37510cc0e306f185323b83bb2209e5ff4fdd279d93c60e3f365e3c6e62ad1d2133ff11f9fd6d23ad9c3dad73bb974d53a22f7d1ac5b7dea79d0b0",
8484
"location": "",
85-
"comment": "Parity Bootnode"
85+
"comment": "2"
8686
},
8787
{
88-
"ip": "52.165.239.18",
88+
"ip": "108.61.170.124",
8989
"port": 30303,
90-
"id": "8fa162563a8e5a05eef3e1cd5abc5828c71344f7277bb788a395cce4a0e30baf2b34b92fe0b2dbbba2313ee40236bae2aab3c9811941b9f5a7e8e90aaa27ecba",
90+
"id": "740e1c8ea64e71762c71a463a04e2046070a0c9394fcab5891d41301dc473c0cff00ebab5a9bc87fbcb610ab98ac18225ff897bc8b7b38def5975d5ceb0a7d7c",
9191
"location": "",
92-
"comment": "Parity Bootnode"
92+
"comment": "3"
9393
},
9494
{
95-
"ip": "52.243.47.56",
95+
"ip": "157.230.31.163",
9696
"port": 30303,
97-
"id": "7e2e7f00784f516939f94e22bdc6cf96153603ca2b5df1c7cc0f90a38e7a2f218ffb1c05b156835e8b49086d11fdd1b3e2965be16baa55204167aa9bf536a4d9",
97+
"id": "2909846f78c37510cc0e306f185323b83bb2209e5ff4fdd279d93c60e3f365e3c6e62ad1d2133ff11f9fd6d23ad9c3dad73bb974d53a22f7d1ac5b7dea79d0b0",
9898
"location": "",
99-
"comment": "Parity Bootnode"
100-
},
101-
{
102-
"ip": "40.68.248.100",
103-
"port": 30303,
104-
"id": "0518a3d35d4a7b3e8c433e7ffd2355d84a1304ceb5ef349787b556197f0c87fad09daed760635b97d52179d645d3e6d16a37d2cc0a9945c2ddf585684beb39ac",
105-
"location": "",
106-
"comment": "Parity Bootnode"
99+
"comment": "4"
107100
}
108101
]
109102
}

packages/common/src/chains/mainnet.json

+44-16
Original file line numberDiff line numberDiff line change
@@ -77,32 +77,60 @@
7777
],
7878
"bootstrapNodes": [
7979
{
80-
"ip": "13.93.211.84",
80+
"ip": "18.138.108.67",
8181
"port": 30303,
82-
"id": "3f1d12044546b76342d59d4a05532c14b85aa669704bfe1f864fe079415aa2c02d743e03218e57a33fb94523adb54032871a6c51b2cc5514cb7c7e35b3ed0a99",
83-
"location": "US-WEST",
84-
"comment": "Go Bootnode"
82+
"id": "d860a01f9722d78051619d1e2351aba3f43f943f6f00718d1b9baa4101932a1f5011f16bb2b1bb35db20d6fe28fa0bf09636d26a87d31de9ec6203eeedb1f666",
83+
"location": "ap-southeast-1-001",
84+
"comment": "bootnode-aws-ap-southeast-1-001"
8585
},
8686
{
87-
"ip": "191.235.84.50",
87+
"ip": "3.209.45.79",
8888
"port": 30303,
89-
"id": "78de8a0916848093c73790ead81d1928bec737d565119932b98c6b100d944b7a95e94f847f689fc723399d2e31129d182f7ef3863f2b4c820abbf3ab2722344d",
90-
"location": "BR",
91-
"comment": "Go Bootnode"
89+
"id": "22a8232c3abc76a16ae9d6c3b164f98775fe226f0917b0ca871128a74a8e9630b458460865bab457221f1d448dd9791d24c4e5d88786180ac185df813a68d4de",
90+
"location": "us-east-1-001",
91+
"comment": "bootnode-aws-us-east-1-001"
9292
},
9393
{
94-
"ip": "13.75.154.138",
94+
"ip": "34.255.23.113",
9595
"port": 30303,
96-
"id": "158f8aab45f6d19c6cbf4a089c2670541a8da11978a2f90dbf6a502a4a3bab80d288afdbeb7ec0ef6d92de563767f3b1ea9e8e334ca711e9f8e2df5a0385e8e6",
97-
"location": "AU",
98-
"comment": "Go Bootnode"
96+
"id": "ca6de62fce278f96aea6ec5a2daadb877e51651247cb96ee310a318def462913b653963c155a0ef6c7d50048bba6e6cea881130857413d9f50a621546b590758",
97+
"location": "eu-west-1-001",
98+
"comment": "bootnode-aws-eu-west-1-001"
9999
},
100100
{
101-
"ip": "52.74.57.123",
101+
"ip": "35.158.244.151",
102102
"port": 30303,
103-
"id": "1118980bf48b0a3640bdba04e0fe78b1add18e1cd99bf22d53daac1fd9972ad650df52176e7c7d89d1114cfef2bc23a2959aa54998a46afcf7d91809f0855082",
104-
"location": "SG",
105-
"comment": "Go Bootnode"
103+
"id": "279944d8dcd428dffaa7436f25ca0ca43ae19e7bcf94a8fb7d1641651f92d121e972ac2e8f381414b80cc8e5555811c2ec6e1a99bb009b3f53c4c69923e11bd8",
104+
"location": "eu-central-1-001",
105+
"comment": "bootnode-aws-eu-central-1-001"
106+
},
107+
{
108+
"ip": "52.187.207.27",
109+
"port": 30303,
110+
"id": "8499da03c47d637b20eee24eec3c356c9a2e6148d6fe25ca195c7949ab8ec2c03e3556126b0d7ed644675e78c4318b08691b7b57de10e5f0d40d05b09238fa0a",
111+
"location": "australiaeast-001",
112+
"comment": "bootnode-azure-australiaeast-001"
113+
},
114+
{
115+
"ip": "191.234.162.198",
116+
"port": 30303,
117+
"id": "103858bdb88756c71f15e9b5e09b56dc1be52f0a5021d46301dbbfb7e130029cc9d0d6f73f693bc29b665770fff7da4d34f3c6379fe12721b5d7a0bcb5ca1fc1",
118+
"location": "brazilsouth-001",
119+
"comment": "bootnode-azure-brazilsouth-001"
120+
},
121+
{
122+
"ip": "52.231.165.108",
123+
"port": 30303,
124+
"id": "715171f50508aba88aecd1250af392a45a330af91d7b90701c436b618c86aaa1589c9184561907bebbb56439b8f8787bc01f49a7c77276c58c1b09822d75e8e8",
125+
"location": "koreasouth-001",
126+
"comment": "bootnode-azure-koreasouth-001"
127+
},
128+
{
129+
"ip": "104.42.217.25",
130+
"port": 30303,
131+
"id": "5d6d7cd20d6da4bb83a1d28cadb5d409b64edf314c0335df658c1a54e32c7c4a7ab7823d57c39b6a757556e68ff1df17c748b698544a55cb488b52479a92b60f",
132+
"location": "westus-001",
133+
"comment": "bootnode-azure-westus-001"
106134
}
107135
]
108136
}

packages/common/src/chains/rinkeby.json

+9-2
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,22 @@
7474
"ip": "52.169.42.101",
7575
"port": 30303,
7676
"id": "a24ac7c5484ef4ed0c5eb2d36620ba4e4aa13b8c84684e1b4aab0cebea2ae45cb4d375b77eab56516d34bfbd3c1a833fc51296ff084b770b94fb9028c4d25ccf",
77-
"location": "IE",
78-
"comment": ""
77+
"location": "",
78+
"comment": "IE"
7979
},
8080
{
8181
"ip": "52.3.158.184",
8282
"port": 30303,
8383
"id": "343149e4feefa15d882d9fe4ac7d88f885bd05ebb735e547f12e12080a9fa07c8014ca6fd7f373123488102fe5e34111f8509cf0b7de3f5b44339c9f25e87cb8",
8484
"location": "",
8585
"comment": "INFURA"
86+
},
87+
{
88+
"ip": "159.89.28.211",
89+
"port": 30303,
90+
"id": "b6b28890b006743680c52e64e0d16db57f28124885595fa03a562be1d2bf0f3a1da297d56b13da25fb992888fd556d4c1a27b1f39d531bde7de1921c90061cc6",
91+
"location": "",
92+
"comment": "AKASHA"
8693
}
8794
]
8895
}

packages/common/src/chains/ropsten.json

+8-16
Original file line numberDiff line numberDiff line change
@@ -78,38 +78,30 @@
7878
"bootstrapNodes": [
7979
{
8080
"ip": "52.176.7.10",
81-
"port": "30303",
81+
"port": 30303,
8282
"id": "30b7ab30a01c124a6cceca36863ece12c4f5fa68e3ba9b0b51407ccc002eeed3b3102d20a88f1c1d3c3154e2449317b8ef95090e77b312d5cc39354f86d5d606",
83-
"network": "Ropsten",
84-
"chainId": 3,
85-
"location": "US",
83+
"location": "",
8684
"comment": "US-Azure geth"
8785
},
8886
{
8987
"ip": "52.176.100.77",
90-
"port": "30303",
88+
"port": 30303,
9189
"id": "865a63255b3bb68023b6bffd5095118fcc13e79dcf014fe4e47e065c350c7cc72af2e53eff895f11ba1bbb6a2b33271c1116ee870f266618eadfc2e78aa7349c",
92-
"network": "Ropsten",
93-
"chainId": 3,
94-
"location": "US",
90+
"location": "",
9591
"comment": "US-Azure parity"
9692
},
9793
{
9894
"ip": "52.232.243.152",
99-
"port": "30303",
95+
"port": 30303,
10096
"id": "6332792c4a00e3e4ee0926ed89e0d27ef985424d97b6a45bf0f23e51f0dcb5e66b875777506458aea7af6f9e4ffb69f43f3778ee73c81ed9d34c51c4b16b0b0f",
101-
"network": "Ropsten",
102-
"chainId": 3,
103-
"location": "US",
97+
"location": "",
10498
"comment": "Parity"
10599
},
106100
{
107101
"ip": "192.81.208.223",
108-
"port": "30303",
102+
"port": 30303,
109103
"id": "94c15d1b9e2fe7ce56e458b9a3b672ef11894ddedd0c6f247e0f1d3487f52b66208fb4aeb8179fce6e3a749ea93ed147c37976d67af557508d199d9594c35f09",
110-
"network": "Ropsten",
111-
"chainId": 3,
112-
"location": "US",
104+
"location": "",
113105
"comment": "@gpip"
114106
}
115107
]

packages/common/tests/chains.ts

+22-1
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,29 @@ tape('[Common]: Initialization / Chain params', function(t: tape.Test) {
5959
const hash = '0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3'
6060
st.equal(c.genesis().hash, hash, 'should return correct genesis hash')
6161
st.equal(c.hardforks()[3]['block'], 2463000, 'should return correct hardfork data')
62-
st.equal(c.bootstrapNodes()[0].port, 30303, 'should return a bootstrap node array')
62+
st.equal(typeof c.bootstrapNodes()[0].port, 'number', 'should return a port as number')
63+
st.end()
64+
})
6365

66+
t.test('Should provide the bootnode information in a uniform way', function(st: tape.Test) {
67+
const configs = ['mainnet', 'ropsten', 'rinkeby', 'goerli']
68+
for (const network of configs) {
69+
const c = new Common(network)
70+
const bootnode = c.bootstrapNodes()[0]
71+
st.equal(typeof bootnode.ip, 'string', 'returns the ip as string')
72+
st.equal(typeof bootnode.port, 'number', 'returns the port as number')
73+
st.equal(typeof bootnode.id, 'string', 'returns the id as string')
74+
st.equal(
75+
typeof bootnode.location,
76+
'string',
77+
'returns the location as string (empty string if unavailable)',
78+
)
79+
st.equal(
80+
typeof bootnode.comment,
81+
'string',
82+
'returns a comment as string (empty string if unavailable)',
83+
)
84+
}
6485
st.end()
6586
})
6687

0 commit comments

Comments
 (0)