Classes
BaseWallet
Abstract base class for wallet implementations.MetaMask
MetaMask wallet automation class.CoinbaseWallet
Coinbase Wallet automation class.PasskeyAuthenticator
WebAuthn virtual authenticator for Coinbase Wallet.Enums
BaseActionType
Common actions supported by all wallets.MetaMaskSpecificActionType
MetaMask-specific actions.CoinbaseSpecificActionType
Coinbase Wallet-specific actions.NotificationPageType
Types of wallet notifications.ActionApprovalType
Approval types for wallet actions.Types
ActionOptions
Options for wallet actions.NetworkConfig
Network configuration object.WalletSetupContext
Context provided during wallet setup.PasskeyConfig
Configuration for passkey authentication (Coinbase only).MetaMaskConfig
MetaMask wallet configuration.CoinbaseConfig
Coinbase Wallet configuration.Configuration Builder
configure()
Creates a configuration builder.ConfigBuilder Methods
Test Creation
createOnchainTest()
Creates a test function with wallet fixtures.Test Fixtures
Usage Examples
Basic Wallet Action
Action with Options
Network Switching
Token Addition (MetaMask)
Passkey Handling (Coinbase)
Error Handling
All wallet methods may throw errors. Common error scenarios:- Wallet extension not found
- Network not available
- Account not found
- Transaction rejected
- Timeout exceeded
Best Practices
- Always check fixture existence: Verify wallet fixtures are available before use
- Use appropriate action types: Use base actions for common operations, specific actions for wallet-unique features
- Handle errors gracefully: Wrap wallet actions in try-catch blocks
- Wait for UI updates: Allow time for UI to update after wallet actions
- Use notification detection: Use
identifyNotificationType()
for dynamic flows