Skip to content

ALL-9108 Refactor and fix some existing tests

Sign in for the full log view
GitHub Actions / TEST REPORT failed Oct 11, 2024 in 0s

354 passed, 51 failed and 583 skipped

Tests failed

❌ reports/jest-junit.xml

988 tests were completed in 84s with 354 passed, 51 failed and 583 skipped.

Test suite Passed Failed Skipped Time
src/e2e/extensions/tatum.extensions.spec.ts 4✅ 424ms
src/e2e/ipfs.spec.ts 1⚪ 112ms
src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts 8✅ 19❌ 10s
src/e2e/rpc/evm/eth/tatum.rpc.ethereum.spec.ts 6✅ 1s
src/e2e/rpc/evm/evm.rpc.spec.ts 160✅ 1❌ 66s
src/e2e/rpc/evm/tatum.rpc.klay.spec.ts 10✅ 2s
src/e2e/rpc/evm/tatum.rpc.zksync.spec.ts 8✅ 821ms
src/e2e/rpc/other/tatum.rpc.algorand.algod.spec.ts 10✅ 2⚪ 3s
src/e2e/rpc/other/tatum.rpc.algorand.indexer.spec.ts 14✅ 2⚪ 4s
src/e2e/rpc/other/tatum.rpc.bnb.spec.ts 8⚪ 151ms
src/e2e/rpc/other/tatum.rpc.cardano.rosetta.spec.ts 2✅ 1⚪ 588ms
src/e2e/rpc/other/tatum.rpc.casper.spec.ts 4⚪ 140ms
src/e2e/rpc/other/tatum.rpc.cosmos.rosetta.spec.ts 6⚪ 141ms
src/e2e/rpc/other/tatum.rpc.electrs.spec.ts 4⚪ 128ms
src/e2e/rpc/other/tatum.rpc.eos.spec.ts 9⚪ 173ms
src/e2e/rpc/other/tatum.rpc.iota.spec.ts 6✅ 4s
src/e2e/rpc/other/tatum.rpc.kadena.spec.ts 12⚪ 155ms
src/e2e/rpc/other/tatum.rpc.rostrum.spec.ts 9✅ 3s
src/e2e/rpc/other/tatum.rpc.solana.spec.ts 30❌ 6⚪ 16s
src/e2e/rpc/other/tatum.rpc.stellar.spec.ts 18⚪ 205ms
src/e2e/rpc/other/tatum.rpc.tezos.spec.ts 9✅ 3⚪ 5s
src/e2e/rpc/other/tatum.rpc.ton.spec.ts 3✅ 1❌ 33s
src/e2e/rpc/other/tatum.rpc.tron.spec.ts 12⚪ 198ms
src/e2e/rpc/other/tatum.rpc.xrp.spec.ts 13⚪ 184ms
src/e2e/rpc/utxo/tatum.rpc.bch.spec.ts 2✅ 398ms
src/e2e/rpc/utxo/tatum.rpc.doge.spec.ts 2✅ 3s
src/e2e/rpc/utxo/utxo.rpc.spec.ts 54✅ 11s
src/e2e/tatum.address.spec.ts 29⚪ 10s
src/e2e/tatum.fee.spec.ts 1✅ 1⚪ 304ms
src/e2e/tatum.logger.spec.ts 1✅ 187ms
src/e2e/tatum.nft.spec.ts 15⚪ 369ms
src/e2e/tatum.notification.spec.ts 427⚪ 10s
src/e2e/tatum.rates.spec.ts 2✅ 733ms
src/e2e/tatum.spec.ts 3✅ 940ms
src/e2e/tatum.token.spec.ts 10⚪ 291ms
src/service/rpc/evm/EvmUtils.spec.ts 27✅ 140ms
src/util/network.utils.spec.ts 13✅ 124ms

✅ src/e2e/extensions/tatum.extensions.spec.ts

Tatum Extension Ecosystem › General Extension
  ✅ should work after being registered
  ✅ should fail if network not supported
Tatum Extension Ecosystem › Wallet Extension
  ✅ should work after being registered
Tatum Extension Ecosystem › Configurable Wallet Extension
  ✅ should work after being registered without config if optional

✅ src/e2e/ipfs.spec.ts

