@@ -12,26 +12,26 @@ import fakeAccountAddress, {
1212} from '__mocks__/models/address' ;
1313import { bnb , xvs } from '__mocks__/models/tokens' ;
1414import { vBnb } from '__mocks__/models/vTokens' ;
15+ import type { SwapQuote } from 'types' ;
1516
1617vi . mock ( 'libs/contracts' ) ;
1718vi . mock ( 'utilities/generateTransactionDeadline' ) ;
1819
1920const fakeAmountMantissa = new BigNumber ( '10000000000000000' ) ;
2021
21- const fakeSwap = {
22- direction : 'exactAmountIn ' as const ,
22+ const fakeSwapQuote : SwapQuote = {
23+ direction : 'exact-in ' as const ,
2324 fromToken : xvs ,
2425 toToken : bnb ,
25- fromTokenAmountSoldMantissa : fakeAmountMantissa ,
26- minimumToTokenAmountReceivedMantissa : fakeAmountMantissa ,
27- expectedToTokenAmountReceivedMantissa : fakeAmountMantissa ,
28- exchangeRate : new BigNumber ( '1' ) ,
26+ fromTokenAmountSoldMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
27+ minimumToTokenAmountReceivedMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
28+ expectedToTokenAmountReceivedMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
2929 priceImpactPercentage : 0 ,
30- routePath : [ xvs . address , bnb . address ] ,
30+ callData : '0x' ,
3131} ;
3232
3333const fakeInput = {
34- swap : fakeSwap ,
34+ swapQuote : fakeSwapQuote ,
3535 vToken : vBnb ,
3636 repayFullLoan : false ,
3737 poolComptrollerContractAddress : fakePoolComptrollerContractAddress ,
@@ -72,17 +72,15 @@ describe('useSwapTokensAndRepay', () => {
7272 `
7373 {
7474 "abi": Any<Array>,
75- "address": "0xfakeSwapRouterContractAddress ",
75+ "address": "0xfakeSwapRouterV2ContractAddress ",
7676 "args": [
77+ "${ vBnb . address } ",
78+ "${ xvs . address } ",
7779 10000000000000000n,
7880 10000000000000000n,
79- [
80- "0xB9e0E753630434d7863528cc73CB7AC638a7c8ff",
81- "0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB",
82- ],
83- 1747386407n,
81+ "0x",
8482 ],
85- "functionName": "swapExactTokensForBNBAndRepay ",
83+ "functionName": "swapAndRepay ",
8684 }
8785 ` ,
8886 ) ;
@@ -94,7 +92,6 @@ describe('useSwapTokensAndRepay', () => {
9492 [
9593 "Tokens swapped and repaid",
9694 {
97- "exchangeRate": 1,
9895 "fromTokenAmountTokens": 0.01,
9996 "fromTokenSymbol": "XVS",
10097 "poolName": "Fake Pool",
@@ -118,12 +115,12 @@ describe('useSwapTokensAndRepay', () => {
118115 const repayFullLoanInput = {
119116 ...fakeInput ,
120117 repayFullLoan : true ,
121- swap : {
122- ...fakeSwap ,
123- direction : 'exactAmountOut ' as const ,
124- toTokenAmountReceivedMantissa : fakeAmountMantissa ,
125- maximumFromTokenAmountSoldMantissa : fakeAmountMantissa ,
126- expectedFromTokenAmountSoldMantissa : fakeAmountMantissa ,
118+ swapQuote : {
119+ ...fakeSwapQuote ,
120+ direction : 'exact-out ' as const ,
121+ toTokenAmountReceivedMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
122+ maximumFromTokenAmountSoldMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
123+ expectedFromTokenAmountSoldMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
127124 } ,
128125 } ;
129126
@@ -142,16 +139,14 @@ describe('useSwapTokensAndRepay', () => {
142139 `
143140 {
144141 "abi": Any<Array>,
145- "address": "0xfakeSwapRouterContractAddress ",
142+ "address": "0xfakeSwapRouterV2ContractAddress ",
146143 "args": [
144+ "${ repayFullLoanInput . vToken . address } ",
145+ "${ repayFullLoanInput . swapQuote . fromToken . address } ",
147146 10000000000000000n,
148- [
149- "0xB9e0E753630434d7863528cc73CB7AC638a7c8ff",
150- "0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB",
151- ],
152- 1747386407n,
147+ "0x",
153148 ],
154- "functionName": "swapTokensForFullBNBDebtAndRepay ",
149+ "functionName": "swapAndRepayFull ",
155150 }
156151 ` ,
157152 ) ;
@@ -163,7 +158,6 @@ describe('useSwapTokensAndRepay', () => {
163158 [
164159 "Tokens swapped and repaid",
165160 {
166- "exchangeRate": 1,
167161 "fromTokenAmountTokens": 0.01,
168162 "fromTokenSymbol": "XVS",
169163 "poolName": "Fake Pool",
@@ -186,12 +180,15 @@ describe('useSwapTokensAndRepay', () => {
186180
187181 const swapBnbInput = {
188182 ...fakeInput ,
189- swap : {
190- ...fakeSwap ,
191- fromToken : bnb ,
183+ swapQuote : {
184+ ...fakeSwapQuote ,
185+ fromToken : {
186+ ...bnb ,
187+ tokenWrapped : bnb ,
188+ } ,
192189 toToken : xvs ,
193- fromTokenAmountSoldMantissa : fakeAmountMantissa ,
194- minimumToTokenAmountReceivedMantissa : fakeAmountMantissa ,
190+ fromTokenAmountSoldMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
191+ minimumToTokenAmountReceivedMantissa : BigInt ( fakeAmountMantissa . toFixed ( ) ) ,
195192 } ,
196193 } ;
197194
@@ -210,17 +207,13 @@ describe('useSwapTokensAndRepay', () => {
210207 `
211208 {
212209 "abi": Any<Array>,
213- "address": "0xfakeSwapRouterContractAddress ",
210+ "address": "0xfakeSwapRouterV2ContractAddress ",
214211 "args": [
215- "0x2E7222e51c0f6e98610A1543Aa3836E092CDe62c ",
212+ "${ swapBnbInput . vToken . address } ",
216213 10000000000000000n,
217- [
218- "0xB9e0E753630434d7863528cc73CB7AC638a7c8ff",
219- "0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB",
220- ],
221- 1747386407n,
214+ "0x",
222215 ],
223- "functionName": "swapBNBForExactTokensAndRepay ",
216+ "functionName": "swapNativeAndRepay ",
224217 "value": 10000000000000000n,
225218 }
226219 ` ,
@@ -233,7 +226,6 @@ describe('useSwapTokensAndRepay', () => {
233226 [
234227 "Tokens swapped and repaid",
235228 {
236- "exchangeRate": 1,
237229 "fromTokenAmountTokens": 0.01,
238230 "fromTokenSymbol": "XVS",
239231 "poolName": "Fake Pool",
0 commit comments