@@ -132,6 +132,7 @@ function getEarnControllerMessenger(
132132 events : [
133133 'NetworkController:networkDidChange' ,
134134 'AccountTreeController:selectedAccountGroupChange' ,
135+ // eslint-disable-next-line no-restricted-syntax
135136 'AccountTreeController:stateChange' ,
136137 'TransactionController:transactionConfirmed' ,
137138 ] ,
@@ -700,7 +701,7 @@ const setupController = async ({
700701 mockGetNetworkControllerState ?: jest . Mock ;
701702 mockGetAccountsFromSelectedAccountGroup ?: jest . Mock ;
702703 addTransactionFn ?: jest . Mock ;
703- } = { } ) => {
704+ } = { } ) : Promise < { controller : EarnController ; messenger : RootMessenger } > => {
704705 const messenger = buildMessenger ( ) ;
705706
706707 messenger . registerActionHandler (
@@ -733,7 +734,13 @@ const setupController = async ({
733734} ;
734735
735736const EarnApiServiceMock = jest . mocked ( EarnApiService ) ;
736- let mockedEarnApiService : Partial < EarnApiService > ;
737+
738+ type MockedEarnApiService = {
739+ pooledStaking ?: Partial < jest . Mocked < PooledStakingApiService > > ;
740+ lending ?: Partial < jest . Mocked < LendingApiService > > ;
741+ } ;
742+
743+ let mockedEarnApiService : MockedEarnApiService ;
737744
738745const isSupportedLendingChainMock = jest . requireMock (
739746 '@metamask/stake-sdk' ,
@@ -773,7 +780,7 @@ describe('EarnController', () => {
773780 . fn ( )
774781 . mockResolvedValue ( mockPooledStakingVaultApyAverages ) ,
775782 getUserDailyRewards : jest . fn ( ) . mockResolvedValue ( mockUserDailyRewards ) ,
776- } as Partial < PooledStakingApiService > ,
783+ } as Partial < jest . Mocked < PooledStakingApiService > > ,
777784 lending : {
778785 getMarkets : jest . fn ( ) . mockResolvedValue ( mockLendingMarkets ) ,
779786 getPositions : jest . fn ( ) . mockResolvedValue ( mockLendingPositions ) ,
@@ -783,8 +790,8 @@ describe('EarnController', () => {
783790 getHistoricMarketApys : jest
784791 . fn ( )
785792 . mockResolvedValue ( mockLendingHistoricMarketApys ) ,
786- } as Partial < LendingApiService > ,
787- } as Partial < EarnApiService > ;
793+ } as Partial < jest . Mocked < LendingApiService > > ,
794+ } ;
788795
789796 EarnApiServiceMock . mockImplementation (
790797 ( ) => mockedEarnApiService as EarnApiService ,
@@ -1017,10 +1024,9 @@ describe('EarnController', () => {
10171024 ) ;
10181025 await new Promise ( ( resolve ) => setTimeout ( resolve , 0 ) ) ;
10191026
1020- const eligibilityCallCount = (
1021- mockedEarnApiService ?. pooledStaking
1022- ?. getPooledStakingEligibility as jest . Mock
1023- ) . mock . calls . length ;
1027+ const eligibilityCallCount =
1028+ mockedEarnApiService ?. pooledStaking ?. getPooledStakingEligibility ?. mock
1029+ . calls . length ?? 0 ;
10241030
10251031 // Second publish should be ignored – handler was already unsubscribed
10261032 messenger . publish (
@@ -1207,7 +1213,7 @@ describe('EarnController', () => {
12071213 getVaultApyAverages : jest . fn ( ) . mockImplementation ( ( ) => {
12081214 throw new Error ( 'API Error getVaultApyAverages' ) ;
12091215 } ) ,
1210- } as unknown as PooledStakingApiService ,
1216+ } as Partial < jest . Mocked < PooledStakingApiService > > ,
12111217 } ;
12121218
12131219 EarnApiServiceMock . mockImplementation (
0 commit comments