From f95965158cce03f4551cae2f0ccd7e7c9ddada0f Mon Sep 17 00:00:00 2001 From: Victor Baranov Date: Mon, 23 Mar 2020 14:31:06 +0300 Subject: [PATCH] RSK Testnet explorer --- helpers/get-explorer-links.js | 7 +++++++ package-lock.json | 2 +- package.json | 2 +- test/test.js | 9 +++++++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/helpers/get-explorer-links.js b/helpers/get-explorer-links.js index e8de5b0..ae3e145 100644 --- a/helpers/get-explorer-links.js +++ b/helpers/get-explorer-links.js @@ -9,11 +9,13 @@ const { POA_CORE_CODE, XDAI_CODE, RSK_CODE, + RSK_TESTNET_CODE, CLASSIC_CODE, } = networkIDs const blockScoutLink = (net, prefix) => `https://blockscout.com/${net}/${prefix}` const etherscanLink = (prefix) => `https://${prefix}.etherscan.io` +const rskTestnetExplorerLink = 'https://explorer.testnet.rsk.co' const explorerLink = (networkCode, net, prefix) => { switch (networkCode) { @@ -24,6 +26,8 @@ const explorerLink = (networkCode, net, prefix) => { case CLASSIC_CODE: // ETC mainnet case RSK_CODE: // RSK mainnet return blockScoutLink(net, prefix) + case RSK_TESTNET_CODE: // RSK testnet + return rskTestnetExplorerLink case ROPSTEN_CODE: // ropsten testnet case RINKEBY_CODE: // rinkeby testnet case KOVAN_CODE: // kovan testnet @@ -37,6 +41,7 @@ const explorerLink = (networkCode, net, prefix) => { const tokenLink = (networkCode, chain, prefix, tokenAddress, holderAddress) => { const blockscoutLinkStr = `${blockScoutLink(chain, prefix)}/address/${holderAddress}/tokens/${tokenAddress}/token_transfers` const etherscanLinkStr = `${etherscanLink(prefix)}/token/${tokenAddress}?a=${holderAddress}` + const rskTestnetExplorerLinkStr = `${rskTestnetExplorerLink}/address/${tokenAddress}` switch (networkCode) { case MAINNET_CODE: // main net case SOKOL_CODE: // POA Sokol testnet @@ -45,6 +50,8 @@ const tokenLink = (networkCode, chain, prefix, tokenAddress, holderAddress) => { case CLASSIC_CODE: // ETC mainnet case RSK_CODE: // RSK mainnet return blockscoutLinkStr + case RSK_TESTNET_CODE: // RSK testnet + return rskTestnetExplorerLinkStr case ROPSTEN_CODE: // ropsten testnet case RINKEBY_CODE: // rinkeby testnet case KOVAN_CODE: // kovan testnet diff --git a/package-lock.json b/package-lock.json index 4d8f719..f819fad 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "eth-net-props", - "version": "1.0.32", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 18160b6..ce1779a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eth-net-props", - "version": "1.0.32", + "version": "1.0.33", "description": "Get properties of EMV-based network", "main": "index.js", "directories": { diff --git a/test/test.js b/test/test.js index 3676eef..931662e 100644 --- a/test/test.js +++ b/test/test.js @@ -35,6 +35,9 @@ describe('eth-net-props', () => { it(`${claimPrefix} RSK`, () => { assert.equal(explorerLinks.getExplorerAccountLinkFor('0x70FDd102DDB03Dc55B1719E76DfeA784916621fd', 30), 'https://blockscout.com/rsk/mainnet/address/0x70FDd102DDB03Dc55B1719E76DfeA784916621fd') }) + it(`${claimPrefix} RSK Testnet`, () => { + assert.equal(explorerLinks.getExplorerAccountLinkFor('0x70FDd102DDB03Dc55B1719E76DfeA784916621fd', 31), 'https://explorer.testnet.rsk.co/address/0x70FDd102DDB03Dc55B1719E76DfeA784916621fd') + }) it(`${claimPrefix} Goerli Testnet`, () => { assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 5), 'https://goerli.etherscan.io/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0') }) @@ -71,6 +74,9 @@ describe('eth-net-props', () => { it(`${claimPrefix} RSK`, () => { assert.equal(explorerLinks.getExplorerTxLinkFor('0x33a7511c7838f5be0ade40d732f0a51cd28c8a641de9079836170cbdac8e7d83', 30), 'https://blockscout.com/rsk/mainnet/tx/0x33a7511c7838f5be0ade40d732f0a51cd28c8a641de9079836170cbdac8e7d83') }) + it(`${claimPrefix} RSK Testnet`, () => { + assert.equal(explorerLinks.getExplorerTxLinkFor('0x33a7511c7838f5be0ade40d732f0a51cd28c8a641de9079836170cbdac8e7d83', 31), 'https://explorer.testnet.rsk.co/tx/0x33a7511c7838f5be0ade40d732f0a51cd28c8a641de9079836170cbdac8e7d83') + }) it(`${claimPrefix} Goerli Testnet`, () => { assert.equal(explorerLinks.getExplorerTxLinkFor('0xb9599801c83e6aa20769e7dcdce0989c7380ba78cb587d3d7db11e1b30b17b54', 5), 'https://goerli.etherscan.io/tx/0xb9599801c83e6aa20769e7dcdce0989c7380ba78cb587d3d7db11e1b30b17b54') }) @@ -104,6 +110,9 @@ describe('eth-net-props', () => { it(`${claimPrefix} RSK`, () => { assert.equal(explorerLinks.getExplorerTokenLinkFor('0x16cb2604ce5951c8506fbf690d816be6d0aa00fb', '0x604056c0f88aed17ef975269aab1ae9d02840bb2', 30), 'https://blockscout.com/rsk/mainnet/address/0x604056c0f88aed17ef975269aab1ae9d02840bb2/tokens/0x16cb2604ce5951c8506fbf690d816be6d0aa00fb/token_transfers') }) + it(`${claimPrefix} RSK Testnet`, () => { + assert.equal(explorerLinks.getExplorerTokenLinkFor('0x16cb2604ce5951c8506fbf690d816be6d0aa00fb', '0x604056c0f88aed17ef975269aab1ae9d02840bb2', 31), 'https://explorer.testnet.rsk.co/address/0x16cb2604ce5951c8506fbf690d816be6d0aa00fb') + }) it(`${claimPrefix} Goerli Testnet`, () => { assert.equal(explorerLinks.getExplorerTokenLinkFor('0x7af963cf6d228e564e2a0aa0ddbf06210b38615d', '0x604056c0f88aed17ef975269aab1ae9d02840bb2', 5), 'https://goerli.etherscan.io/token/0x7af963cf6d228e564e2a0aa0ddbf06210b38615d?a=0x604056c0f88aed17ef975269aab1ae9d02840bb2') })