IPFS
  ⚪ should upload file to IPFS

❌ src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts

Beacon › v1 › ethereum-holesky
  ❌ should get node version
	Error: thrown: ""
  ✅ should get genesis
  ✅ should get state root
  ✅ should get block headers
  ✅ should get block root
  ✅ should get state committees
  ✅ should get state finality checkpoints
  ✅ should get state fork
  ✅ should get state sync committees
Beacon › v1 › ethereum-sepolia
  ❌ should get node version
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6c266dd14ec973d633\"}"
  ❌ should get genesis
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6cdcac4d964a31ae0d\"}"
  ❌ should get state root
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6c7f570796bb681e57\"}"
  ❌ should get block headers
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6c7f570796bb681e58\"}"
  ❌ should get block root
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6dc343263f55d253de\"}"
  ❌ should get state committees
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6d1c847d7cf393f5f3\"}"
  ❌ should get state finality checkpoints
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6d40dc5a3c8c6f8a52\"}"
  ❌ should get state fork
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6d1bad082e32853742\"}"
  ❌ should get state sync committees
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"tatum.invalid.chainMethod.combination\",\"message\":\"Welcome to Tatum 🚀. The combination of chain and HTTP method is not allowed. For more information how to use blockchain methods, please visit https://co.tatum.io/docs.\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6dce45c8a6bf29adf3\"}"
Beacon › v1 › ethereum-mainnet
  ❌ should get node version
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6eb47e00608d6c3e5c\"}"
  ❌ should get genesis
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6ec343263f55d253e0\"}"
  ❌ should get state root
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6e9de63fc828929b75\"}"
  ❌ should get block headers
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6fe26a56d1a2bc3745\"}"
  ❌ should get block root
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6fdc85b1b08f6d4d3d\"}"
  ❌ should get state committees
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6f0c42007166670420\"}"
  ❌ should get state finality checkpoints
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a70c343263f55d253e2\"}"
  ❌ should get state fork
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a701bad082e32853743\"}"
  ❌ should get state sync committees
	Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a7024135bd5c7fcda14\"}"

✅ src/e2e/rpc/evm/eth/tatum.rpc.ethereum.spec.ts

Ethereum
  ✅ should get token total supply
  ✅ should get token cap
  ✅ should return true if contract is a multitoken
  ✅ custom rpc provider
  ✅ debug storage range at
  ✅ get logs

❌ src/e2e/rpc/evm/evm.rpc.spec.ts

RPC EVM › celo-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › celo-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › arb-nova-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › arb-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › eon-mainnet
  ❌ eth_blockNumber
	TypeError: Body is unusable
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › chiliz-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › bsc-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › bsc-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › flare-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › flare-songbird
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › flare-coston2
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › ethereum-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › ethereum-sepolia
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › ethereum-holesky
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › ethereum-classic-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › polygon-amoy
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › haqq-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › haqq-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › tron-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › klaytn-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › klaytn-baobab
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › avalanche-c-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › xinfin-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › cro-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › base-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › zksync-mainnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber
RPC EVM › zksync-testnet
  ✅ eth_blockNumber
  ✅ eth_chainId
  ✅ eth_estimateGas
  ✅ eth_gasPrice
  ✅ web3_clientVersion
  ✅ eth_getBlockByNumber

✅ src/e2e/rpc/evm/tatum.rpc.klay.spec.ts

RPC Klaytn › klaytn-mainnet › klay prefix
  ✅ klay_blockNumber
  ✅ klay_chainId
  ✅ klay_gasPrice
  ✅ klay_getBlockByNumber
  ✅ web3_clientVersion
RPC Klaytn › klaytn-baobab › klay prefix
  ✅ klay_blockNumber
  ✅ klay_chainId
  ✅ klay_gasPrice
  ✅ klay_getBlockByNumber
  ✅ web3_clientVersion

✅ src/e2e/rpc/evm/tatum.rpc.zksync.spec.ts

RPC ZkSync › zksync-mainnet
  ✅ zks_getL1GasPrice
  ✅ zks_getBlockDetails
  ✅ zks_getBaseTokenL1Address
  ✅ zks_getFeeParams
