-
Notifications
You must be signed in to change notification settings - Fork 4
Feat/improve e2e tests #106
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
AugustoL
wants to merge
6
commits into
openscan-explorer:dev
Choose a base branch
from
AugustoL:feat/improve-e2e-tests
base: dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Improve e2e test reliability by increasing retries and adding incremental timeout on each retry (+20s per attempt). - Add custom test fixture with timeout that increases on retries - Increase retries to 3 in CI, 1 locally - Update all spec files to use the custom fixture
Add comprehensive e2e test suite for Base network (chain ID 8453): Blocks: - Genesis block, early blocks, pre/post-upgrade blocks - Real data from blocks 0, 1M, 10M, 25M - Gas details, size, fee recipient verification Transactions: - Aerodrome DEX swap (swapExactTokensForTokens) - USDC transfer (transferWithAuthorization) - Input data and attributes verification Addresses: - ERC20 tokens: USDC, USDbC, WETH, AERO - Aerodrome Router DEX contract - OP Stack predeploys: SequencerFeeVault, L1Block, GasPriceOracle, L2StandardBridge, L2CrossDomainMessenger Includes upgrade timestamps for Canyon, Delta, Ecotone, Fjord, Granite, Holocene, and Isthmus.
Add comprehensive e2e tests for Arbitrum One (chain ID 42161) covering blocks, transactions, and addresses across network history including Nitro upgrade and ArbOS versions.
|
🚀 Preview: https://pr-106--openscan.netlify.app |
Add comprehensive e2e tests for Optimism (chain ID 10) covering blocks, transactions, and addresses across network history including Bedrock, Ecotone, and Holocene upgrades. Tests include system transactions (Type 126) and detailed value assertions for gas, nonce, and hashes. Also fix strict mode violations in error handling locators across all test files by adding .first() to prevent multiple element matches.
Add comprehensive e2e tests for BNB Smart Chain (BSC) network covering: Blocks (43 tests total): - Genesis block #0 with hash verification - Block openscan-explorer#10,000,000 (pre-Euler) with hash/parentHash - Block openscan-explorer#20,000,000 (post-Euler) with 321 transactions - Block openscan-explorer#30,000,000 (post-Luban, fast finality) - Block openscan-explorer#40,000,000 (post-Feynman, BNB Chain Fusion) - Block openscan-explorer#50,000,000 (post-Maxwell, 0.75s block time) - More details section tests for all blocks Transactions: - Real transaction from block 20M with nonce/position verification - DEX swap transaction from block 40M - DEX aggregator transaction from block 50M - Legacy Type 0 transaction verification Addresses: - BEP20 tokens (WBNB, USDT, BUSD, USDC, CAKE, DAI) - DEX contracts (PancakeSwap Router v2, Factory v2, Universal Router) - System contracts (ValidatorSet, SystemReward, TokenHub, StakeHub, Governor) - Staking contracts (PancakeSwap Main Staking, Cake Pool) Fixture data includes real on-chain block hashes, parent hashes, and transaction data fetched from BSC mainnet RPC.
Add comprehensive e2e tests for Polygon PoS network covering: Blocks (46 tests total): - Genesis block #0 with hash verification - Block openscan-explorer#10,000,000 (early Polygon activity) - Block openscan-explorer#20,000,000 (growing DeFi activity) - Block openscan-explorer#30,000,000 (mature network) - Block openscan-explorer#38,189,056 (Delhi hard fork) - Block openscan-explorer#50,000,000 (high activity) - Block openscan-explorer#62,278,656 (Ahmedabad hard fork - MATIC to POL) - Block openscan-explorer#65,000,000 (post-Ahmedabad POL era) - More details section tests for all blocks Transactions: - Legacy Type 0 NFT transfer from block 30M - EIP-1559 DeFi swap from block 50M - EIP-1559 contract interaction from block 65M - Nonce and position verification Addresses: - ERC20 tokens (WPOL, USDC.e, USDC, USDT, WETH, DAI, AAVE, LINK) - DEX contracts (QuickSwap Router, Uniswap V3, SushiSwap) - NFT & Lending (OpenSea Storefront, Aave V3 Pool) - System contracts (POL Token, StateReceiver) Fixture includes real on-chain data with upgrade history: - Mainnet launch (May 2020) - EIP-1559 activation (March 2022) - Delhi hard fork (January 2023) - Napoli hard fork (March 2024) - Ahmedabad hard fork (September 2024) - Heimdall v2 (July 2025)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Add e2e tests for base, arbitrum, optmism, bnb smart chain and polygon
Related Issue
closes #100
Type of Change
Checklist
npm run format:fixandnpm run lint:fixnpm run typecheckwith no errorsnpm run test:run