@@ -19,12 +19,11 @@ contract EulerSwapFactoryTest is EulerSwapTestBase {
19
19
function testDeployPool () public {
20
20
uint256 allPoolsLengthBefore = eulerSwapFactory.allPoolsLength ();
21
21
22
- IEulerSwapFactory.DeployParams memory deployParams = IEulerSwapFactory.DeployParams (
23
- address (eTST), address (eTST2), holder, 0 , 1e18 , 1e18 , 0.4e18 , 0.85e18 , 50e18 , 50e18
24
- );
25
22
bytes32 salt = bytes32 (uint256 (1234 ));
23
+ IEulerSwap.Params memory poolParams = IEulerSwap.Params (address (eTST), address (eTST2), holder, 1e18 , 1e18 , 0 );
24
+ IEulerSwap.CurveParams memory curveParams = IEulerSwap.CurveParams (0.4e18 , 0.85e18 , 50e18 , 50e18 );
26
25
27
- address predictedAddress = predictPoolAddress (address (eulerSwapFactory), deployParams , salt);
26
+ address predictedAddress = predictPoolAddress (address (eulerSwapFactory), poolParams, curveParams , salt);
28
27
29
28
IEVC.BatchItem[] memory items = new IEVC.BatchItem [](2 );
30
29
@@ -38,7 +37,7 @@ contract EulerSwapFactoryTest is EulerSwapTestBase {
38
37
onBehalfOfAccount: holder,
39
38
targetContract: address (eulerSwapFactory),
40
39
value: 0 ,
41
- data: abi.encodeCall (EulerSwapFactory.deployPool, (deployParams , salt))
40
+ data: abi.encodeCall (EulerSwapFactory.deployPool, (poolParams, curveParams , salt))
42
41
});
43
42
44
43
vm.prank (holder);
@@ -59,12 +58,12 @@ contract EulerSwapFactoryTest is EulerSwapTestBase {
59
58
onBehalfOfAccount: holder,
60
59
targetContract: address (eulerSwapFactory),
61
60
value: 0 ,
62
- data: abi.encodeCall (EulerSwapFactory.deployPool, (deployParams , bytes32 (uint256 (12345 ))))
61
+ data: abi.encodeCall (EulerSwapFactory.deployPool, (poolParams, curveParams , bytes32 (uint256 (12345 ))))
63
62
});
64
63
65
64
vm.prank (holder);
66
65
vm.expectRevert (EulerSwapFactory.OldOperatorStillInstalled.selector );
67
- evc.batch (items);
66
+ evc.batch (items);
68
67
}
69
68
70
69
function testInvalidGetAllPoolsListSliceQuery () public {
@@ -74,63 +73,40 @@ contract EulerSwapFactoryTest is EulerSwapTestBase {
74
73
75
74
function testDeployWithAssetsOutOfOrderOrEqual () public {
76
75
bytes32 salt = bytes32 (uint256 (1234 ));
76
+ IEulerSwap.Params memory poolParams = IEulerSwap.Params (address (eTST), address (eTST), holder, 1e18 , 1e18 , 0 );
77
+ IEulerSwap.CurveParams memory curveParams = IEulerSwap.CurveParams (0.4e18 , 0.85e18 , 50e18 , 50e18 );
77
78
78
79
vm.prank (holder);
79
80
vm.expectRevert (EulerSwap.AssetsOutOfOrderOrEqual.selector );
80
- eulerSwapFactory.deployPool (
81
- IEulerSwapFactory.DeployParams (
82
- address (eTST), address (eTST), holder, 0 , 1e18 , 1e18 , 0.4e18 , 0.85e18 , 50e18 , 50e18
83
- ),
84
- salt
85
- );
81
+ eulerSwapFactory.deployPool (poolParams, curveParams, salt);
86
82
}
87
83
88
84
function testDeployWithBadFee () public {
89
85
bytes32 salt = bytes32 (uint256 (1234 ));
86
+ IEulerSwap.Params memory poolParams = IEulerSwap.Params (address (eTST), address (eTST2), holder, 1e18 , 1e18 , 1e18 );
87
+ IEulerSwap.CurveParams memory curveParams = IEulerSwap.CurveParams (0.4e18 , 0.85e18 , 50e18 , 50e18 );
90
88
91
89
vm.prank (holder);
92
90
vm.expectRevert (EulerSwap.BadFee.selector );
93
- eulerSwapFactory.deployPool (
94
- IEulerSwapFactory.DeployParams (
95
- address (eTST), address (eTST2), holder, 1e18 , 1e18 , 1e18 , 0.4e18 , 0.85e18 , 50e18 , 50e18
96
- ),
97
- salt
98
- );
91
+ eulerSwapFactory.deployPool (poolParams, curveParams, salt);
99
92
}
100
93
101
- function predictPoolAddress (address factoryAddress , IEulerSwapFactory.DeployParams memory params , bytes32 salt )
102
- internal
103
- pure
104
- returns (address )
105
- {
94
+ function predictPoolAddress (
95
+ address factoryAddress ,
96
+ IEulerSwap.Params memory poolParams ,
97
+ IEulerSwap.CurveParams memory curveParams ,
98
+ bytes32 salt
99
+ ) internal pure returns (address ) {
106
100
return address (
107
101
uint160 (
108
102
uint256 (
109
103
keccak256 (
110
104
abi.encodePacked (
111
105
bytes1 (0xff ),
112
106
factoryAddress,
113
- keccak256 (abi.encode (address (params.swapAccount ), salt)),
107
+ keccak256 (abi.encode (address (poolParams.myAccount ), salt)),
114
108
keccak256 (
115
- abi.encodePacked (
116
- type (EulerSwap).creationCode,
117
- abi.encode (
118
- IEulerSwap.Params ({
119
- vault0: params.vault0,
120
- vault1: params.vault1,
121
- myAccount: params.swapAccount,
122
- debtLimit0: params.debtLimit0,
123
- debtLimit1: params.debtLimit1,
124
- fee: params.fee
125
- }),
126
- IEulerSwap.CurveParams ({
127
- priceX: params.priceX,
128
- priceY: params.priceY,
129
- concentrationX: params.concentrationX,
130
- concentrationY: params.concentrationY
131
- })
132
- )
133
- )
109
+ abi.encodePacked (type (EulerSwap).creationCode, abi.encode (poolParams, curveParams))
134
110
)
135
111
)
136
112
)
0 commit comments