Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

MockMessageTransmitter

Git Source

Inherits: IMessageTransmitter

Title: MockMessageTransmitter

Mock implementation of IMessageTransmitter for testing CCTP

Receives CCTP messages and mints tokens to the recipient

Constants

CCTP_DOMAIN_INDEX

uint256 constant CCTP_DOMAIN_INDEX = 4

CCTP_NONCE_INDEX

uint256 constant CCTP_NONCE_INDEX = 12

CCTP_TOKEN_INDEX

uint256 constant CCTP_TOKEN_INDEX = 120

CCTP_RECIPIENT_INDEX

uint256 constant CCTP_RECIPIENT_INDEX = 152

CCTP_AMOUNT_INDEX

uint256 constant CCTP_AMOUNT_INDEX = 208

CCTPV2_MESSAGE_BODY_INDEX

uint256 constant CCTPV2_MESSAGE_BODY_INDEX = 148

CCTPV2_SOURCE_TOKEN_INDEX

uint256 constant CCTPV2_SOURCE_TOKEN_INDEX = CCTPV2_MESSAGE_BODY_INDEX + 4

CCTPV2_MINT_RECIPIENT_INDEX

uint256 constant CCTPV2_MINT_RECIPIENT_INDEX = CCTPV2_MESSAGE_BODY_INDEX + 36

CCTPV2_AMOUNT_INDEX

uint256 constant CCTPV2_AMOUNT_INDEX = CCTPV2_MESSAGE_BODY_INDEX + 68

HOOK_DATA_INDEX

uint256 constant HOOK_DATA_INDEX = CCTPV2_MESSAGE_BODY_INDEX + 228

State Variables

_localDomain

uint32 public _localDomain

tokenMinter

address public tokenMinter

Functions

constructor

constructor(uint32 localDomain_, address tokenMinter_) ;

receiveMessage

Receive and process a CCTP message

function receiveMessage(bytes memory message, bytes calldata attestation) external returns (bool success);

Parameters

NameTypeDescription
messagebytesThe CCTP message bytes
attestationbytesThe attestation signatures (ignored in mock)

Returns

NameTypeDescription
successboolAlways returns true for valid messages

localDomain

Get the local domain

function localDomain() external view returns (uint32);

setLocalDomain

Set the local domain (testing only)

function setLocalDomain(uint32 newDomain) external;

setTokenMinter

Set the token minter address (testing only)

function setTokenMinter(address newTokenMinter) external;

mintTokens

Direct mint function for testing

function mintTokens(address token, address recipient, uint256 amount) external;