linted
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
// SPDX-License-Identifier: UNLICENSED
|
||||
pragma solidity ^0.8.30;
|
||||
/* solhint-disable erc20-unchecked-transfer */
|
||||
|
||||
import "forge-std/Test.sol";
|
||||
import "@abdk/ABDKMath64x64.sol";
|
||||
@@ -129,22 +130,23 @@ contract TestERC20 is ERC20 {
|
||||
/// @notice Gas testing contract for PartyPool - contains all gas measurement tests
|
||||
contract GasTest is Test {
|
||||
using ABDKMath64x64 for int128;
|
||||
using SafeERC20 for TestERC20;
|
||||
|
||||
PartyPlanner planner;
|
||||
PartyPool pool2;
|
||||
PartyPool pool10;
|
||||
PartyPool pool20;
|
||||
PartyPool pool50;
|
||||
PartyPlanner internal planner;
|
||||
PartyPool internal pool2;
|
||||
PartyPool internal pool10;
|
||||
PartyPool internal pool20;
|
||||
PartyPool internal pool50;
|
||||
|
||||
address alice;
|
||||
address bob;
|
||||
address internal alice;
|
||||
address internal bob;
|
||||
|
||||
// Common parameters
|
||||
int128 tradeFrac;
|
||||
int128 targetSlippage;
|
||||
int128 internal tradeFrac;
|
||||
int128 internal targetSlippage;
|
||||
|
||||
uint256 constant INIT_BAL = 1_000_000; // initial token units for each token (internal==amount when base==1)
|
||||
uint256 constant BASE = 1; // use base=1 so internal amounts correspond to raw integers (Q64.64 units)
|
||||
uint256 constant internal INIT_BAL = 1_000_000; // initial token units for each token (internal==amount when base==1)
|
||||
uint256 constant internal BASE = 1; // use base=1 so internal amounts correspond to raw integers (Q64.64 units)
|
||||
|
||||
/// @notice Helper function to create a pool with the specified number of tokens
|
||||
function createPool(uint256 numTokens) internal returns (PartyPool) {
|
||||
|
||||
@@ -711,7 +711,7 @@ contract LMSRStabilizedTest is Test {
|
||||
}
|
||||
|
||||
// Path 1: Direct swap from asset 0 to asset 2
|
||||
(int128 directAmountIn, int128 directAmountOut) = s.swapAmountsForExactInput(0, 2, directSwapAmount, 0);
|
||||
(/*int128 directAmountIn*/, int128 directAmountOut) = s.swapAmountsForExactInput(0, 2, directSwapAmount, 0);
|
||||
|
||||
// Restore original state for second path
|
||||
_updateCachedQInternal(backupQ);
|
||||
@@ -724,7 +724,7 @@ contract LMSRStabilizedTest is Test {
|
||||
s.qInternal[1] = s.qInternal[1].add(indirectAmountOut1);
|
||||
|
||||
// Second swap: asset 1 -> asset 2
|
||||
(int128 indirectAmountIn2, int128 indirectAmountOut2) = s.swapAmountsForExactInput(1, 2, indirectAmountOut1, 0);
|
||||
(/*int128 indirectAmountIn2*/, int128 indirectAmountOut2) = s.swapAmountsForExactInput(1, 2, indirectAmountOut1, 0);
|
||||
|
||||
// The path independence property isn't perfect due to discrete swap mechanics,
|
||||
// but the difference should be within reasonable bounds
|
||||
@@ -765,7 +765,7 @@ contract LMSRStabilizedTest is Test {
|
||||
s.qInternal[1] = s.qInternal[1].add(amountOut1);
|
||||
|
||||
// Step 2: Swap back asset 1 -> asset 0
|
||||
(int128 amountIn2, int128 amountOut2) = s.swapAmountsForExactInput(1, 0, amountOut1, 0);
|
||||
(/*int128 amountIn2*/, int128 amountOut2) = s.swapAmountsForExactInput(1, 0, amountOut1, 0);
|
||||
|
||||
// Calculate round-trip slippage: (initial amount - final amount) / initial amount
|
||||
int128 roundTripSlippage = (amountIn1.sub(amountOut2)).div(amountIn1);
|
||||
|
||||
@@ -4,11 +4,11 @@ pragma solidity ^0.8.30;
|
||||
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
|
||||
|
||||
contract MockERC20 is ERC20 {
|
||||
uint8 private immutable _decimals;
|
||||
uint8 private immutable DECIMALS;
|
||||
|
||||
constructor(string memory name, string memory symbol, uint8 decimals_) ERC20(name, symbol) {_decimals = decimals_;}
|
||||
constructor(string memory name, string memory symbol, uint8 decimals_) ERC20(name, symbol) {DECIMALS = decimals_;}
|
||||
|
||||
function decimals() public view virtual override returns (uint8) {return _decimals;}
|
||||
function decimals() public view virtual override returns (uint8) {return DECIMALS;}
|
||||
function mint(address account, uint256 amount) external {_mint(account, amount);}
|
||||
function burn(address account, uint256 amount) external {_burn(account, amount);}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// SPDX-License-Identifier: UNLICENSED
|
||||
/* solhint-disable */
|
||||
pragma solidity ^0.8.30;
|
||||
|
||||
import "forge-std/Test.sol";
|
||||
@@ -1389,3 +1390,4 @@ contract PartyPoolTest is Test {
|
||||
}
|
||||
|
||||
}
|
||||
/* solhint-enable */
|
||||
|
||||
Reference in New Issue
Block a user