From b896b4b801d2d37318981015b2443395b078efc5 Mon Sep 17 00:00:00 2001 From: Marta Poling Date: Thu, 12 Sep 2024 17:00:23 -0500 Subject: [PATCH] chore: add test for getAddTransactionRequest --- app/scripts/metamask-controller.test.js | 70 +++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/app/scripts/metamask-controller.test.js b/app/scripts/metamask-controller.test.js index bae372187f14..41ce7bab4b72 100644 --- a/app/scripts/metamask-controller.test.js +++ b/app/scripts/metamask-controller.test.js @@ -523,6 +523,76 @@ describe('MetaMaskController', () => { }); }); + describe('#getAddTransactionRequest', () => { + it('formats the transaction for submission', () => { + const transactionParams = { from: '0xa', to: '0xb' }; + const transactionOptions = { foo: true }; + const result = metamaskController.getAddTransactionRequest({ + transactionParams, + transactionOptions, + }); + expect(result).toEqual( + expect.objectContaining({ + internalAccounts: + metamaskController.accountsController.listAccounts(), + dappRequest: undefined, + networkClientId: + metamaskController.networkController.state + .selectedNetworkClientId, + selectedAccount: + metamaskController.accountsController.getAccountByAddress( + transactionParams.from, + ), + transactionController: expect.objectContaining({}), + transactionOptions, + transactionParams, + userOperationController: expect.objectContaining({}), + chainId: '0x1', + ppomController: expect.objectContaining({}), + securityAlertsEnabled: + metamaskController.preferencesController.store.getState() + ?.securityAlertsEnabled, + updateSecurityAlertResponse: expect.any, + }), + ); + }); + it('passes through any additional params to the object', () => { + const transactionParams = { from: '0xa', to: '0xb' }; + const transactionOptions = { foo: true }; + const result = metamaskController.getAddTransactionRequest({ + transactionParams, + transactionOptions, + test: '123', + }); + + expect(result).toEqual( + expect.objectContaining({ + internalAccounts: + metamaskController.accountsController.listAccounts(), + dappRequest: undefined, + networkClientId: + metamaskController.networkController.state + .selectedNetworkClientId, + selectedAccount: + metamaskController.accountsController.getAccountByAddress( + transactionParams.from, + ), + transactionController: expect.objectContaining({}), + transactionOptions, + transactionParams, + userOperationController: expect.objectContaining({}), + chainId: '0x1', + ppomController: expect.objectContaining({}), + securityAlertsEnabled: + metamaskController.preferencesController.store.getState() + ?.securityAlertsEnabled, + updateSecurityAlertResponse: expect.any, + test: '123', + }), + ); + }); + }); + describe('submitPassword', () => { it('removes any identities that do not correspond to known accounts.', async () => { const fakeAddress = '0xbad0';