UNPKG

@metamask/multichain-account-service

Version:
28 lines 1.2 kB
"use strict"; /* eslint-disable jsdoc/require-jsdoc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.setupAccountProvider = exports.makeMockAccountProvider = void 0; const account_api_1 = require("@metamask/account-api"); function makeMockAccountProvider(accounts = []) { return { accounts, getAccount: jest.fn(), getAccounts: jest.fn(), createAccounts: jest.fn(), discoverAndCreateAccounts: jest.fn(), }; } exports.makeMockAccountProvider = makeMockAccountProvider; function setupAccountProvider({ accounts, mocks = makeMockAccountProvider(), filter = () => true, }) { // You can mock this and all other mocks will re-use that list // of accounts. mocks.accounts = accounts; const getAccounts = () => mocks.accounts.filter((account) => (0, account_api_1.isBip44Account)(account) && filter(account)); mocks.getAccounts.mockImplementation(getAccounts); mocks.getAccount.mockImplementation((id) => // Assuming this never fails. getAccounts().find((account) => account.id === id)); return mocks; } exports.setupAccountProvider = setupAccountProvider; //# sourceMappingURL=providers.cjs.map