UNPKG

@yoroi/explorers

Version:

The Explorers package of Yoroi SDK

215 lines (204 loc) 8.59 kB
import {Chain, Explorers} from '@yoroi/types' import {explorerManager} from './explorer-manager' describe('explorerManager', () => { it('should have the correct structure', () => { expect(explorerManager).toEqual({ [Chain.Network.Mainnet]: { [Explorers.Explorer.CardanoScan]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, [Explorers.Explorer.CExplorer]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, }, [Chain.Network.Preprod]: { [Explorers.Explorer.CardanoScan]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, [Explorers.Explorer.CExplorer]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, }, [Chain.Network.Sancho]: { [Explorers.Explorer.CardanoScan]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, [Explorers.Explorer.CExplorer]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, }, [Chain.Network.Preview]: { [Explorers.Explorer.CardanoScan]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, [Explorers.Explorer.CExplorer]: { token: expect.any(Function), address: expect.any(Function), tx: expect.any(Function), pool: expect.any(Function), stake: expect.any(Function), }, }, }) }) it('should generate the correct URLs for Mainnet', () => { const mainnetExplorer = explorerManager[Chain.Network.Mainnet] expect( mainnetExplorer[Explorers.Explorer.CardanoScan].token('fingerprint'), ).toBe('https://cardanoscan.io/token/fingerprint') expect( mainnetExplorer[Explorers.Explorer.CardanoScan].address('address'), ).toBe('https://cardanoscan.io/address/address') expect(mainnetExplorer[Explorers.Explorer.CardanoScan].tx('txHash')).toBe( 'https://cardanoscan.io/transaction/txHash', ) expect(mainnetExplorer[Explorers.Explorer.CardanoScan].pool('poolId')).toBe( 'https://cardanoscan.io/pool/poolId', ) expect( mainnetExplorer[Explorers.Explorer.CardanoScan].stake('stakeAddress'), ).toBe('https://cardanoscan.io/stakeKey/stakeAddress') expect( mainnetExplorer[Explorers.Explorer.CExplorer].token('fingerprint'), ).toBe('https://cexplorer.io/asset/fingerprint') expect( mainnetExplorer[Explorers.Explorer.CExplorer].address('address'), ).toBe('https://cexplorer.io/address/address') expect(mainnetExplorer[Explorers.Explorer.CExplorer].tx('txHash')).toBe( 'https://cexplorer.io/tx/txHash', ) expect(mainnetExplorer[Explorers.Explorer.CExplorer].pool('poolId')).toBe( 'https://cexplorer.io/pool/poolId', ) expect( mainnetExplorer[Explorers.Explorer.CExplorer].stake('stakeAddress'), ).toBe('https://cexplorer.io/stake/stakeAddress') }) it('should generate the correct URLs for Preprod', () => { const preprodExplorer = explorerManager[Chain.Network.Preprod] expect( preprodExplorer[Explorers.Explorer.CardanoScan].token('fingerprint'), ).toBe('https://preprod.cardanoscan.io/token/fingerprint') expect( preprodExplorer[Explorers.Explorer.CardanoScan].address('address'), ).toBe('https://preprod.cardanoscan.io/address/address') expect(preprodExplorer[Explorers.Explorer.CardanoScan].tx('txHash')).toBe( 'https://preprod.cardanoscan.io/transaction/txHash', ) expect(preprodExplorer[Explorers.Explorer.CardanoScan].pool('poolId')).toBe( 'https://preprod.cardanoscan.io/pool/poolId', ) expect( preprodExplorer[Explorers.Explorer.CardanoScan].stake('stakeAddress'), ).toBe('https://preprod.cardanoscan.io/stakeKey/stakeAddress') expect( preprodExplorer[Explorers.Explorer.CExplorer].token('fingerprint'), ).toBe('https://preprod.cexplorer.io/asset/fingerprint') expect( preprodExplorer[Explorers.Explorer.CExplorer].address('address'), ).toBe('https://preprod.cexplorer.io/address/address') expect(preprodExplorer[Explorers.Explorer.CExplorer].tx('txHash')).toBe( 'https://preprod.cexplorer.io/tx/txHash', ) expect(preprodExplorer[Explorers.Explorer.CExplorer].pool('poolId')).toBe( 'https://preprod.cexplorer.io/pool/poolId', ) expect( preprodExplorer[Explorers.Explorer.CExplorer].stake('stakeAddress'), ).toBe('https://preprod.cexplorer.io/stake/stakeAddress') }) it('should generate the correct URLs for Sancho', () => { const sanchoExplorer = explorerManager[Chain.Network.Sancho] expect( sanchoExplorer[Explorers.Explorer.CardanoScan].token('fingerprint'), ).toBe('https://sancho.cardanoscan.io/token/fingerprint') expect( sanchoExplorer[Explorers.Explorer.CardanoScan].address('address'), ).toBe('https://sancho.cardanoscan.io/address/address') expect(sanchoExplorer[Explorers.Explorer.CardanoScan].tx('txHash')).toBe( 'https://sancho.cardanoscan.io/transaction/txHash', ) expect(sanchoExplorer[Explorers.Explorer.CardanoScan].pool('poolId')).toBe( 'https://sancho.cardanoscan.io/pool/poolId', ) expect( sanchoExplorer[Explorers.Explorer.CardanoScan].stake('stakeAddress'), ).toBe('https://sancho.cardanoscan.io/stakeKey/stakeAddress') expect( sanchoExplorer[Explorers.Explorer.CExplorer].token('fingerprint'), ).toBe('https://sancho.cexplorer.io/asset/fingerprint') expect( sanchoExplorer[Explorers.Explorer.CExplorer].address('address'), ).toBe('https://sancho.cexplorer.io/address/address') expect(sanchoExplorer[Explorers.Explorer.CExplorer].tx('txHash')).toBe( 'https://sancho.cexplorer.io/tx/txHash', ) expect(sanchoExplorer[Explorers.Explorer.CExplorer].pool('poolId')).toBe( 'https://sancho.cexplorer.io/pool/poolId', ) expect( sanchoExplorer[Explorers.Explorer.CExplorer].stake('stakeAddress'), ).toBe('https://sancho.cexplorer.io/stake/stakeAddress') }) it('should generate the correct URLs for Preview', () => { const previewExplorer = explorerManager[Chain.Network.Preview] expect( previewExplorer[Explorers.Explorer.CardanoScan].token('fingerprint'), ).toBe('https://preview.cardanoscan.io/token/fingerprint') expect( previewExplorer[Explorers.Explorer.CardanoScan].address('address'), ).toBe('https://preview.cardanoscan.io/address/address') expect(previewExplorer[Explorers.Explorer.CardanoScan].tx('txHash')).toBe( 'https://preview.cardanoscan.io/transaction/txHash', ) expect(previewExplorer[Explorers.Explorer.CardanoScan].pool('poolId')).toBe( 'https://preview.cardanoscan.io/pool/poolId', ) expect( previewExplorer[Explorers.Explorer.CardanoScan].stake('stakeAddress'), ).toBe('https://preview.cardanoscan.io/stakeKey/stakeAddress') expect( previewExplorer[Explorers.Explorer.CExplorer].token('fingerprint'), ).toBe('https://preview.cexplorer.io/asset/fingerprint') expect( previewExplorer[Explorers.Explorer.CExplorer].address('address'), ).toBe('https://preview.cexplorer.io/address/address') expect(previewExplorer[Explorers.Explorer.CExplorer].tx('txHash')).toBe( 'https://preview.cexplorer.io/tx/txHash', ) expect(previewExplorer[Explorers.Explorer.CExplorer].pool('poolId')).toBe( 'https://preview.cexplorer.io/pool/poolId', ) expect( previewExplorer[Explorers.Explorer.CExplorer].stake('stakeAddress'), ).toBe('https://preview.cexplorer.io/stake/stakeAddress') }) })