{"version":3,"file":"messenger-mock.cjs","sourceRoot":"","sources":["../../src/tests/messenger-mock.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TokensControllerGetStateAction } from '@metamask/assets-controllers';\nimport type { TokenBalancesControllerGetStateAction } from '@metamask/assets-controllers';\nimport type { TokenRatesControllerGetStateAction } from '@metamask/assets-controllers';\nimport type { AccountTrackerControllerGetStateAction } from '@metamask/assets-controllers';\nimport { Messenger } from '@metamask/base-controller';\nimport type { BridgeStatusControllerGetStateAction } from '@metamask/bridge-status-controller';\nimport type { NetworkControllerGetNetworkClientByIdAction } from '@metamask/network-controller';\nimport type { NetworkControllerFindNetworkClientIdByChainIdAction } from '@metamask/network-controller';\nimport type { RemoteFeatureFlagControllerGetStateAction } from '@metamask/remote-feature-flag-controller';\nimport type {\n  TransactionControllerAddTransactionAction,\n  TransactionControllerGetStateAction,\n} from '@metamask/transaction-controller';\nimport type { TransactionControllerUpdateTransactionAction } from '@metamask/transaction-controller';\n\nimport type { TransactionPayControllerMessenger } from '..';\nimport type { BridgeStatusControllerSubmitTxAction } from '../../../bridge-status-controller/src/types';\nimport type {\n  TransactionPayControllerActions,\n  TransactionPayControllerEvents,\n  TransactionPayControllerGetStrategyAction,\n} from '../types';\nimport {\n  type AllowedActions,\n  type AllowedEvents,\n  type TransactionPayControllerGetStateAction,\n} from '../types';\n\n/**\n * Creates a mock controller messenger for testing.\n *\n * @returns The mock messenger and associated mock functions.\n */\nexport function getMessengerMock() {\n  const getControllerStateMock: jest.MockedFn<\n    TransactionPayControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getStrategyMock: jest.MockedFn<\n    TransactionPayControllerGetStrategyAction['handler']\n  > = jest.fn();\n\n  const getTransactionControllerStateMock: jest.MockedFn<\n    TransactionControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const addTransactionMock: jest.MockedFn<\n    TransactionControllerAddTransactionAction['handler']\n  > = jest.fn();\n\n  const findNetworkClientIdByChainIdMock: jest.MockedFn<\n    NetworkControllerFindNetworkClientIdByChainIdAction['handler']\n  > = jest.fn();\n\n  const fetchQuotesMock = jest.fn();\n\n  const getRemoteFeatureFlagControllerStateMock: jest.MockedFn<\n    RemoteFeatureFlagControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getGasFeeControllerStateMock = jest.fn();\n\n  const submitTransactionMock: jest.MockedFunction<\n    BridgeStatusControllerSubmitTxAction['handler']\n  > = jest.fn();\n\n  const updateTransactionMock: jest.MockedFn<\n    TransactionControllerUpdateTransactionAction['handler']\n  > = jest.fn();\n\n  const getBridgeStatusControllerStateMock: jest.MockedFn<\n    BridgeStatusControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getTokensControllerStateMock: jest.MockedFn<\n    TokensControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getTokenBalanceControllerStateMock: jest.MockedFn<\n    TokenBalancesControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getTokenRatesControllerStateMock: jest.MockedFn<\n    TokenRatesControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getCurrencyRateControllerStateMock = jest.fn();\n\n  const getAccountTrackerControllerStateMock: jest.MockedFn<\n    AccountTrackerControllerGetStateAction['handler']\n  > = jest.fn();\n\n  const getNetworkClientByIdMock: jest.MockedFn<\n    NetworkControllerGetNetworkClientByIdAction['handler']\n  > = jest.fn();\n\n  const baseMessenger = new Messenger<\n    AllowedActions | TransactionPayControllerActions,\n    AllowedEvents | TransactionPayControllerEvents\n  >();\n\n  baseMessenger.registerActionHandler(\n    'TransactionPayController:getState',\n    getControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TransactionPayController:getStrategy',\n    getStrategyMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TransactionController:getState',\n    getTransactionControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TransactionController:addTransaction',\n    addTransactionMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'NetworkController:findNetworkClientIdByChainId',\n    findNetworkClientIdByChainIdMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'BridgeController:fetchQuotes',\n    fetchQuotesMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'RemoteFeatureFlagController:getState',\n    getRemoteFeatureFlagControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'BridgeStatusController:submitTx',\n    submitTransactionMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'GasFeeController:getState',\n    getGasFeeControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TransactionController:updateTransaction',\n    updateTransactionMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'BridgeStatusController:getState',\n    getBridgeStatusControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TokensController:getState',\n    getTokensControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TokenBalancesController:getState',\n    getTokenBalanceControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'TokenRatesController:getState',\n    getTokenRatesControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'AccountTrackerController:getState',\n    getAccountTrackerControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'CurrencyRateController:getState',\n    getCurrencyRateControllerStateMock,\n  );\n\n  baseMessenger.registerActionHandler(\n    'NetworkController:getNetworkClientById',\n    getNetworkClientByIdMock,\n  );\n\n  const messenger: TransactionPayControllerMessenger = baseMessenger as never;\n\n  const publish = baseMessenger.publish.bind(baseMessenger);\n\n  return {\n    addTransactionMock,\n    fetchQuotesMock,\n    findNetworkClientIdByChainIdMock,\n    getAccountTrackerControllerStateMock,\n    getBridgeStatusControllerStateMock,\n    getControllerStateMock,\n    getCurrencyRateControllerStateMock,\n    getGasFeeControllerStateMock,\n    getNetworkClientByIdMock,\n    getRemoteFeatureFlagControllerStateMock,\n    getStrategyMock,\n    getTokenBalanceControllerStateMock,\n    getTokenRatesControllerStateMock,\n    getTokensControllerStateMock,\n    getTransactionControllerStateMock,\n    messenger,\n    publish,\n    submitTransactionMock,\n    updateTransactionMock,\n  };\n}\n"]}