RPC ZkSync › zksync-testnet
  ✅ zks_getL1GasPrice
  ✅ zks_getBlockDetails
  ✅ zks_getBaseTokenL1Address
  ✅ zks_getFeeParams

✅ src/e2e/rpc/other/tatum.rpc.algorand.algod.spec.ts

Algorand Algod › Mainnet
  ✅ should correctly get ledger supply
  ✅ should correctly get block hash
  ✅ should correctly get genesis
  ✅ should correctly check if node is healthy
  ✅ should correctly check if node is ready
  ⚪ should correctly get tx params
Algorand Algod › Testnet
  ✅ should correctly get ledger supply
  ✅ should correctly get block hash
  ✅ should correctly get genesis
  ✅ should correctly check if node is healthy
  ✅ should correctly check if node is ready
  ⚪ should correctly get tx params

✅ src/e2e/rpc/other/tatum.rpc.algorand.indexer.spec.ts

Algorand Indexer › Mainnet
  ✅ should correctly get health status
  ✅ should correctly get accounts
  ✅ should correctly get account by address
  ✅ should correctly get assets
  ✅ should correctly get asset by id
  ⚪ should correctly get asset balances
  ✅ should correctly get asset transactions
  ✅ should correctly get block
Algorand Indexer › Testnet
  ✅ should correctly get health status
  ✅ should correctly get accounts
  ✅ should correctly get account by address
  ✅ should correctly get assets
  ✅ should correctly get asset by id
  ⚪ should correctly get asset balances
  ✅ should correctly get asset transactions
  ✅ should correctly get block

✅ src/e2e/rpc/other/tatum.rpc.bnb.spec.ts

Bnb › mainnet
  ⚪ block
  ⚪ abciInfo
  ⚪ blockchain
  ⚪ health
  ⚪ genesis
  ⚪ validators
  ⚪ unconfirmedTxs
  ⚪ raw rpc call

✅ src/e2e/rpc/other/tatum.rpc.cardano.rosetta.spec.ts

Cardano Rosetta › Mainnet
  ✅ should get network status
  ⚪ should get network list
  ✅ should get block

✅ src/e2e/rpc/other/tatum.rpc.casper.spec.ts

Casper (%s)
  ⚪ info_get_status
  ⚪ info_get_chainspec
  ⚪ chain_get_block - heigh
  ⚪ chain_get_block - hash

✅ src/e2e/rpc/other/tatum.rpc.cosmos.rosetta.spec.ts

Cosmos Rosetta › Mainnet
  ⚪ should get network status
  ⚪ should get network list
  ⚪ should get block
  ⚪ should get all accounts
  ⚪ should get all params
  ⚪ should get all community pool

✅ src/e2e/rpc/other/tatum.rpc.electrs.spec.ts

Electrs (true)
  ⚪ blockchain.headers.subscribe
  ⚪ server.banner
Electrs (false)
  ⚪ blockchain.headers.subscribe
  ⚪ server.banner

✅ src/e2e/rpc/other/tatum.rpc.eos.spec.ts

eos › mainnet
  ⚪ getInfo
  ⚪ getAccount
  ⚪ getCurrencyStats
  ⚪ getCurrencyBalance
  ⚪ getTableRows
eos › testnet
  ⚪ getNowBlock
  ⚪ getCurrencyStats
  ⚪ getCurrencyBalance
  ⚪ getTableRows

✅ src/e2e/rpc/other/tatum.rpc.iota.spec.ts

Iota › iota-testnet
  ✅ getNodeInfo
  ✅ getTips
  ✅ getReceipts
Iota › iota-mainnet
  ✅ getNodeInfo
  ✅ getTips
  ✅ getReceipts

✅ src/e2e/rpc/other/tatum.rpc.kadena.spec.ts

Kadena › Mainnet
  ⚪ getInfo
  ⚪ getBlock
  ⚪ getBlockHeaderByHash
  ⚪ getBlockHeaders
  ⚪ getBlockHeaderBranches
  ⚪ getBlockHashes
Kadena › Testnet
  ⚪ getInfo
  ⚪ getBlock
  ⚪ getBlockHeaderByHash
  ⚪ getBlockHeaders
  ⚪ getBlockHeaderBranches
  ⚪ getBlockHashes

