solution: support rinkeby and ropsten testnets

fix: #64
This commit is contained in:
Igor Artamonov
2020-11-30 19:02:55 -05:00
parent 20f5345865
commit e09b7a4eee
8 changed files with 35 additions and 5 deletions

View File

@@ -440,7 +440,7 @@ Fallback role mean that the upstream is used only after other upstreams failed o
| yes
| Blockchain which is the provided by the upstream.
Cluster may have multiple upstreams for a single blockchain.
Accepted types: `bitcoin`, `bitcoin-testnet`, `ethereum`, `ethereum-classic`, `kovan`, or `goerli`
Accepted types: `bitcoin`, `bitcoin-testnet`, `ethereum`, `ethereum-classic`, `kovan-testnet`, `rinkeby-testnet`, `ropsten-testnet`, or `goerli-testnet`
| `labels`
| no

View File

@@ -30,7 +30,13 @@ enum class BlockchainType {
companion object {
@JvmStatic
fun fromBlockchain(blockchain: Chain): BlockchainType {
if (blockchain == Chain.ETHEREUM || blockchain == Chain.ETHEREUM_CLASSIC || blockchain == Chain.TESTNET_KOVAN || blockchain == Chain.TESTNET_MORDEN || blockchain == Chain.TESTNET_GOERLI) {
if (blockchain == Chain.ETHEREUM
|| blockchain == Chain.ETHEREUM_CLASSIC
|| blockchain == Chain.TESTNET_KOVAN
|| blockchain == Chain.TESTNET_ROPSTEN
|| blockchain == Chain.TESTNET_RINKEBY
|| blockchain == Chain.TESTNET_MORDEN
|| blockchain == Chain.TESTNET_GOERLI) {
return ETHEREUM
}
if (blockchain == Chain.BITCOIN || blockchain == Chain.TESTNET_BITCOIN) {

View File

@@ -63,6 +63,10 @@ open class ConfiguredUpstreams(
"kovan-testnet" to Chain.TESTNET_KOVAN,
"goerli" to Chain.TESTNET_GOERLI,
"goerli-testnet" to Chain.TESTNET_GOERLI,
"rinkeby" to Chain.TESTNET_RINKEBY,
"rinkeby-testnet" to Chain.TESTNET_RINKEBY,
"ropsten" to Chain.TESTNET_ROPSTEN,
"ropsten-testnet" to Chain.TESTNET_ROPSTEN,
"bitcoin" to Chain.BITCOIN,
"bitcoin-testnet" to Chain.TESTNET_BITCOIN
)

View File

@@ -122,6 +122,12 @@ class DefaultEthereumMethods(
Chain.TESTNET_MORDEN == chain -> {
"\"2\""
}
Chain.TESTNET_ROPSTEN == chain -> {
"\"3\""
}
Chain.TESTNET_RINKEBY == chain -> {
"\"4\""
}
Chain.TESTNET_KOVAN == chain -> {
"\"42\""
}
@@ -136,6 +142,12 @@ class DefaultEthereumMethods(
Chain.ETHEREUM == chain -> {
"\"0x1\""
}
Chain.TESTNET_ROPSTEN == chain -> {
"\"0x3\""
}
Chain.TESTNET_RINKEBY == chain -> {
"\"0x4\""
}
Chain.ETHEREUM_CLASSIC == chain -> {
"\"0x3d\""
}

View File

@@ -24,7 +24,7 @@ class BlockchainTypeSpec extends Specification {
expect:
BlockchainType.fromBlockchain(chain) == BlockchainType.ETHEREUM
where:
chain << [Chain.ETHEREUM, Chain.ETHEREUM_CLASSIC, Chain.TESTNET_KOVAN, Chain.TESTNET_GOERLI, Chain.TESTNET_MORDEN]
chain << [Chain.ETHEREUM, Chain.ETHEREUM_CLASSIC, Chain.TESTNET_KOVAN, Chain.TESTNET_GOERLI, Chain.TESTNET_MORDEN, Chain.TESTNET_RINKEBY, Chain.TESTNET_ROPSTEN]
}
def "Correct type for bitcoin"() {

View File

@@ -51,7 +51,7 @@ class MainConfigReaderSpec extends Specification {
port == 8082
tls != null
routes != null
routes.size() == 4
routes.size() == 5
with(routes[0]) {
id == "eth"
blockchain == Chain.ETHEREUM
@@ -68,6 +68,10 @@ class MainConfigReaderSpec extends Specification {
id == "goerli"
blockchain == Chain.TESTNET_GOERLI
}
with(routes[4]) {
id == "rinkeby"
blockchain == Chain.TESTNET_RINKEBY
}
}
act.upstreams != null
with(act.upstreams) {

View File

@@ -22,6 +22,8 @@ class DefaultEthereumMethodsSpec extends Specification {
Chain.ETHEREUM | '"0x1"'
Chain.ETHEREUM_CLASSIC | '"0x3d"'
Chain.TESTNET_KOVAN | '"0x2a"'
Chain.TESTNET_GOERLI | '"0x5"'
Chain.TESTNET_GOERLI | '"0x5"'
Chain.TESTNET_RINKEBY | '"0x4"'
Chain.TESTNET_ROPSTEN | '"0x3"'
}
}

View File

@@ -35,6 +35,8 @@ proxy:
blockchain: kovan
- id: goerli
blockchain: goerli
- id: rinkeby
blockchain: rinkeby
cluster:
defaults: