Skip to content
This repository has been archived by the owner on Nov 7, 2023. It is now read-only.

Commit

Permalink
Add Ethereum Testnets (#53)
Browse files Browse the repository at this point in the history
* Add Ropsten testnet.

* Add Koven testnet.

* Add Rinkeby testnet.

* Add Goerli

* reduce duplicate code.

* Update names for testnet gas.

* Final clean up.
  • Loading branch information
jessgusclark committed Feb 1, 2021
1 parent 8d4a45d commit fe58863
Show file tree
Hide file tree
Showing 10 changed files with 59 additions and 5 deletions.
4 changes: 4 additions & 0 deletions src/components/NetworkStatus/NetworkStatus.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,12 @@ export interface NetworkStatusInterface {
export const chainIdToName = (chainId: number) => {
switch (chainId) {
case 1: return 'Ethereum'
case 3: return 'Ropsten Testnet'
case 4: return 'Rinkeby Testnet'
case 5: return 'Görli Testnet'
case 30: return 'RSK Mainnet'
case 31: return 'RSK Testnet'
case 42: return 'Kovan Testnet'
default: return `Network Id ${chainId.toString()}`
}
}
Expand Down
6 changes: 6 additions & 0 deletions src/config/config.goerli.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"ethrDid": "0xdca7ef03e98e0dc2b855be647c39abe984fcf21b",
"rpcUrl": "https://goerli.infura.io/v3/8043bb2cf99347b1bfadfb233c5325c0",
"balanceName": "GöETH",
"coinGeckoIds": "ethereum"
}
6 changes: 6 additions & 0 deletions src/config/config.kovan.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"ethrDid": "0xdca7ef03e98e0dc2b855be647c39abe984fcf21b",
"rpcUrl": "https://kovan.infura.io/v3/8043bb2cf99347b1bfadfb233c5325c0",
"balanceName": "KETH",
"coinGeckoIds": "ethereum"
}
6 changes: 6 additions & 0 deletions src/config/config.rinkeby.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"ethrDid": "0xdca7ef03e98e0dc2b855be647c39abe984fcf21b",
"rpcUrl": "https://rinkeby.infura.io/v3/8043bb2cf99347b1bfadfb233c5325c0",
"balanceName": "ETH",
"coinGeckoIds": "ethereum"
}
6 changes: 6 additions & 0 deletions src/config/config.ropsten.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"ethrDid": "0xdca7ef03e98e0dc2b855be647c39abe984fcf21b",
"rpcUrl": "https://ropsten.infura.io/v3/8043bb2cf99347b1bfadfb233c5325c0",
"balanceName": "ETH",
"coinGeckoIds": "ethereum"
}
8 changes: 8 additions & 0 deletions src/config/getConfig.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
/* eslint-disable no-unused-vars */
import AllNetworks from './config.json'
import Ethereum from './config.ethereum.json'
import Ropsten from './config.ropsten.json'
import Mainnet from './config.mainnet.json'
import Testnet from './config.testnet.json'
import Kovan from './config.kovan.json'
import Rinkeby from './config.rinkeby.json'
import Goerli from './config.goerli.json'
import Local from './config.local.json'

export enum SETTINGS {
Expand All @@ -15,8 +19,12 @@ export enum SETTINGS {
const getSetting = (chainId: number, setting: SETTINGS) => {
switch (chainId) {
case 1: return Ethereum[setting]
case 3: return Ropsten[setting]
case 4: return Rinkeby[setting]
case 5: return Goerli[setting]
case 30: return Mainnet[setting]
case 31: return Testnet[setting]
case 42: return Kovan[setting]
default: return Local[setting]
}
}
Expand Down
6 changes: 5 additions & 1 deletion src/features/rLogin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,18 @@ export const rLogin = new RLogin({
options: {
rpc: {
1: getRPCUrl(1),
3: getRPCUrl(3),
4: getRPCUrl(4),
5: getRPCUrl(5),
30: getRPCUrl(30),
31: getRPCUrl(31),
42: getRPCUrl(42),
5777: getRPCUrl(5777)
}
}
}
},
supportedChains: [1, 30, 31, 5777]
supportedChains: [1, 3, 4, 5, 30, 31, 42, 5777]
})

export const clearRloginStorage = () => {
Expand Down
14 changes: 10 additions & 4 deletions src/features/resolverConfig.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
import { getDIDRegistryAddress, getRPCUrl } from '../config/getConfig'

const add = (name: string, chainId: number) => ({ name, registry: getDIDRegistryAddress(chainId), rpcUrl: getRPCUrl(chainId) })

export const resolverProviderConfig = {
networks: [
{ name: 'mainnet', registry: getDIDRegistryAddress(1), rpcUrl: getRPCUrl(1) },
{ name: 'rsk', registry: getDIDRegistryAddress(30), rpcUrl: getRPCUrl(30) },
{ name: 'rsk:testnet', registry: getDIDRegistryAddress(31), rpcUrl: getRPCUrl(31) },
{ name: 'development', registry: getDIDRegistryAddress(5777), rpcUrl: getRPCUrl(5777) }
add('mainnet', 1),
add('ropsten', 3),
add('rinkeby', 4),
add('goerli', 5),
add('rsk', 30),
add('rsk:testnet', 31),
add('kovan', 31),
add('development', 5777)
]
}
4 changes: 4 additions & 0 deletions src/formatters.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,12 @@ describe('helpers.js', () => {
describe('function: createDidFormat', () => {
it('creates correct format', () => {
expect(createDidFormat(address, 1)).toBe(`did:ethr:${address}`)
expect(createDidFormat(address, 3)).toBe(`did:ethr:ropsten:${address}`)
expect(createDidFormat(address, 4)).toBe(`did:ethr:rinkeby:${address}`)
expect(createDidFormat(address, 5)).toBe(`did:ethr:goerli:${address}`)
expect(createDidFormat(address, 30)).toBe(`did:ethr:rsk:${address}`)
expect(createDidFormat(address, 31)).toBe(`did:ethr:rsk:testnet:${address}`)
expect(createDidFormat(address, 42)).toBe(`did:ethr:kovan:${address}`)
expect(createDidFormat(address, 5777)).toBe(`did:ethr:development:${address}`)
})
})
Expand Down
4 changes: 4 additions & 0 deletions src/formatters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,12 @@
export const createDidFormat = (address: string, chainId: number) => {
switch (chainId) {
case 1: return `did:ethr:${address}`
case 3: return `did:ethr:ropsten:${address}`
case 4: return `did:ethr:rinkeby:${address}`
case 5: return `did:ethr:goerli:${address}`
case 30: return `did:ethr:rsk:${address}`
case 31: return `did:ethr:rsk:testnet:${address}`
case 42: return `did:ethr:kovan:${address}`
case 5777: return `did:ethr:development:${address}`
default: return address
}
Expand Down

0 comments on commit fe58863

Please sign in to comment.