✅ src/e2e/rpc/other/tatum.rpc.rostrum.spec.ts

Rostrum (false)
  ✅ server.version
  ✅ blockchain.headers.tip
  ✅ blockchain.headers.subscribe
  ✅ blockchain.address.get_balance
  ✅ blockchain.address.get_history
  ✅ blockchain.block.get
  ✅ blockchain.block.header
  ✅ blockchain.transaction.get
  ✅ server.banner

❌ src/e2e/rpc/other/tatum.rpc.solana.spec.ts

Solana › mainnet › getSignaturesForAddress
  ❌ should return getSignatureForAddress
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getAccountInfo
  ❌ should return account info
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getBalance
  ❌ should return the balance of a public key
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
  ⚪ should return error if an invalid public key is provided
Solana › mainnet › getBlockHeight
  ❌ should return the current block height
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getBlockProduction
  ❌ should return block production information
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getBlockCommitment
  ❌ should return block commitment information
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getBlocks
  ❌ should return an array of block numbers between two slots
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
  ⚪ should return an array of block numbers between two slots, passing only endSlot
  ❌ should return an array of confirmed block numbers between two slots
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getBlockTime
  ❌ should return block time
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getClusterNodes
  ❌ should return cluster nodes info
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getEpochInfo
  ❌ should return epoch info
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getEpochSchedule
  ❌ should return epoch schedule
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getFirstAvailableBlock
  ❌ should return first available block
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getGenesisHash
  ❌ should return genesis hash
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getHealth
  ❌ should return health status
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getHighestSnapshotSlot
  ❌ should return highest snapshot slot
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getIdentity
  ❌ should return identity
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getInflationGovernor
  ❌ should return inflation governor info
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getInflationRate
  ❌ should return inflation rate
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getInflationReward
  ⚪ should return inflation reward
Solana › mainnet › getLargestAccounts
  ⚪ should return largest accounts
Solana › mainnet › getLatestBlockhash
  ❌ should return latest blockhash
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getLeaderSchedule
  ❌ should return leader schedule
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getMultipleAccounts
  ❌ should return account info
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getSlot
  ❌ should return slot number
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getSlotLeaders
  ❌ should return slot leader info
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getTokenAccountBalance
  ❌ should return token account balance
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getTokenAccountsByOwner
  ❌ should return token accounts by owner
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › mainnet › getTransaction
  ⚪ should return transaction data
Solana › mainnet › getProgramAccount
  ⚪ should return account data
Solana › devnet › getBlockHeight
  ❌ should return the current block height
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › devnet › getBlockProduction
  ❌ should return block production information
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › devnet › getBlockCommitment
  ❌ should return block commitment information
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"
Solana › devnet › getBlock
  ❌ should return a recent block
	Error: thrown: "{\"statusCode\": 401, \"message\": \"Authentication required. Make sure your requests are authenticated with a Tatum API key. Find out how at: https://docs.tatum.io/docs/authentication. If you don't have one, get one for FREE via the Tatum Dashboard at https://dashboard.tatum.io.\"}"

✅ src/e2e/rpc/other/tatum.rpc.stellar.spec.ts

Stellar › mainnet
  ⚪ should get accounts
  ⚪ should get account detail
  ⚪ should get fee stats
  ⚪ should get ledger
  ⚪ should get offers
Stellar › mainnet › should get strict send
  ⚪ destinationAccount
  ⚪ destinationAssets
Stellar › mainnet › should get strict receive
  ⚪ sourceAssets
  ⚪ sourceAccount
Stellar › testnet
  ⚪ should get accounts
  ⚪ should get account detail
  ⚪ should get fee stats
  ⚪ should get ledger
  ⚪ should get offers
Stellar › testnet › should get strict send
  ⚪ destinationAccount
  ⚪ destinationAssets
Stellar › testnet › should get strict receive
  ⚪ sourceAssets
  ⚪ sourceAccount

✅ src/e2e/rpc/other/tatum.rpc.tezos.spec.ts

Tezos › Mainnet
  ✅ getBlock
  ✅ getBlocksHead
  ✅ getCheckpoint
  ✅ getContract
  ✅ getContractBalanceAndFrozenBonds
  ✅ getContractsEntrypoints
