- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
5.2 KiB
5.2 KiB
MetaMask Integration Test Checklist
Comprehensive test checklist for MetaMask integration with ChainID 138.
Pre-Testing Setup
- MetaMask extension installed (latest version)
- MetaMask mobile app installed (for mobile testing)
- Test accounts created and funded
- RPC endpoints accessible
- Blockscout explorer accessible
- Token contracts deployed
Browser Testing
Chrome/Chromium
- Network addition via
wallet_addEthereumChain - Network addition via Chainlist
- Network switching via
wallet_switchEthereumChain - Token addition via
wallet_watchAsset - Account connection
- Transaction signing
- Network change event handling
- Account change event handling
Firefox
- Network addition via
wallet_addEthereumChain - Network addition via Chainlist
- Network switching
- Token addition
- Account connection
- Transaction signing
Edge
- Network addition
- Network switching
- Token addition
- Account connection
Mobile Testing
iOS (MetaMask Mobile)
- Network addition
- Network switching
- Token addition
- Account connection
- Transaction signing
- Deep linking
Android (MetaMask Mobile)
- Network addition
- Network switching
- Token addition
- Account connection
- Transaction signing
- Deep linking
Network Addition Tests
Method 1: wallet_addEthereumChain
- Add network successfully
- Handle network already added error
- Handle user rejection
- Handle invalid parameters
- Verify network appears in MetaMask
- Verify network details are correct
Method 2: Chainlist
- Find network on Chainlist
- Click "Add to MetaMask" button
- Approve network addition
- Verify network added correctly
Method 3: Manual Addition
- Add network manually via MetaMask UI
- Verify all fields are correct
- Test with different RPC URLs
- Test with different explorer URLs
Network Switching Tests
- Switch to ChainID 138 from another network
- Switch away from ChainID 138
- Handle network not added error
- Handle user rejection
- Verify chain change event fires
- Verify UI updates on chain change
Token Addition Tests
Method 1: wallet_watchAsset
- Add token successfully
- Handle invalid address
- Handle invalid decimals
- Handle user rejection
- Verify token appears in MetaMask
- Verify token balance displays correctly
- Verify token logo displays correctly
Method 2: Token List
- Token auto-detection works
- Token appears in token list
- Token metadata is correct
- Token logo is accessible
Integration Tests
React Integration
- useChain138 hook works correctly
- Chain138Button component works
- AddTokenButton component works
- Event listeners work correctly
- State management works correctly
Vanilla JS Integration
- Network addition works
- Network switching works
- Token addition works
- Event handlers work correctly
Vue Integration
- useChain138 composable works
- Components work correctly
- Event listeners work correctly
Error Handling Tests
- MetaMask not installed error
- MetaMask locked error
- User rejection error
- Network not added error
- Invalid parameters error
- RPC endpoint error
- Network connectivity error
Edge Cases
- Multiple network additions
- Rapid network switching
- Network addition during transaction
- Token addition with invalid logo URL
- Token addition with missing metadata
- Network change during token addition
- Account change during network switch
Performance Tests
- Network addition response time
- Network switching response time
- Token addition response time
- Event handler performance
- Memory usage
Security Tests
- Verify RPC URLs are correct
- Verify explorer URLs are correct
- Verify token addresses are correct
- Test with malicious RPC URLs
- Test with malicious token addresses
- Verify CORS headers
- Verify SSL certificates
Regression Tests
- Test with older MetaMask versions
- Test with newer MetaMask versions
- Test with different browser versions
- Test with different operating systems
- Test with different network conditions
Documentation Tests
- Code examples work correctly
- Documentation is accurate
- Links are working
- Screenshots are up to date
Production Readiness
- All tests pass
- Error handling is comprehensive
- User experience is smooth
- Documentation is complete
- Security checks pass
- Performance is acceptable
Test Results
Test Date: ___________
Tester: ___________
Browser: ___________
MetaMask Version: ___________
Results:
- Total Tests: ___________
- Passed: ___________
- Failed: ___________
- Skipped: ___________
Notes:
Sign-off
- All critical tests passed
- All high-priority tests passed
- Documentation reviewed
- Security reviewed
- Ready for production
Tester Signature: ___________
Date: ___________