@paraswap/dex-lib 4.0.22 → 4.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.idea/aws.xml +17 -0
- package/.idea/codeStyles/Project.xml +19 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/misc.xml +6 -0
- package/.idea/modules.xml +8 -0
- package/.idea/paraswap-dex-lib.iml +9 -0
- package/.idea/prettier.xml +7 -0
- package/.idea/vcs.xml +6 -0
- package/build/abi/integral/factory.json +333 -0
- package/build/abi/integral/oracle.json +501 -0
- package/build/abi/{inception/inception-ineth-pool.json → integral/pool.json} +522 -543
- package/build/abi/{wombat/pool.json → integral/relayer.json} +720 -473
- package/build/dex/aave-v1/aave-v1.d.ts +1 -2
- package/build/dex/aave-v1/aave-v1.js +0 -23
- package/build/dex/aave-v1/aave-v1.js.map +1 -1
- package/build/dex/balancer-v2/config.js +1 -1
- package/build/dex/balancer-v2/config.js.map +1 -1
- package/build/dex/fluid-dex/fluid-dex-generate-pool.d.ts +49 -0
- package/build/dex/fluid-dex/fluid-dex-generate-pool.js +104 -0
- package/build/dex/fluid-dex/fluid-dex-generate-pool.js.map +1 -0
- package/build/dex/generic-rfq/e2e-test-config.js +3 -3
- package/build/dex/generic-rfq/e2e-test-config.js.map +1 -1
- package/build/dex/integral/config.d.ts +4 -0
- package/build/dex/integral/config.js +20 -0
- package/build/dex/integral/config.js.map +1 -0
- package/build/dex/integral/context.d.ts +40 -0
- package/build/dex/integral/context.js +158 -0
- package/build/dex/integral/context.js.map +1 -0
- package/build/dex/integral/integral-factory.d.ts +24 -0
- package/build/dex/integral/integral-factory.js +95 -0
- package/build/dex/integral/integral-factory.js.map +1 -0
- package/build/dex/integral/integral-pool.d.ts +50 -0
- package/build/dex/integral/integral-pool.js +149 -0
- package/build/dex/integral/integral-pool.js.map +1 -0
- package/build/dex/integral/integral-pricing.d.ts +18 -0
- package/build/dex/integral/integral-pricing.js +114 -0
- package/build/dex/integral/integral-pricing.js.map +1 -0
- package/build/dex/integral/integral-relayer.d.ts +42 -0
- package/build/dex/integral/integral-relayer.js +192 -0
- package/build/dex/integral/integral-relayer.js.map +1 -0
- package/build/dex/integral/integral-token.d.ts +27 -0
- package/build/dex/integral/integral-token.js +59 -0
- package/build/dex/integral/integral-token.js.map +1 -0
- package/build/dex/integral/integral.d.ts +41 -0
- package/build/dex/integral/integral.js +376 -0
- package/build/dex/integral/integral.js.map +1 -0
- package/build/dex/integral/types.d.ts +85 -0
- package/build/dex/integral/types.js +9 -0
- package/build/dex/integral/types.js.map +1 -0
- package/build/dex/integral/utils-e2e.d.ts +9 -0
- package/build/dex/integral/utils-e2e.js +131 -0
- package/build/dex/integral/utils-e2e.js.map +1 -0
- package/build/dex/integral/utils.d.ts +17 -0
- package/build/dex/integral/utils.js +94 -0
- package/build/dex/integral/utils.js.map +1 -0
- package/build/dex/jarvis.d.ts +1 -2
- package/build/dex/jarvis.js +0 -58
- package/build/dex/jarvis.js.map +1 -1
- package/build/dex/maverick-v1/config.js +1 -1
- package/build/dex/maverick-v1/config.js.map +1 -1
- package/build/dex/platypus/platypus.d.ts +1 -2
- package/build/dex/platypus/platypus.js +0 -45
- package/build/dex/platypus/platypus.js.map +1 -1
- package/build/dex/stable-pool.js +8 -1
- package/build/dex/stable-pool.js.map +1 -1
- package/build/dex/swaap-v1/swaap-v1.d.ts +1 -2
- package/build/dex/swaap-v1/swaap-v1.js +0 -14
- package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
- package/build/dex/trader-joe-v2.1/optimizer.d.ts +2 -0
- package/build/dex/trader-joe-v2.1/optimizer.js +47 -0
- package/build/dex/trader-joe-v2.1/optimizer.js.map +1 -0
- package/build/dex/uniswap-v3/config.js +1 -1
- package/build/dex/uniswap-v3/config.js.map +1 -1
- package/build/dex/zerox/index.d.ts +26 -4
- package/build/dex/zerox/index.js +42 -50
- package/build/dex/zerox/index.js.map +1 -1
- package/build/dex/zerox/types.d.ts +0 -29
- package/build/dex/zerox/types.js +1 -8
- package/build/dex/zerox/types.js.map +1 -1
- package/package.json +1 -1
- package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +165 -102
- package/src/dex/balancer-v2/balancer-v2-integration.test.ts +238 -80
- package/src/dex/balancer-v2/config.ts +1 -2
- package/src/dex/generic-rfq/e2e-test-config.ts +3 -3
- package/src/dex/generic-rfq/generic-rfq-e2e.test.ts +2 -2
- package/src/dex/maverick-v1/config.ts +1 -2
- package/src/dex/uniswap-v3/config.ts +1 -2
- package/tests/constants-e2e.ts +1 -1
- package/tests/smart-tokens.ts +1 -3
- package/tests/tenderly-simulation.ts +149 -84
- package/tests/utils-e2e.ts +5 -2
- package/.vscode/launch.json +0 -53
- package/.vscode/settings.json +0 -2
- package/.vscode/tasks.json +0 -15
- package/build/abi/inception/inception-ratio-feed.json +0 -329
- package/build/abi/inception/inception-vault.json +0 -991
- package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +0 -52
- package/build/abi/usual-m-smart-m/usualM.abi.json +0 -483
- package/build/dex/aave-v2/tokens-avalanche.json +0 -44
- package/build/dex/aave-v2/tokens-mainnet.json +0 -188
- package/build/dex/aave-v2/tokens-polygon.json +0 -44
- package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +0 -729
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js +0 -732
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +0 -1
- package/build/dex/balancer-v3/abi/balancerRouter.d.ts +0 -1406
- package/build/dex/balancer-v3/abi/balancerRouter.js +0 -1175
- package/build/dex/balancer-v3/abi/balancerRouter.js.map +0 -1
- package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +0 -2081
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js +0 -1851
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +0 -1
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +0 -34
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +0 -406
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +0 -1
- package/build/dex/inception/config.d.ts +0 -4
- package/build/dex/inception/config.js +0 -109
- package/build/dex/inception/config.js.map +0 -1
- package/build/dex/inception/inception-event-pool.d.ts +0 -16
- package/build/dex/inception/inception-event-pool.js +0 -49
- package/build/dex/inception/inception-event-pool.js.map +0 -1
- package/build/dex/inception/inception.d.ts +0 -43
- package/build/dex/inception/inception.js +0 -180
- package/build/dex/inception/inception.js.map +0 -1
- package/build/dex/inception/tokens.d.ts +0 -9
- package/build/dex/inception/tokens.js +0 -28
- package/build/dex/inception/tokens.js.map +0 -1
- package/build/dex/inception/types.d.ts +0 -22
- package/build/dex/inception/types.js +0 -3
- package/build/dex/inception/types.js.map +0 -1
- package/build/dex/inception/utils.d.ts +0 -7
- package/build/dex/inception/utils.js +0 -58
- package/build/dex/inception/utils.js.map +0 -1
- package/build/dex/maker-psm/scripts/gem.abi.json +0 -136
- package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
- package/build/dex/maker-psm/scripts/validate-state.js +0 -185
- package/build/dex/maker-psm/scripts/validate-state.js.map +0 -1
- package/build/dex/maker-psm/scripts/vat.abi.json +0 -243
- package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +0 -1
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js +0 -53
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +0 -1
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +0 -17
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +0 -64
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +0 -1
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +0 -17
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +0 -79
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +0 -1
- package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +0 -4
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js +0 -43
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +0 -1
- package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +0 -1
- package/build/dex/uniswap-v3/uniswap-v3-worker.js +0 -10
- package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +0 -1
- package/build/dex/usual/usual-m-smart-m.d.ts +0 -17
- package/build/dex/usual/usual-m-smart-m.js +0 -50
- package/build/dex/usual/usual-m-smart-m.js.map +0 -1
- package/build/dex/usual-m-smart-m/config.d.ts +0 -3
- package/build/dex/usual-m-smart-m/config.js +0 -13
- package/build/dex/usual-m-smart-m/config.js.map +0 -1
- package/build/dex/usual-m-smart-m/types.d.ts +0 -7
- package/build/dex/usual-m-smart-m/types.js +0 -3
- package/build/dex/usual-m-smart-m/types.js.map +0 -1
- package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +0 -35
- package/build/dex/usual-m-smart-m/usual-m-smart-m.js +0 -161
- package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +0 -1
- package/build/dex/usual-m-usd0/config.d.ts +0 -3
- package/build/dex/usual-m-usd0/config.js +0 -14
- package/build/dex/usual-m-usd0/config.js.map +0 -1
- package/build/dex/usual-m-usd0/types.d.ts +0 -8
- package/build/dex/usual-m-usd0/types.js +0 -3
- package/build/dex/usual-m-usd0/types.js.map +0 -1
- package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +0 -35
- package/build/dex/usual-m-usd0/usual-m-usd0.js +0 -159
- package/build/dex/usual-m-usd0/usual-m-usd0.js.map +0 -1
|
@@ -30,11 +30,9 @@ async function getOnChainPricingForWeightedPool(
|
|
|
30
30
|
return 0n;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
const params = balancerV2.
|
|
33
|
+
const params = balancerV2.getBalancerV2BatchSwapParam(
|
|
34
34
|
srcTokenAddress,
|
|
35
35
|
destTokenAddress,
|
|
36
|
-
'0',
|
|
37
|
-
'0',
|
|
38
36
|
{
|
|
39
37
|
swaps: [
|
|
40
38
|
{
|
|
@@ -44,6 +42,8 @@ async function getOnChainPricingForWeightedPool(
|
|
|
44
42
|
],
|
|
45
43
|
},
|
|
46
44
|
side,
|
|
45
|
+
balancerV2.dexHelper.config.data.augustusV6Address!,
|
|
46
|
+
balancerV2.dexHelper.config.data.augustusV6Address!,
|
|
47
47
|
);
|
|
48
48
|
|
|
49
49
|
const calldata = [
|
|
@@ -611,85 +611,243 @@ describe('BalancerV2', function () {
|
|
|
611
611
|
});
|
|
612
612
|
|
|
613
613
|
describe('GyroE', () => {
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
price
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
614
|
+
describe('sDAI > GYD', () => {
|
|
615
|
+
// sDAI<>GYD - more likely to have continued liqudity
|
|
616
|
+
const gyroEAddr = '0x1cce5169bde03f3d5ad0206f6bd057953539dae6';
|
|
617
|
+
|
|
618
|
+
it('getPoolIdentifiers and getPricesVolume', async function () {
|
|
619
|
+
const network = Network.MAINNET;
|
|
620
|
+
const dexHelper = new DummyDexHelper(network);
|
|
621
|
+
// const blocknumber = await dexHelper.web3Provider.eth.getBlockNumber();
|
|
622
|
+
const blocknumber = 19425305;
|
|
623
|
+
const balancerV2 = new BalancerV2(network, dexKey, dexHelper);
|
|
624
|
+
const tokens = Tokens[network];
|
|
625
|
+
|
|
626
|
+
await balancerV2.initializePricing(blocknumber);
|
|
627
|
+
|
|
628
|
+
const pools = await balancerV2.getPoolIdentifiers(
|
|
629
|
+
tokens.GYD,
|
|
630
|
+
tokens.sDAI,
|
|
631
|
+
SwapSide.SELL,
|
|
632
|
+
blocknumber,
|
|
633
|
+
);
|
|
634
|
+
console.log('GYD <> sDAI Pool Identifiers (Mainnet): ', pools);
|
|
635
|
+
|
|
636
|
+
const isPool = pools.find(poolIdentifier =>
|
|
637
|
+
poolIdentifier.includes(gyroEAddr),
|
|
638
|
+
);
|
|
639
|
+
|
|
640
|
+
expect(isPool).toBeDefined();
|
|
641
|
+
|
|
642
|
+
const poolPrices = await balancerV2.getPricesVolume(
|
|
643
|
+
tokens.GYD,
|
|
644
|
+
tokens.sDAI,
|
|
645
|
+
amounts,
|
|
646
|
+
SwapSide.SELL,
|
|
647
|
+
blocknumber,
|
|
648
|
+
pools,
|
|
649
|
+
);
|
|
650
|
+
console.log('GYD <> sDAI Pool Prices (Mainnet): ', poolPrices);
|
|
651
|
+
|
|
652
|
+
expect(poolPrices).not.toBeNull();
|
|
653
|
+
checkPoolPrices(poolPrices!, amounts, SwapSide.SELL, dexKey);
|
|
654
|
+
const isPoolPrice = poolPrices!.find(price =>
|
|
655
|
+
price.data.poolId.includes(gyroEAddr),
|
|
656
|
+
);
|
|
657
|
+
expect(isPoolPrice).toBeDefined();
|
|
658
|
+
|
|
659
|
+
const onChainPrices = await getOnChainPricingForWeightedPool(
|
|
660
|
+
balancerV2,
|
|
661
|
+
blocknumber,
|
|
662
|
+
isPoolPrice!,
|
|
663
|
+
amounts,
|
|
664
|
+
tokens.GYD.address,
|
|
665
|
+
tokens.sDAI.address,
|
|
666
|
+
SwapSide.SELL,
|
|
667
|
+
);
|
|
668
|
+
|
|
669
|
+
console.log('GYD <> sDAI on-chain prices: ', onChainPrices);
|
|
670
|
+
|
|
671
|
+
expect(onChainPrices).toEqual(isPoolPrice!.prices);
|
|
672
|
+
|
|
673
|
+
await balancerV2.releaseResources();
|
|
674
|
+
});
|
|
675
|
+
|
|
676
|
+
it('getTopPoolsForToken', async function () {
|
|
677
|
+
const network = Network.MAINNET;
|
|
678
|
+
const dexHelper = new DummyDexHelper(network);
|
|
679
|
+
const blocknumber = await dexHelper.web3Provider.eth.getBlockNumber();
|
|
680
|
+
const balancerV2 = new BalancerV2(network, dexKey, dexHelper);
|
|
681
|
+
await balancerV2.initializePricing(blocknumber);
|
|
682
|
+
const tokens = Tokens[network];
|
|
683
|
+
|
|
684
|
+
const poolLiquidity = await balancerV2.getTopPoolsForToken(
|
|
685
|
+
tokens.sDAI.address.toLowerCase(),
|
|
686
|
+
10,
|
|
687
|
+
);
|
|
688
|
+
console.log('sDAI Top Pools (Mainnet):', poolLiquidity);
|
|
689
|
+
|
|
690
|
+
checkPoolsLiquidity(poolLiquidity, tokens.sDAI.address, dexKey);
|
|
691
|
+
const isTopPool = poolLiquidity.find(
|
|
692
|
+
pool => pool.address === gyroEAddr,
|
|
693
|
+
);
|
|
694
|
+
expect(isTopPool).toBeDefined();
|
|
695
|
+
await balancerV2.releaseResources();
|
|
696
|
+
});
|
|
673
697
|
});
|
|
674
698
|
|
|
675
|
-
|
|
676
|
-
const
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
699
|
+
describe('WETH / USDC', () => {
|
|
700
|
+
const gyroEAddr = '0x4c42b5057a8663e2b1ac21685d1502c937a03817';
|
|
701
|
+
|
|
702
|
+
it('SELL WETH -> USDC getPoolIdentifiers and getPricesVolume', async function () {
|
|
703
|
+
const network = Network.BASE;
|
|
704
|
+
|
|
705
|
+
const dexHelper = new DummyDexHelper(network);
|
|
706
|
+
const blocknumber = await dexHelper.web3Provider.eth.getBlockNumber();
|
|
707
|
+
// const blocknumber = 19425305;
|
|
708
|
+
const balancerV2 = new BalancerV2(network, dexKey, dexHelper);
|
|
709
|
+
const tokens = Tokens[network];
|
|
710
|
+
|
|
711
|
+
const amounts = [
|
|
712
|
+
0n,
|
|
713
|
+
BI_POWS[18],
|
|
714
|
+
2n * BI_POWS[18],
|
|
715
|
+
3n * BI_POWS[18],
|
|
716
|
+
4n * BI_POWS[18],
|
|
717
|
+
5n * BI_POWS[18],
|
|
718
|
+
6n * BI_POWS[18],
|
|
719
|
+
7n * BI_POWS[18],
|
|
720
|
+
8n * BI_POWS[18],
|
|
721
|
+
9n * BI_POWS[18],
|
|
722
|
+
10n * BI_POWS[18],
|
|
723
|
+
];
|
|
724
|
+
|
|
725
|
+
await balancerV2.initializePricing(blocknumber);
|
|
726
|
+
|
|
727
|
+
const pools = await balancerV2.getPoolIdentifiers(
|
|
728
|
+
tokens.WETH,
|
|
729
|
+
tokens.USDC,
|
|
730
|
+
SwapSide.SELL,
|
|
731
|
+
blocknumber,
|
|
732
|
+
);
|
|
733
|
+
console.log('WETH <> USDC Pool Identifiers (Mainnet): ', pools);
|
|
734
|
+
|
|
735
|
+
const isPool = pools.find(poolIdentifier =>
|
|
736
|
+
poolIdentifier.includes(gyroEAddr),
|
|
737
|
+
);
|
|
738
|
+
|
|
739
|
+
expect(isPool).toBeDefined();
|
|
740
|
+
|
|
741
|
+
const poolPrices = await balancerV2.getPricesVolume(
|
|
742
|
+
tokens.WETH,
|
|
743
|
+
tokens.USDC,
|
|
744
|
+
amounts,
|
|
745
|
+
SwapSide.SELL,
|
|
746
|
+
blocknumber,
|
|
747
|
+
pools,
|
|
748
|
+
);
|
|
749
|
+
console.log('WETH <> USDC Pool Prices (Base): ', poolPrices);
|
|
750
|
+
|
|
751
|
+
expect(poolPrices).not.toBeNull();
|
|
752
|
+
|
|
753
|
+
// checkPoolPrices(poolPrices!, amounts, SwapSide.SELL, dexKey);
|
|
754
|
+
const isPoolPrice = poolPrices!.find(price =>
|
|
755
|
+
price.data.poolId.includes(gyroEAddr),
|
|
756
|
+
);
|
|
757
|
+
expect(isPoolPrice).toBeDefined();
|
|
758
|
+
|
|
759
|
+
const onChainPrices = await getOnChainPricingForWeightedPool(
|
|
760
|
+
balancerV2,
|
|
761
|
+
blocknumber,
|
|
762
|
+
isPoolPrice!,
|
|
763
|
+
amounts,
|
|
764
|
+
tokens.WETH.address,
|
|
765
|
+
tokens.USDC.address,
|
|
766
|
+
SwapSide.SELL,
|
|
767
|
+
);
|
|
768
|
+
|
|
769
|
+
console.log('WETH <> USDC on-chain prices: ', onChainPrices);
|
|
770
|
+
|
|
771
|
+
expect(onChainPrices).toEqual(isPoolPrice!.prices);
|
|
772
|
+
|
|
773
|
+
await balancerV2.releaseResources();
|
|
774
|
+
});
|
|
775
|
+
|
|
776
|
+
it('SELL USDC -> WETH getPoolIdentifiers and getPricesVolume', async function () {
|
|
777
|
+
const network = Network.BASE;
|
|
778
|
+
const dexHelper = new DummyDexHelper(network);
|
|
779
|
+
// const blocknumber = await dexHelper.web3Provider.eth.getBlockNumber();
|
|
780
|
+
const blocknumber = 24931862;
|
|
781
|
+
const balancerV2 = new BalancerV2(network, dexKey, dexHelper);
|
|
782
|
+
const tokens = Tokens[network];
|
|
783
|
+
|
|
784
|
+
const amounts = [
|
|
785
|
+
0n,
|
|
786
|
+
1000000n,
|
|
787
|
+
// BI_POWS[6],
|
|
788
|
+
// 2n * BI_POWS[6],
|
|
789
|
+
// 3n * BI_POWS[6],
|
|
790
|
+
// 4n * BI_POWS[6],
|
|
791
|
+
// 5n * BI_POWS[6],
|
|
792
|
+
// 6n * BI_POWS[6],
|
|
793
|
+
// 7n * BI_POWS[6],
|
|
794
|
+
// 8n * BI_POWS[6],
|
|
795
|
+
// 9n * BI_POWS[6],
|
|
796
|
+
// 10n * BI_POWS[6],
|
|
797
|
+
];
|
|
798
|
+
|
|
799
|
+
await balancerV2.initializePricing(blocknumber);
|
|
800
|
+
|
|
801
|
+
const pools = await balancerV2.getPoolIdentifiers(
|
|
802
|
+
tokens.USDC,
|
|
803
|
+
tokens.WETH,
|
|
804
|
+
SwapSide.SELL,
|
|
805
|
+
blocknumber,
|
|
806
|
+
);
|
|
807
|
+
console.log('USDC -> WETH Pool Identifiers (Base): ', pools);
|
|
808
|
+
|
|
809
|
+
const isPool = pools.find(poolIdentifier =>
|
|
810
|
+
poolIdentifier.includes(gyroEAddr),
|
|
811
|
+
);
|
|
812
|
+
|
|
813
|
+
expect(isPool).toBeDefined();
|
|
814
|
+
|
|
815
|
+
const poolPrices = await balancerV2.getPricesVolume(
|
|
816
|
+
tokens.USDC,
|
|
817
|
+
tokens.WETH,
|
|
818
|
+
amounts,
|
|
819
|
+
SwapSide.SELL,
|
|
820
|
+
blocknumber,
|
|
821
|
+
pools,
|
|
822
|
+
);
|
|
823
|
+
console.log('USDC -> WETH Pool Prices (Base): ', poolPrices);
|
|
824
|
+
|
|
825
|
+
expect(poolPrices).not.toBeNull();
|
|
826
|
+
|
|
827
|
+
// checkPoolPrices(poolPrices!, amounts, SwapSide.SELL, dexKey);
|
|
828
|
+
const isPoolPrice = poolPrices!.find(price =>
|
|
829
|
+
price.data.poolId.includes(gyroEAddr),
|
|
830
|
+
);
|
|
831
|
+
expect(isPoolPrice).toBeDefined();
|
|
832
|
+
|
|
833
|
+
console.log('isPoolPrice: ', isPoolPrice);
|
|
834
|
+
|
|
835
|
+
const onChainPrices = await getOnChainPricingForWeightedPool(
|
|
836
|
+
balancerV2,
|
|
837
|
+
blocknumber,
|
|
838
|
+
isPoolPrice!,
|
|
839
|
+
amounts,
|
|
840
|
+
tokens.USDC.address,
|
|
841
|
+
tokens.WETH.address,
|
|
842
|
+
SwapSide.SELL,
|
|
843
|
+
);
|
|
844
|
+
|
|
845
|
+
console.log('USDC -> WETH on-chain prices: ', onChainPrices);
|
|
846
|
+
|
|
847
|
+
expect(onChainPrices).toEqual(isPoolPrice!.prices);
|
|
848
|
+
|
|
849
|
+
await balancerV2.releaseResources();
|
|
850
|
+
});
|
|
693
851
|
});
|
|
694
852
|
});
|
|
695
853
|
});
|
|
@@ -21,8 +21,7 @@ export const BalancerConfig: DexConfigMap<DexParams> = {
|
|
|
21
21
|
vaultAddress: '0xBA12222222228d8Ba445958a75a0704d566BF2C8',
|
|
22
22
|
},
|
|
23
23
|
[Network.BASE]: {
|
|
24
|
-
subgraphURL:
|
|
25
|
-
'https://api.studio.thegraph.com/query/24660/balancer-base-v2/version/latest',
|
|
24
|
+
subgraphURL: 'E7XyutxXVLrp8njmjF16Hh38PCJuHm12RRyMt5ma4ctX',
|
|
26
25
|
vaultAddress: '0xBA12222222228d8Ba445958a75a0704d566BF2C8',
|
|
27
26
|
},
|
|
28
27
|
[Network.GNOSIS]: {
|
|
@@ -8,16 +8,16 @@ export const testConfig: {
|
|
|
8
8
|
amount: string;
|
|
9
9
|
}>;
|
|
10
10
|
} = {
|
|
11
|
-
[Network.
|
|
11
|
+
[Network.MAINNET]: [
|
|
12
12
|
{
|
|
13
|
-
srcToken: '
|
|
13
|
+
srcToken: 'USDT',
|
|
14
14
|
destToken: 'USDC',
|
|
15
15
|
amount: '10000',
|
|
16
16
|
swapSide: SwapSide.BUY,
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
19
|
srcToken: 'USDC',
|
|
20
|
-
destToken: '
|
|
20
|
+
destToken: 'USDT',
|
|
21
21
|
amount: '10000',
|
|
22
22
|
swapSide: SwapSide.SELL,
|
|
23
23
|
},
|
|
@@ -115,8 +115,8 @@ describe(`GenericRFQ ${dexKey} E2E`, () => {
|
|
|
115
115
|
`Please add "addBalance" and "addAllowance" functions for ${testCase.destToken} on ${Network[network]} (in constants-e2e.ts).`,
|
|
116
116
|
);
|
|
117
117
|
}
|
|
118
|
-
srcToken =
|
|
119
|
-
destToken =
|
|
118
|
+
srcToken = new SmartToken(tokens[testCase.srcToken]);
|
|
119
|
+
destToken = new SmartToken(tokens[testCase.destToken]);
|
|
120
120
|
|
|
121
121
|
srcToken.addBalance(testAccount.address, MAX_UINT);
|
|
122
122
|
srcToken.addAllowance(
|
|
@@ -14,8 +14,7 @@ export const MaverickV1Config: DexConfigMap<DexParams> = {
|
|
|
14
14
|
poolInspectorAddress: '0xaA5BF61a664109e959D69C38734d4EA7dF74e456',
|
|
15
15
|
},
|
|
16
16
|
[Network.BASE]: {
|
|
17
|
-
subgraphURL:
|
|
18
|
-
'https://api.studio.thegraph.com/query/42519/maverick-base/version/latest',
|
|
17
|
+
subgraphURL: 'CSxkHjxpG1TxTBQMn55uG1DWpdD4Lsix4RNX4RTLvK4T',
|
|
19
18
|
routerAddress: '0x32AED3Bce901DA12ca8489788F3A99fCe1056e14',
|
|
20
19
|
poolInspectorAddress: '0x65A3AD03Be97619284bA7AA1E3Ca05638B9d6364',
|
|
21
20
|
},
|
|
@@ -117,8 +117,7 @@ export const UniswapV3Config: DexConfigMap<DexParams> = {
|
|
|
117
117
|
chunksCount: 10,
|
|
118
118
|
initRetryFrequency: 10,
|
|
119
119
|
initHash: `0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54`,
|
|
120
|
-
subgraphURL:
|
|
121
|
-
'https://api.studio.thegraph.com/query/48211/uniswap-v3-base/version/latest',
|
|
120
|
+
subgraphURL: 'GqzP4Xaehti8KSfQmv3ZctFSjnSUYZ4En5NRsiTbvZpz',
|
|
122
121
|
},
|
|
123
122
|
},
|
|
124
123
|
SushiSwapV3: {
|
package/tests/constants-e2e.ts
CHANGED