Tezos › Testnet
  ✅ getBlock
  ✅ getBlocksHead
  ✅ getCheckpoint
  ⚪ Inject Operation
  ⚪ Inject Block
  ⚪ Inject Protocol

❌ src/e2e/rpc/other/tatum.rpc.ton.spec.ts

Ton › Testnet
  ✅ status
  ✅ getMasterchainInfo
Ton › Mainnet
  ❌ status
	Error: thrown: "Exceeded timeout of 30000 ms for a test.
  ✅ getMasterchainInfo

✅ src/e2e/rpc/other/tatum.rpc.tron.spec.ts

RPCs › TRON › testnet
  ⚪ getNowBlock
  ⚪ getChainParameters
  ⚪ getBlockByNum
  ⚪ getBlockById
  ⚪ getTransactionById
RPCs › TRON › mainnet
  ⚪ getNowBlock
  ⚪ getChainParameters
  ⚪ getBlockByNum
  ⚪ getBlockById
  ⚪ getTransactionById
  ⚪ getBlockByLimitNext
  ⚪ getAccountBalance

✅ src/e2e/rpc/other/tatum.rpc.xrp.spec.ts

RPCs › XRP › testnet
  ⚪ ping
  ⚪ ledger_closed
  ⚪ fee
RPCs › XRP › mainnet
  ⚪ account_channels
  ⚪ account_currencies
  ⚪ account_lines
  ⚪ account_info
  ⚪ noripple_check
  ⚪ ledger_closed
  ⚪ ledger_entry
  ⚪ submit
  ⚪ book_offers
  ⚪ fee

✅ src/e2e/rpc/utxo/tatum.rpc.bch.spec.ts

Bitcoin Cash › mainnet
  ✅ estimatefee
Bitcoin Cash › testnet
  ✅ estimatefee

✅ src/e2e/rpc/utxo/tatum.rpc.doge.spec.ts

Doge › mainnet
  ✅ createrawtransaction
  ✅ getblock

✅ src/e2e/rpc/utxo/utxo.rpc.spec.ts

UTXO E2E Test Suite › bitcoin-testnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
  ✅ estimatesmartfee
UTXO E2E Test Suite › bitcoin-mainnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
  ✅ estimatesmartfee
UTXO E2E Test Suite › doge-testnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
  ✅ estimatesmartfee
UTXO E2E Test Suite › doge-mainnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
  ✅ estimatesmartfee
UTXO E2E Test Suite › litecoin-testnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
  ✅ estimatesmartfee
UTXO E2E Test Suite › litecoin-mainnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
  ✅ estimatesmartfee
UTXO E2E Test Suite › zcash-testnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info
UTXO E2E Test Suite › bitcoin-cash-mainnet
  ✅ chain info
  ✅ chain info raw call
  ✅ best block hash
  ✅ block count
  ✅ difficulty
  ✅ mempool info

✅ src/e2e/tatum.address.spec.ts

Address › Address Balance › getBalance EVM
  ⚪ should get balance with native assets only
  ⚪ should get only native balance with native assets only
  ⚪ should get balance with native assets only for 2 addresses
  ⚪ should get balance with native, erc20 and erc721 assets
Address › Address Balance › getBalance SOL
  ⚪ should get balance with native assets only
Address › Address Balance › getBalance BTC
  ⚪ should get balance with native assets only
Address › Address Balance › getBalance DOGE
  ⚪ should get balance with native assets only
Address › Address Balance › getBalance LTC
  ⚪ should get balance with native assets only
Address › Address Balance › getBalance CARDANO
  ⚪ should get balance with native assets only
Address › Address Balance › getBalance XRP
  ⚪ should get balance with native assets only
Address › Address Balance › getBalance Tezos
  ⚪ should get all balances for address
  ⚪ should get balance for nft tokens only
Address › Address Balance › getBalance Tron
  ⚪ should get balance with native and erc20 assets
Address › Address Balance › getBalance EON
  ⚪ should get balance from eon network
Address › getTransactions › getTransactions EVM
  ⚪ should get transactions - native only
  ⚪ should get transactions - tokens only
  ⚪ should get transactions - NFT tokens only
  ⚪ should get transactions - pagination
  ⚪ should get transactions for specific contract
