Add GC Optimism, Optimism Goerli, Astar, Shiden, Shibuya

This commit is contained in:
Viktor Baranov 2022-07-29 15:04:01 +03:00
parent f0c5dc2257
commit a5d74144e5
8 changed files with 4249 additions and 490 deletions

View File

@ -1,18 +1,24 @@
const networkIDs = {
MAINNET_CODE: 1,
CLASSIC_CODE: 61,
ROPSTEN_CODE: 3,
RINKEBY_CODE: 4,
GOERLI_CODE: 5,
KOVAN_CODE: 42,
SOKOL_CODE: 77,
ETH_MAINNET_CODE: 1,
ETC_MAINNET_CODE: 61,
ETH_ROPSTEN_CODE: 3,
ETH_RINKEBY_CODE: 4,
ETH_GOERLI_CODE: 5,
ETH_SEPOLIA_CODE: 11155111,
ETH_KOVAN_CODE: 42,
POA_SOKOL_CODE: 77,
POA_CORE_CODE: 99,
XDAI_CODE: 100,
RSK_CODE: 30,
GC_MAINNET_CODE: 100,
GC_OPTIMISM_CODE: 300,
RSK_MAINNET_CODE: 30,
RSK_TESTNET_CODE: 31,
OPTIMISM_GOERLI_CODE: 420,
ASTAR_CODE: 592,
SHIDEN_CODE: 336,
SHIBUYA_CODE: 81,
CELO_CODE: 42220,
CELO_ALFAJORES_TESTNET_CODE: 44787,
CELO_BAKLAVA_TESTNET_CODE: 62320,
CELO_BAKLAVA_TESTNET_CODE: 62320
}
module.exports = {

View File

@ -1,22 +1,34 @@
const { networkIDs } = require('./enum')
const {
MAINNET_CODE,
ROPSTEN_CODE,
RINKEBY_CODE,
GOERLI_CODE,
KOVAN_CODE,
SOKOL_CODE,
ETH_MAINNET_CODE,
ETH_ROPSTEN_CODE,
ETH_RINKEBY_CODE,
ETH_GOERLI_CODE,
ETH_SEPOLIA_CODE,
ETH_KOVAN_CODE,
POA_SOKOL_CODE,
POA_CORE_CODE,
XDAI_CODE,
RSK_CODE,
GC_MAINNET_CODE,
GC_OPTIMISM_CODE,
RSK_MAINNET_CODE,
RSK_TESTNET_CODE,
CLASSIC_CODE,
ETC_MAINNET_CODE,
OPTIMISM_GOERLI_CODE,
ASTAR_CODE,
SHIDEN_CODE,
SHIBUYA_CODE,
CELO_CODE,
CELO_ALFAJORES_TESTNET_CODE,
CELO_BAKLAVA_TESTNET_CODE,
} = networkIDs
const blockScoutLink = (net, prefix) => `https://blockscout.com/${net}/${prefix}`
const blockScoutLink = (net, prefix) => {
if (prefix) {
return `https://blockscout.com/${net}/${prefix}`
} else {
return `https://blockscout.com/${net}`
}
}
const etherscanLink = (prefix) => prefix === 'mainnet' ? 'https://etherscan.io' : `https://${prefix}.etherscan.io`
const rskTestnetExplorerLink = 'https://explorer.testnet.rsk.co'
const celoExplorerLink = 'https://explorer.celo.org'
@ -25,19 +37,25 @@ const celoBaklavaTestnetExplorerLink = 'https://baklava-blockscout.celo-testnet.
const explorerLink = (networkCode, net, prefix) => {
switch (networkCode) {
case SOKOL_CODE: // POA Sokol testnet
case POA_SOKOL_CODE: // POA Sokol testnet
case POA_CORE_CODE: // POA Core
case XDAI_CODE: // xDai chain
case CLASSIC_CODE: // ETC mainnet
case RSK_CODE: // RSK mainnet
case GC_MAINNET_CODE: // Gnosis chain
case GC_OPTIMISM_CODE: // GC Optimism
case ETC_MAINNET_CODE: // ETC mainnet
case RSK_MAINNET_CODE: // RSK mainnet
case OPTIMISM_GOERLI_CODE: // Optimissm Goerli testnet
case ASTAR_CODE: // Astar
case SHIDEN_CODE: // Shiden
case SHIBUYA_CODE: // Shibuya
return blockScoutLink(net, prefix)
case RSK_TESTNET_CODE: // RSK testnet
return rskTestnetExplorerLink
case MAINNET_CODE: // main net
case ROPSTEN_CODE: // ropsten testnet
case RINKEBY_CODE: // rinkeby testnet
case KOVAN_CODE: // kovan testnet
case GOERLI_CODE: // Goerli testnet
case ETH_MAINNET_CODE: // main net
case ETH_ROPSTEN_CODE: // ropsten testnet
case ETH_RINKEBY_CODE: // rinkeby testnet
case ETH_KOVAN_CODE: // kovan testnet
case ETH_GOERLI_CODE: // Goerli testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
return etherscanLink(prefix)
case CELO_CODE: // CELO
return celoExplorerLink
@ -59,19 +77,25 @@ const tokenLink = (networkCode, chain, prefix, tokenAddress, holderAddress) => {
const celoBaklavaTestnetExplorerLinkStr = `${celoBaklavaTestnetExplorerLink}/address/${holderAddress}/tokens/${tokenAddress}/token_transfers`
switch (networkCode) {
case SOKOL_CODE: // POA Sokol testnet
case POA_SOKOL_CODE: // POA Sokol testnet
case POA_CORE_CODE: // POA Core
case XDAI_CODE: // xDai chain
case CLASSIC_CODE: // ETC mainnet
case RSK_CODE: // RSK mainnet
case GC_MAINNET_CODE: // Gnosis chain
case GC_OPTIMISM_CODE: // GC Optimism
case ETC_MAINNET_CODE: // ETC mainnet
case RSK_MAINNET_CODE: // RSK mainnet
case OPTIMISM_GOERLI_CODE: // Optimism Goerli testnet
case ASTAR_CODE: // Astar
case SHIDEN_CODE: // Shiden
case SHIBUYA_CODE: // Shibuya
return blockscoutLinkStr
case RSK_TESTNET_CODE: // RSK testnet
return rskTestnetExplorerLinkStr
case MAINNET_CODE: // main net
case ROPSTEN_CODE: // ropsten testnet
case RINKEBY_CODE: // rinkeby testnet
case KOVAN_CODE: // kovan testnet
case GOERLI_CODE: // Goerli testnet
case ETH_MAINNET_CODE: // main net
case ETH_ROPSTEN_CODE: // ropsten testnet
case ETH_RINKEBY_CODE: // rinkeby testnet
case ETH_KOVAN_CODE: // kovan testnet
case ETH_GOERLI_CODE: // Goerli testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
return etherscanLinkStr
case CELO_CODE: // CELO
return celoExplorerLinkStr
@ -106,24 +130,40 @@ function getExplorerChain (networkCode) {
const net = parseInt(networkCode)
let chain
switch (net) {
case MAINNET_CODE: // main net
case ROPSTEN_CODE: // ropsten testnet
case RINKEBY_CODE: // rinkeby testnet
case KOVAN_CODE: // kovan testnet
case GOERLI_CODE: // Goerli testnet
case ETH_MAINNET_CODE: // main net
case ETH_ROPSTEN_CODE: // ropsten testnet
case ETH_RINKEBY_CODE: // rinkeby testnet
case ETH_KOVAN_CODE: // kovan testnet
case ETH_GOERLI_CODE: // Goerli testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
chain = 'eth'
break
case SOKOL_CODE: // POA Sokol testnet
case POA_SOKOL_CODE: // POA Sokol testnet
case POA_CORE_CODE: // POA Core
case XDAI_CODE: // xDai chain
chain = 'poa'
break
case CLASSIC_CODE: // ETC mainnet
case GC_MAINNET_CODE: // Gnosis chain
case GC_OPTIMISM_CODE: // Optimism on Gnosis chain
chain = 'xdai'
break
case ETC_MAINNET_CODE: // ETC mainnet
chain = 'etc'
break
case RSK_CODE: // RSK mainnet
case RSK_MAINNET_CODE: // RSK mainnet
chain = 'rsk'
break
case OPTIMISM_GOERLI_CODE: // Optimism Goerli testnet
chain = 'optimism'
break
case ASTAR_CODE: // Astar
chain = 'astar'
break
case SHIDEN_CODE: // Shiden
chain = 'shiden'
break
case SHIBUYA_CODE: // Shibuya
chain = 'shibuya'
break
case CELO_CODE: // CELO
chain = 'celo'
break
@ -143,30 +183,35 @@ function getExplorerPrefix (networkCode) {
const net = parseInt(networkCode)
let prefix
switch (net) {
case MAINNET_CODE: // main net
case CLASSIC_CODE: // ETC mainnet
case RSK_CODE: // RSK mainnet
case ETH_MAINNET_CODE: // main net
case ETC_MAINNET_CODE: // ETC mainnet
case RSK_MAINNET_CODE: // RSK mainnet
case GC_MAINNET_CODE: // Gnosis chain
prefix = 'mainnet'
break
case ROPSTEN_CODE: // ropsten testnet
case ETH_ROPSTEN_CODE: // ropsten testnet
prefix = 'ropsten'
break
case RINKEBY_CODE: // rinkeby testnet
case ETH_RINKEBY_CODE: // rinkeby testnet
prefix = 'rinkeby'
break
case KOVAN_CODE: // kovan testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
prefix = 'sepolia'
break
case ETH_KOVAN_CODE: // kovan testnet
prefix = 'kovan'
break
case SOKOL_CODE: // POA Sokol testnet
case POA_SOKOL_CODE: // POA Sokol testnet
prefix = 'sokol'
break
case POA_CORE_CODE: // POA Core
prefix = 'core'
break
case XDAI_CODE: // xDai chain
prefix = 'xdai'
case GC_OPTIMISM_CODE: // GC Optimism
prefix = 'optimism'
break
case GOERLI_CODE: // Goerli testnet
case ETH_GOERLI_CODE: // Goerli testnet
case OPTIMISM_GOERLI_CODE: // Optimism Goerli testnet
prefix = 'goerli'
break
default:

View File

@ -1,10 +1,11 @@
const { networkIDs } = require('./enum')
const {
ROPSTEN_CODE,
RINKEBY_CODE,
GOERLI_CODE,
KOVAN_CODE,
SOKOL_CODE,
ETH_ROPSTEN_CODE,
ETH_RINKEBY_CODE,
ETH_GOERLI_CODE,
ETH_SEPOLIA_CODE,
ETH_KOVAN_CODE,
POA_SOKOL_CODE,
RSK_TESTNET_CODE,
CELO_ALFAJORES_TESTNET_CODE,
} = networkIDs
@ -12,15 +13,17 @@ const {
function getFaucetLinks(network) {
const netID = parseInt(network)
switch (netID) {
case ROPSTEN_CODE:
case ETH_ROPSTEN_CODE:
return ['https://faucet.metamask.io/']
case RINKEBY_CODE:
case ETH_RINKEBY_CODE:
return ['https://faucet.rinkeby.io/']
case GOERLI_CODE:
case ETH_GOERLI_CODE:
return ['https://goerli-faucet.slock.it/']
case KOVAN_CODE:
case ETH_SEPOLIA_CODE:
return ['https://faucet.sepolia.dev/']
case ETH_KOVAN_CODE:
return ['https://faucet.kovan.network/', 'https://gitter.im/kovan-testnet/faucet/']
case SOKOL_CODE:
case POA_SOKOL_CODE:
return ['https://faucet.poa.network/']
case RSK_TESTNET_CODE:
return ['https://faucet.rsk.co/']

View File

@ -1,16 +1,22 @@
const { networkIDs } = require('./enum')
const {
MAINNET_CODE,
ROPSTEN_CODE,
RINKEBY_CODE,
GOERLI_CODE,
KOVAN_CODE,
SOKOL_CODE,
ETH_MAINNET_CODE,
ETH_ROPSTEN_CODE,
ETH_RINKEBY_CODE,
ETH_GOERLI_CODE,
ETH_SEPOLIA_CODE,
ETH_KOVAN_CODE,
POA_SOKOL_CODE,
POA_CORE_CODE,
XDAI_CODE,
RSK_CODE,
GC_MAINNET_CODE,
GC_OPTIMISM_CODE,
RSK_MAINNET_CODE,
RSK_TESTNET_CODE,
CLASSIC_CODE,
ETC_MAINNET_CODE,
OPTIMISM_GOERLI_CODE,
ASTAR_CODE,
SHIDEN_CODE,
SHIBUYA_CODE,
CELO_CODE,
CELO_ALFAJORES_TESTNET_CODE,
CELO_BAKLAVA_TESTNET_CODE,
@ -19,28 +25,40 @@ const {
function getNetworkDisplayName(network) {
const netID = parseInt(network)
switch (netID) {
case MAINNET_CODE:
case ETH_MAINNET_CODE:
return 'Ethereum'
case ROPSTEN_CODE:
case ETH_ROPSTEN_CODE:
return 'Ropsten Testnet'
case RINKEBY_CODE:
case ETH_RINKEBY_CODE:
return 'Rinkeby Testnet'
case GOERLI_CODE:
case ETH_GOERLI_CODE:
return 'Görli Testnet'
case KOVAN_CODE:
case ETH_SEPOLIA_CODE:
return 'Sepolia Testnet'
case ETH_KOVAN_CODE:
return 'Kovan Testnet'
case SOKOL_CODE:
case POA_SOKOL_CODE:
return 'Sokol Testnet'
case POA_CORE_CODE:
return 'POA'
case XDAI_CODE:
return 'xDai'
case RSK_CODE:
case GC_MAINNET_CODE:
return 'Gnosis Chain'
case GC_OPTIMISM_CODE:
return 'Optimism on Gnosis Chain'
case RSK_MAINNET_CODE:
return 'RSK'
case RSK_TESTNET_CODE:
return 'RSK Testnet'
case CLASSIC_CODE:
case ETC_MAINNET_CODE:
return 'Ethereum Classic'
case OPTIMISM_GOERLI_CODE:
return 'Optimism Goerli Testnet'
case ASTAR_CODE:
return 'Astar'
case SHIDEN_CODE:
return 'Shiden'
case SHIBUYA_CODE:
return 'Shibya'
case CELO_CODE:
return 'CELO'
case CELO_ALFAJORES_TESTNET_CODE:
@ -55,18 +73,27 @@ function getNetworkDisplayName(network) {
function getNetworkCoinName(network) {
const netID = parseInt(network)
switch (netID) {
case SOKOL_CODE:
case POA_SOKOL_CODE:
case POA_CORE_CODE:
return 'POA'
case RSK_CODE:
case RSK_MAINNET_CODE:
case RSK_TESTNET_CODE:
return 'RBTC'
case XDAI_CODE:
case GC_MAINNET_CODE:
case GC_OPTIMISM_CODE:
return 'xDAI'
case GOERLI_CODE:
case ETH_GOERLI_CODE:
return 'GöETH'
case CLASSIC_CODE:
case ETH_SEPOLIA_CODE:
return 'SEP'
case ETC_MAINNET_CODE:
return 'ETC'
case ASTAR_CODE:
return 'ASTR'
case SHIDEN_CODE:
return 'SDN'
case SHIBUYA_CODE:
return 'SBY'
case CELO_CODE:
case CELO_ALFAJORES_TESTNET_CODE:
case CELO_BAKLAVA_TESTNET_CODE:
@ -79,11 +106,12 @@ function getNetworkCoinName(network) {
function isTestnet(network) {
const netID = parseInt(network)
switch (netID) {
case MAINNET_CODE:
case ETH_MAINNET_CODE:
case POA_CORE_CODE:
case XDAI_CODE:
case RSK_CODE:
case CLASSIC_CODE:
case GC_MAINNET_CODE:
case GC_OPTIMISM_CODE:
case RSK_MAINNET_CODE:
case ETC_MAINNET_CODE:
case CELO_CODE:
return false
default:

View File

@ -1,16 +1,22 @@
const { networkIDs } = require('./enum')
const {
MAINNET_CODE,
ROPSTEN_CODE,
RINKEBY_CODE,
GOERLI_CODE,
KOVAN_CODE,
SOKOL_CODE,
ETH_MAINNET_CODE,
ETH_ROPSTEN_CODE,
ETH_RINKEBY_CODE,
ETH_GOERLI_CODE,
ETH_SEPOLIA_CODE,
ETH_KOVAN_CODE,
POA_SOKOL_CODE,
POA_CORE_CODE,
XDAI_CODE,
RSK_CODE,
GC_MAINNET_CODE,
GC_OPTIMISM_CODE,
RSK_MAINNET_CODE,
RSK_TESTNET_CODE,
CLASSIC_CODE,
ETC_MAINNET_CODE,
OPTIMISM_GOERLI_CODE,
ASTAR_CODE,
SHIDEN_CODE,
SHIBUYA_CODE,
CELO_CODE,
CELO_ALFAJORES_TESTNET_CODE,
CELO_BAKLAVA_TESTNET_CODE,
@ -19,28 +25,40 @@ const {
function getRPCEndpoints(network) {
const netID = parseInt(network)
switch (netID) {
case MAINNET_CODE:
case ETH_MAINNET_CODE:
return ['https://mainnet.infura.io/']
case ROPSTEN_CODE:
case ETH_ROPSTEN_CODE:
return ['https://ropsten.infura.io/']
case RINKEBY_CODE:
case ETH_RINKEBY_CODE:
return ['https://rinkeby.infura.io/']
case GOERLI_CODE:
case ETH_GOERLI_CODE:
return ['https://rpc.slock.it/goerli/']
case KOVAN_CODE:
case ETH_SEPOLIA_CODE:
return ['https://rpc.sepolia.org']
case ETH_KOVAN_CODE:
return ['https://kovan.poa.network/']
case SOKOL_CODE:
case POA_SOKOL_CODE:
return ['https://sokol.poa.network/']
case POA_CORE_CODE:
return ['https://core.poanetwork.dev/']
case XDAI_CODE:
return ['https://xdai.poanetwork.dev/']
case RSK_CODE:
case GC_MAINNET_CODE:
return ['https://rpc.gnosischain.com']
case GC_OPTIMISM_CODE:
return ['https://optimism.gnosischain.com']
case RSK_MAINNET_CODE:
return ['https://public-node.rsk.co']
case RSK_TESTNET_CODE:
return ['https://public-node.testnet.rsk.co']
case CLASSIC_CODE:
case ETC_MAINNET_CODE:
return ['https://www.ethercluster.com/etc']
case OPTIMISM_GOERLI_CODE:
return ['https://goerli.optimism.io/']
case ASTAR_CODE:
return ['https://rpc.astar.network:8545', 'https://astar.public.blastapi.io']
case SHIDEN_CODE:
return ['https://rpc.shiden.astar.network:8545', 'https://shiden.public.blastapi.io']
case SHIBUYA_CODE:
return ['https://shibuya.public.blastapi.io']
case CELO_CODE:
return ['https://forno.celo.org']
case CELO_ALFAJORES_TESTNET_CODE:

4382
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{
"name": "eth-net-props",
"version": "1.0.40",
"version": "1.0.41",
"description": "Get properties of EMV-based network",
"main": "index.js",
"directories": {
@ -12,7 +12,7 @@
"devDependencies": {
"coveralls": "^3.0.9",
"eslint": "^6.7.0",
"mocha": "^8.2.0",
"mocha": "^10.0.0",
"mocha-lcov-reporter": "^1.3.0",
"nyc": "^15.0.0"
},

View File

@ -18,7 +18,7 @@ describe('eth-net-props', () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 99), 'https://blockscout.com/poa/core/address/0x15c40c6de9f2299680a4522d8635c9b394eded09')
})
it(`${claimPrefix} xDai`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 100), 'https://blockscout.com/poa/xdai/address/0x15c40c6de9f2299680a4522d8635c9b394eded09')
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 100), 'https://blockscout.com/xdai/mainnet/address/0x15c40c6de9f2299680a4522d8635c9b394eded09')
})
it(`${claimPrefix} Ethereum`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x70FDd102DDB03Dc55B1719E76DfeA784916621fd', 1), 'https://etherscan.io/address/0x70FDd102DDB03Dc55B1719E76DfeA784916621fd')
@ -47,6 +47,15 @@ describe('eth-net-props', () => {
it(`${claimPrefix} Ethereum Classic`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', '61'), 'https://blockscout.com/etc/mainnet/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} Optimism Goerli`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 300), 'https://blockscout.com/xdai/optimism/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} Optimism Goerli`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 420), 'https://blockscout.com/optimism/goerli/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} Astar`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 592), 'https://blockscout.com/astar/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} CELO`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xff2c76ec831bc5c09c491d31abac7821a5ab6c26', 42220), 'https://explorer.celo.org/address/0xff2c76ec831bc5c09c491d31abac7821a5ab6c26')
})
@ -66,7 +75,7 @@ describe('eth-net-props', () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 99), 'https://blockscout.com/poa/core/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e')
})
it(`${claimPrefix} xDai`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 100), 'https://blockscout.com/poa/xdai/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e')
assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 100), 'https://blockscout.com/xdai/mainnet/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e')
})
it(`${claimPrefix} Ethereum`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0x892c825d1ec25b0a1a27aa5dff5b54fc4488a45029d0087fc40d3d733ded7305', 1), 'https://etherscan.io/tx/0x892c825d1ec25b0a1a27aa5dff5b54fc4488a45029d0087fc40d3d733ded7305')
@ -101,6 +110,9 @@ describe('eth-net-props', () => {
it(`${claimPrefix} CELO Bklava testnnet`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xf339b8687970623b532aca1cf76d02ffa0a82792a2de1fa0c1c89866efff2950', 62320), 'https://baklava-blockscout.celo-testnet.org/tx/0xf339b8687970623b532aca1cf76d02ffa0a82792a2de1fa0c1c89866efff2950')
})
it(`${claimPrefix} Shiden`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xe02a0bee75eb5754fb561d7965ae387213660ff1e344b6d6371b4724acf58ba0', 336), 'https://blockscout.com/shiden/tx/0xe02a0bee75eb5754fb561d7965ae387213660ff1e344b6d6371b4724acf58ba0')
})
})
describe ('getExplorerTokenLinkFor()', () => {
@ -111,7 +123,7 @@ describe('eth-net-props', () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xAb2f2Dd3120dE530d38936EE09A74a6d17e3Da44', '0x4C4b0F3fb93A33d58b07117ae079775496CF9c17', 99), 'https://blockscout.com/poa/core/address/0x4C4b0F3fb93A33d58b07117ae079775496CF9c17/tokens/0xAb2f2Dd3120dE530d38936EE09A74a6d17e3Da44/token-transfers')
})
it(`${claimPrefix} xDai`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6', '0xEca0f4Bd861713aF4f248CED18C15AF76440b00a', 100), 'https://blockscout.com/poa/xdai/address/0xEca0f4Bd861713aF4f248CED18C15AF76440b00a/tokens/0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6/token-transfers')
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6', '0xEca0f4Bd861713aF4f248CED18C15AF76440b00a', 100), 'https://blockscout.com/xdai/mainnet/address/0xEca0f4Bd861713aF4f248CED18C15AF76440b00a/tokens/0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6/token-transfers')
})
it(`${claimPrefix} Ethereum`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0x5a386eb0fcbfee3f0d759e263053c09162ff102d', '0x2C343e73A594DfD1808b930372A610071bAa9d0E', 1), 'https://etherscan.io/token/0x5a386eb0fcbfee3f0d759e263053c09162ff102d?a=0x2C343e73A594DfD1808b930372A610071bAa9d0E')
@ -137,6 +149,9 @@ describe('eth-net-props', () => {
it(`${claimPrefix} Ethereum Classic`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0x1ac1c8b874c7b889113a036ba443b082554be5d0', '0xdb23145b64D0E1e15dedf47abd77cCaf3F2327d7', 61), 'https://blockscout.com/etc/mainnet/address/0xdb23145b64D0E1e15dedf47abd77cCaf3F2327d7/tokens/0x1ac1c8b874c7b889113a036ba443b082554be5d0/token-transfers')
})
it(`${claimPrefix} Shibuya`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xa4C17AD6bEC86e1233499A9B174D1E2D466c7198', '0xce51D1fa776C2941d4155E8FfCc585c5a1213d50', 81), 'https://blockscout.com/shibuya/address/0xce51D1fa776C2941d4155E8FfCc585c5a1213d50/tokens/0xa4C17AD6bEC86e1233499A9B174D1E2D466c7198/token-transfers')
})
it(`${claimPrefix} Celo`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0x765de816845861e75a25fca122bb6898b8b1282a', '0x63b4b616c5345e3DcC9e21dB69297e2129447f4e', 42220), 'https://explorer.celo.org/address/0x63b4b616c5345e3DcC9e21dB69297e2129447f4e/tokens/0x765de816845861e75a25fca122bb6898b8b1282a/token_transfers')
})
@ -258,7 +273,7 @@ describe('eth-net-props', () => {
const xDaiRPCEndpoints = RPCEndpoints.getRPCEndpoints(100)
assert.equal(xDaiRPCEndpoints.length, 1)
if (xDaiRPCEndpoints.length > 0) {
assert.equal(xDaiRPCEndpoints[0], 'https://xdai.poanetwork.dev/')
assert.equal(xDaiRPCEndpoints[0], 'https://rpc.gnosischain.com')
}
})
it(`${claimPrefix} RSK`, () => {
@ -321,7 +336,7 @@ describe('eth-net-props', () => {
assert.equal(netProps.getNetworkDisplayName(99), 'POA')
})
it(`${claimPrefix} xDAI`, () => {
assert.equal(netProps.getNetworkDisplayName(100), 'xDai')
assert.equal(netProps.getNetworkDisplayName(100), 'Gnosis Chain')
})
it(`${claimPrefix} Ethereum`, () => {
assert.equal(netProps.getNetworkDisplayName(1), 'Ethereum')