Files
smom-dbis-138/docs/operations/integrations/METAMASK_TEST_CHECKLIST.md
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- 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.
2025-12-12 14:57:48 -08:00

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: ___________