Address › getTransactions › getTransactions BITCOIN
  ⚪ should get transactions
  ⚪ should get transactions by block with cursor pagination
Address › getTransactions › getTransactions DOGECOIN
  ⚪ should get transactions
  ⚪ should get transactions by block with cursor pagination
Address › getTransactions › getTransactions LITECOIN
  ⚪ should get transactions
  ⚪ should get transactions by block with cursor pagination
Address › getTransactions › getTransactions Tezos
  ⚪ should get transactions - native only
  ⚪ should get transactions by block with cursor pagination
Address › getTransactions › getTransactions EON
  ⚪ should get transactions - native only
  ⚪ should get transactions - tokens only

✅ src/e2e/tatum.fee.spec.ts

Fee
  ⚪ should return fee for eth testnet
  ✅ should return fee for btc testnet

✅ src/e2e/tatum.logger.spec.ts

Logger
  ✅ should warn on missing API key

✅ src/e2e/tatum.nft.spec.ts

Tatum NFT › NFT balances
  ⚪ should get NFT balances
Tatum NFT › NFT transactions
  ⚪ should get NFT transactions for a specific NFT token
  ⚪ should get NFT transactions for a specific NFT token on the address
Tatum NFT › NFT owners
  ⚪ should get NFT owners for a specific NFT token
  ⚪ should not get NFT owners for a specific NFT token - no such token
  ⚪ check if NFT is owned by a specific address
  ⚪ check if NFT is owned by a specific address - not the owner
Tatum NFT › NFT collections
  ⚪ should get small collection
  ⚪ should get small collection without metadata
  ⚪ should get big collection with pagination
Tatum NFT › NFT metadata
  ⚪ should get NFT Metadata for NFT
Tatum NFT › Create collections
  ⚪ should create NFT ERC721 collection
  ⚪ should create NFT ERC1155 collection
Tatum NFT - Tezos
  ⚪ Should deploy contract on Tezos testnet
Tatum NFT - Test mint flow
  ⚪ Test

✅ src/e2e/tatum.notification.spec.ts

notification › createSubscription › IP auth › Address Event
  ⚪ OK bitcoin-mainnet
  ⚪ OK bitcoin-testnet
  ⚪ OK bitcoin-cash-mainnet
  ⚪ OK bch-testnet
  ⚪ OK litecoin-mainnet
  ⚪ OK litecoin-testnet
  ⚪ OK doge-mainnet
  ⚪ OK doge-testnet
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK ripple-mainnet
  ⚪ OK ripple-testnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Incoming Native Tx
  ⚪ OK bitcoin-mainnet
  ⚪ OK bitcoin-testnet
  ⚪ OK litecoin-mainnet
  ⚪ OK litecoin-testnet
  ⚪ OK doge-mainnet
  ⚪ OK doge-testnet
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK ripple-mainnet
  ⚪ OK ripple-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK ripple-mainnet
  ⚪ OK ripple-testnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Outgoing Native Tx
  ⚪ OK bitcoin-mainnet
  ⚪ OK bitcoin-testnet
  ⚪ OK litecoin-mainnet
  ⚪ OK litecoin-testnet
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK ripple-mainnet
  ⚪ OK ripple-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK ripple-mainnet
  ⚪ OK ripple-testnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Outgoing Failed Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Paid Fee
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK ripple-mainnet
  ⚪ OK ripple-testnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Incoming Internal Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK fantom-mainnet
  ⚪ OK base-mainnet
  ⚪ OK avalanche-c-mainnet
notification › createSubscription › IP auth › Outgoing Internal Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK fantom-mainnet
  ⚪ OK base-mainnet
  ⚪ OK avalanche-c-mainnet
notification › createSubscription › IP auth › Incoming Fungible Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Outgoing Fungible Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Incoming Nft Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Outgoing Nft Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Incoming Multitoken Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Outgoing Multitoken Tx
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Failed Txs Per Block
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK tron-mainnet
  ⚪ OK tron-testnet
  ⚪ OK solana-mainnet
  ⚪ OK solana-devnet
  ⚪ OK tezos-mainnet
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK cro-testnet
  ⚪ OK fantom-mainnet
  ⚪ OK fantom-testnet
  ⚪ OK optimism-mainnet
  ⚪ OK optimism-testnet
  ⚪ OK base-mainnet
  ⚪ OK base-sepolia
  ⚪ OK avalanche-c-mainnet
  ⚪ OK avax-testnet
notification › createSubscription › IP auth › Contract Address Log Event
  ⚪ OK ethereum-mainnet
  ⚪ OK ethereum-sepolia
  ⚪ OK ethereum-holesky
  ⚪ OK polygon-mainnet
  ⚪ OK polygon-amoy
  ⚪ OK celo-mainnet
  ⚪ OK celo-testnet
  ⚪ OK bsc-mainnet
  ⚪ OK bsc-testnet
  ⚪ OK klaytn-mainnet
  ⚪ OK klaytn-baobab
  ⚪ OK flare-mainnet
  ⚪ OK flare-coston
  ⚪ OK flare-coston2
  ⚪ OK flare-songbird
  ⚪ OK cronos-mainnet
  ⚪ OK fantom-mainnet
  ⚪ OK base-mainnet
  ⚪ OK avalanche-c-mainnet
notification › createSubscription
  ⚪ NOK - existing subscription
  ⚪ NOK - invalid address
notification › deleteSubscription
  ⚪ OK
  ⚪ NOK - invalid subscription
notification
  ⚪ getAll
  ⚪ getAllExecutedWebhooks

✅ src/e2e/tatum.rates.spec.ts

Rates
  ✅ get ETH/EUR
  ✅ get batch

✅ src/e2e/tatum.spec.ts

Tatum Init
  ✅ Testnet
  ✅ Mainnet
  ✅ Multiple Instances

✅ src/e2e/tatum.token.spec.ts

Tatum token › token balances
  ⚪ should get token balances
  ⚪ should get token balances - few addresses
Tatum token › token transactions
  ⚪ should get ERC20 transactions for address for all tokens
  ⚪ should get ERC20 transactions for address for specific token
Tatum token › token transactions › should filter ERC20 transactions for address for all tokens
  ⚪ blockFrom
  ⚪ blockTo
  ⚪ no txs by filter
  ⚪ both txs by filter
Tatum token › Token metadata
  ⚪ should get ERC20 token metadata
Tatum token › Create token
  ⚪ should create ERC20 token

✅ src/service/rpc/evm/EvmUtils.spec.ts

EvmUtils › isArchiveMethod
  ✅ archive method eth_getCode -> true
  ✅ archive method eth_call -> true
  ✅ archive method debug -> true
  ✅ archive method trace -> true
  ✅ archive method getStorageAt -> false
  ✅ archive method eth_call -> true
  ✅ archive method getBalance -> false
  ✅ archive method eth_getCode -> true
  ✅ archive method getBlockByNumber -> false
  ✅ archive method getLogs -> false
  ✅ archive method other -> false
  ✅ archive method & param getStorageAt -> [ 1, 2 ]
  ✅ archive method & param getStorageAt -> [ 1, 2, 'latest' ]
  ✅ archive method & param getStorageAt -> [ 1, 2, 3 ]
  ✅ archive method & param getStorageAt -> []
  ✅ archive method & param getBalance -> [ 1 ]
  ✅ archive method & param getBalance -> [ 1, 'latest' ]
  ✅ archive method & param getBalance -> [ 1, 2 ]
  ✅ archive method & param getBalance -> []
  ✅ archive method & param getBlockByNumber -> []
  ✅ archive method & param getBlockByNumber -> [ 'latest' ]
  ✅ archive method & param getBlockByNumber -> [ 1 ]
  ✅ archive method & param getLogs -> [ 1, [Object] ]
  ✅ archive method & param getLogs -> [ 1, [Object] ]
  ✅ archive method & param getLogs -> [ 1, [Object] ]
  ✅ archive method & param getLogs -> [ 1, [Object] ]
  ✅ archive method & param getLogs -> [ 1, [Object] ]

✅ src/util/network.utils.spec.ts

Network Utils › getChainId
  ✅ valid ethereum-mainnet -> 1
  ✅ valid ethereum-sepolia -> 11155111
  ✅ valid celo-mainnet -> 42220
  ✅ valid celo-testnet -> 44787
Network Utils › isTestnet
  ✅ valid ethereum-mainnet -> false
  ✅ valid ethereum-sepolia -> true
  ✅ valid celo-mainnet -> false
  ✅ valid celo-testnet -> true
Network Utils › isAlternateTestnet
  ✅ valid ethereum-mainnet -> false
  ✅ valid ethereum-sepolia -> false
  ✅ valid ethereum-holesky -> true
  ✅ valid celo-mainnet -> false
  ✅ valid celo-testnet -> false

Annotations

Check failure on line 6 in src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts

See this annotation in the file changed.

@github-actions github-actions / TEST REPORT

src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts ► Beacon › v1 › ethereum-holesky ► should get node version

Failed test found in:
  reports/jest-junit.xml
Error:
  Error: thrown: ""
Raw output
Error: thrown: ""
    at /home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:11:7
    at /home/runner/work/tatum-js/tatum-js/node_modules/jest-each/build/bind.js:81:13
    at _dispatchDescribe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:91:26)
    at describe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:55:5)
    at /home/runner/work/tatum-js/tatum-js/node_modules/jest-each/build/bind.js:47:15
    at Array.forEach (<anonymous>)
    at eachBind (/home/runner/work/tatum-js/tatum-js/node_modules/jest-each/build/bind.js:39:22)
    at /home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:10:28
    at _dispatchDescribe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:91:26)
    at describe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:55:5)
    at /home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:7:3
    at _dispatchDescribe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:91:26)
    at describe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:55:5)
    at Object.<anonymous> (/home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:6:1)
    at Runtime._execModule (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runtime/build/index.js:1439:24)
    at Runtime._loadModule (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runtime/build/index.js:1022:12)
    at Runtime.requireModule (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runtime/build/index.js:882:12)
    at jestAdapter (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at runTestInternal (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runner/build/runTest.js:367:16)
    at runTest (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runner/build/runTest.js:444:34)
    at Object.worker (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runner/build/testWorker.js:106:12)

Check failure on line 6 in src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts

See this annotation in the file changed.

@github-actions github-actions / TEST REPORT

src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts ► Beacon › v1 › ethereum-mainnet ► should get node version

Failed test found in:
  reports/jest-junit.xml
Error:
  Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6eb47e00608d6c3e5c\"}"
Raw output
Error: thrown: "{\"statusCode\":403,\"errorCode\":\"unsupported.apiKey.network.combination\",\"message\":\"Cannot use testnet apiKey with mainnet network. Please use mainnet apiKey instead, if you dont have one, please create it at https://co.tatum.io/signup\",\"dashboardLog\":\"https://dashboard.tatum.io/logs?id=67090a6eb47e00608d6c3e5c\"}"
    at /home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:11:7
    at /home/runner/work/tatum-js/tatum-js/node_modules/jest-each/build/bind.js:81:13
    at _dispatchDescribe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:91:26)
    at describe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:55:5)
    at /home/runner/work/tatum-js/tatum-js/node_modules/jest-each/build/bind.js:47:15
    at Array.forEach (<anonymous>)
    at eachBind (/home/runner/work/tatum-js/tatum-js/node_modules/jest-each/build/bind.js:39:22)
    at /home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:10:28
    at _dispatchDescribe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:91:26)
    at describe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:55:5)
    at /home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:7:3
    at _dispatchDescribe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:91:26)
    at describe (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/index.js:55:5)
    at Object.<anonymous> (/home/runner/work/tatum-js/tatum-js/src/e2e/rpc/evm/eth/tatum.rpc.beacon.spec.ts:6:1)
    at Runtime._execModule (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runtime/build/index.js:1439:24)
    at Runtime._loadModule (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runtime/build/index.js:1022:12)
    at Runtime.requireModule (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runtime/build/index.js:882:12)
    at jestAdapter (/home/runner/work/tatum-js/tatum-js/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:77:13)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at runTestInternal (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runner/build/runTest.js:367:16)
    at runTest (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runner/build/runTest.js:444:34)
    at Object.worker (/home/runner/work/tatum-js/tatum-js/node_modules/jest-runner/build/testWorker.js:106:12)