chore: Rename to TradeSurplus
This commit is contained in:
@@ -106,7 +106,7 @@
|
|||||||
"./contracts/src/transformers/LibERC20Transformer.sol",
|
"./contracts/src/transformers/LibERC20Transformer.sol",
|
||||||
"./contracts/src/transformers/LogMetadataTransformer.sol",
|
"./contracts/src/transformers/LogMetadataTransformer.sol",
|
||||||
"./contracts/src/transformers/PayTakerTransformer.sol",
|
"./contracts/src/transformers/PayTakerTransformer.sol",
|
||||||
"./contracts/src/transformers/PositiveSlippageFeeTransformer.sol",
|
"./contracts/src/transformers/TradeSurplusTransformer.sol",
|
||||||
"./contracts/src/transformers/Transformer.sol",
|
"./contracts/src/transformers/Transformer.sol",
|
||||||
"./contracts/src/transformers/WethTransformer.sol",
|
"./contracts/src/transformers/WethTransformer.sol",
|
||||||
"./contracts/src/transformers/bridges/AbstractBridgeAdapter.sol",
|
"./contracts/src/transformers/bridges/AbstractBridgeAdapter.sol",
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ import "../errors/LibTransformERC20RichErrors.sol";
|
|||||||
import "./Transformer.sol";
|
import "./Transformer.sol";
|
||||||
import "./LibERC20Transformer.sol";
|
import "./LibERC20Transformer.sol";
|
||||||
|
|
||||||
/// @dev A transformer that transfers tokens to arbitrary addresses.
|
/// @dev A transformer that transfers token surplus to arbitrary addresses.
|
||||||
contract PositiveSlippageFeeTransformer is Transformer {
|
contract TradeSurplusTransformer is Transformer {
|
||||||
using LibRichErrorsV06 for bytes;
|
using LibRichErrorsV06 for bytes;
|
||||||
using LibSafeMathV06 for uint256;
|
using LibSafeMathV06 for uint256;
|
||||||
using LibERC20Transformer for IERC20TokenV06;
|
using LibERC20Transformer for IERC20TokenV06;
|
||||||
@@ -36,9 +36,9 @@
|
|||||||
"typechain": "typechain --target=ethers-v5 --out-dir='typechain-wrappers' './foundry-artifacts/**/*.json'"
|
"typechain": "typechain --target=ethers-v5 --out-dir='typechain-wrappers' './foundry-artifacts/**/*.json'"
|
||||||
},
|
},
|
||||||
"config": {
|
"config": {
|
||||||
"publicInterfaceContracts": "IZeroEx,ZeroEx,FullMigration,InitialMigration,IFlashWallet,IERC20Transformer,IOwnableFeature,ISimpleFunctionRegistryFeature,ITransformERC20Feature,FillQuoteTransformer,PayTakerTransformer,PositiveSlippageFeeTransformer,WethTransformer,OwnableFeature,SimpleFunctionRegistryFeature,TransformERC20Feature,AffiliateFeeTransformer,MetaTransactionsFeature,LogMetadataTransformer,LiquidityProviderFeature,ILiquidityProviderFeature,NativeOrdersFeature,INativeOrdersFeature,FeeCollectorController,FeeCollector,CurveLiquidityProvider,BatchFillNativeOrdersFeature,IBatchFillNativeOrdersFeature,MultiplexFeature,IMultiplexFeature,OtcOrdersFeature,IOtcOrdersFeature,AvalancheBridgeAdapter,BSCBridgeAdapter,CeloBridgeAdapter,EthereumBridgeAdapter,FantomBridgeAdapter,OptimismBridgeAdapter,PolygonBridgeAdapter",
|
"publicInterfaceContracts": "IZeroEx,ZeroEx,FullMigration,InitialMigration,IFlashWallet,IERC20Transformer,IOwnableFeature,ISimpleFunctionRegistryFeature,ITransformERC20Feature,FillQuoteTransformer,PayTakerTransformer,TradeSurplusTransformer,WethTransformer,OwnableFeature,SimpleFunctionRegistryFeature,TransformERC20Feature,AffiliateFeeTransformer,MetaTransactionsFeature,LogMetadataTransformer,LiquidityProviderFeature,ILiquidityProviderFeature,NativeOrdersFeature,INativeOrdersFeature,FeeCollectorController,FeeCollector,CurveLiquidityProvider,BatchFillNativeOrdersFeature,IBatchFillNativeOrdersFeature,MultiplexFeature,IMultiplexFeature,OtcOrdersFeature,IOtcOrdersFeature,AvalancheBridgeAdapter,BSCBridgeAdapter,CeloBridgeAdapter,EthereumBridgeAdapter,FantomBridgeAdapter,OptimismBridgeAdapter,PolygonBridgeAdapter",
|
||||||
"abis:comment": "This list is auto-generated by contracts-gen. Don't edit manually.",
|
"abis:comment": "This list is auto-generated by contracts-gen. Don't edit manually.",
|
||||||
"abis": "./test/generated-artifacts/@(AbstractBridgeAdapter|AffiliateFeeTransformer|ArbitrumBridgeAdapter|AvalancheBridgeAdapter|BSCBridgeAdapter|BatchFillNativeOrdersFeature|BootstrapFeature|BridgeProtocols|CeloBridgeAdapter|CurveLiquidityProvider|ERC1155OrdersFeature|ERC165Feature|ERC721OrdersFeature|EthereumBridgeAdapter|FantomBridgeAdapter|FeeCollector|FeeCollectorController|FillQuoteTransformer|FixinCommon|FixinEIP712|FixinERC1155Spender|FixinERC721Spender|FixinProtocolFees|FixinReentrancyGuard|FixinTokenSpender|FlashWallet|FullMigration|FundRecoveryFeature|IBatchFillNativeOrdersFeature|IBootstrapFeature|IBridgeAdapter|IERC1155OrdersFeature|IERC1155Token|IERC165Feature|IERC20Bridge|IERC20Transformer|IERC721OrdersFeature|IERC721Token|IFeature|IFeeRecipient|IFlashWallet|IFundRecoveryFeature|ILiquidityProvider|ILiquidityProviderFeature|ILiquidityProviderSandbox|IMetaTransactionsFeature|IMooniswapPool|IMultiplexFeature|INativeOrdersEvents|INativeOrdersFeature|IOtcOrdersFeature|IOwnableFeature|IPancakeSwapFeature|IPropertyValidator|ISimpleFunctionRegistryFeature|IStaking|ITakerCallback|ITestSimpleFunctionRegistryFeature|ITokenSpenderFeature|ITransformERC20Feature|IUniswapFeature|IUniswapV2Pair|IUniswapV3Feature|IUniswapV3Pool|IZeroEx|InitialMigration|LibBootstrap|LibCommonRichErrors|LibERC1155OrdersStorage|LibERC20Transformer|LibERC721OrdersStorage|LibFeeCollector|LibLiquidityProviderRichErrors|LibMetaTransactionsRichErrors|LibMetaTransactionsStorage|LibMigrate|LibNFTOrder|LibNFTOrdersRichErrors|LibNativeOrder|LibNativeOrdersRichErrors|LibNativeOrdersStorage|LibOtcOrdersStorage|LibOwnableRichErrors|LibOwnableStorage|LibProxyRichErrors|LibProxyStorage|LibReentrancyGuardStorage|LibSignature|LibSignatureRichErrors|LibSimpleFunctionRegistryRichErrors|LibSimpleFunctionRegistryStorage|LibStorage|LibTransformERC20RichErrors|LibTransformERC20Storage|LibWalletRichErrors|LiquidityProviderFeature|LiquidityProviderSandbox|LogMetadataTransformer|MetaTransactionsFeature|MixinAaveV2|MixinBalancer|MixinBalancerV2Batch|MixinBancor|MixinBancorV3|MixinCompound|MixinCryptoCom|MixinCurve|MixinCurveV2|MixinDodo|MixinDodoV2|MixinGMX|MixinKyberDmm|MixinLido|MixinMStable|MixinMakerPSM|MixinMooniswap|MixinNerve|MixinPlatypus|MixinShell|MixinSolidly|MixinSynthetix|MixinUniswap|MixinUniswapV2|MixinUniswapV3|MixinZeroExBridge|MooniswapLiquidityProvider|MultiplexFeature|MultiplexLiquidityProvider|MultiplexOtc|MultiplexRfq|MultiplexTransformERC20|MultiplexUniswapV2|MultiplexUniswapV3|NFTOrders|NativeOrdersCancellation|NativeOrdersFeature|NativeOrdersInfo|NativeOrdersProtocolFees|NativeOrdersSettlement|OptimismBridgeAdapter|OtcOrdersFeature|OwnableFeature|PancakeSwapFeature|PayTakerTransformer|PermissionlessTransformerDeployer|PolygonBridgeAdapter|PositiveSlippageFeeTransformer|SimpleFunctionRegistryFeature|TestCurve|TestDelegateCaller|TestFeeCollectorController|TestFeeRecipient|TestFillQuoteTransformerBridge|TestFillQuoteTransformerExchange|TestFillQuoteTransformerHost|TestFixinProtocolFees|TestFixinTokenSpender|TestFullMigration|TestInitialMigration|TestLibNativeOrder|TestLibSignature|TestLiquidityProvider|TestMetaTransactionsNativeOrdersFeature|TestMetaTransactionsTransformERC20Feature|TestMigrator|TestMintTokenERC20Transformer|TestMintableERC1155Token|TestMintableERC20Token|TestMintableERC721Token|TestMooniswap|TestNFTOrderPresigner|TestNativeOrdersFeature|TestNoEthRecipient|TestOrderSignerRegistryWithContractWallet|TestPermissionlessTransformerDeployerSuicidal|TestPermissionlessTransformerDeployerTransformer|TestPropertyValidator|TestRfqOriginRegistration|TestSimpleFunctionRegistryFeatureImpl1|TestSimpleFunctionRegistryFeatureImpl2|TestStaking|TestTokenSpenderERC20Token|TestTransformERC20|TestTransformerBase|TestTransformerDeployerTransformer|TestTransformerHost|TestUniswapV2Factory|TestUniswapV2Pool|TestUniswapV3Factory|TestUniswapV3Feature|TestUniswapV3Pool|TestWeth|TestWethTransformerHost|TransformERC20Feature|Transformer|TransformerDeployer|UniswapFeature|UniswapV3Feature|WethTransformer|ZeroEx|ZeroExOptimized).json"
|
"abis": "./test/generated-artifacts/@(AbstractBridgeAdapter|AffiliateFeeTransformer|ArbitrumBridgeAdapter|AvalancheBridgeAdapter|BSCBridgeAdapter|BatchFillNativeOrdersFeature|BootstrapFeature|BridgeProtocols|CeloBridgeAdapter|CurveLiquidityProvider|ERC1155OrdersFeature|ERC165Feature|ERC721OrdersFeature|EthereumBridgeAdapter|FantomBridgeAdapter|FeeCollector|FeeCollectorController|FillQuoteTransformer|FixinCommon|FixinEIP712|FixinERC1155Spender|FixinERC721Spender|FixinProtocolFees|FixinReentrancyGuard|FixinTokenSpender|FlashWallet|FullMigration|FundRecoveryFeature|IBatchFillNativeOrdersFeature|IBootstrapFeature|IBridgeAdapter|IERC1155OrdersFeature|IERC1155Token|IERC165Feature|IERC20Bridge|IERC20Transformer|IERC721OrdersFeature|IERC721Token|IFeature|IFeeRecipient|IFlashWallet|IFundRecoveryFeature|ILiquidityProvider|ILiquidityProviderFeature|ILiquidityProviderSandbox|IMetaTransactionsFeature|IMooniswapPool|IMultiplexFeature|INativeOrdersEvents|INativeOrdersFeature|IOtcOrdersFeature|IOwnableFeature|IPancakeSwapFeature|IPropertyValidator|ISimpleFunctionRegistryFeature|IStaking|ITakerCallback|ITestSimpleFunctionRegistryFeature|ITokenSpenderFeature|ITransformERC20Feature|IUniswapFeature|IUniswapV2Pair|IUniswapV3Feature|IUniswapV3Pool|IZeroEx|InitialMigration|LibBootstrap|LibCommonRichErrors|LibERC1155OrdersStorage|LibERC20Transformer|LibERC721OrdersStorage|LibFeeCollector|LibLiquidityProviderRichErrors|LibMetaTransactionsRichErrors|LibMetaTransactionsStorage|LibMigrate|LibNFTOrder|LibNFTOrdersRichErrors|LibNativeOrder|LibNativeOrdersRichErrors|LibNativeOrdersStorage|LibOtcOrdersStorage|LibOwnableRichErrors|LibOwnableStorage|LibProxyRichErrors|LibProxyStorage|LibReentrancyGuardStorage|LibSignature|LibSignatureRichErrors|LibSimpleFunctionRegistryRichErrors|LibSimpleFunctionRegistryStorage|LibStorage|LibTransformERC20RichErrors|LibTransformERC20Storage|LibWalletRichErrors|LiquidityProviderFeature|LiquidityProviderSandbox|LogMetadataTransformer|MetaTransactionsFeature|MixinAaveV2|MixinBalancer|MixinBalancerV2Batch|MixinBancor|MixinBancorV3|MixinCompound|MixinCryptoCom|MixinCurve|MixinCurveV2|MixinDodo|MixinDodoV2|MixinGMX|MixinKyberDmm|MixinLido|MixinMStable|MixinMakerPSM|MixinMooniswap|MixinNerve|MixinPlatypus|MixinShell|MixinSolidly|MixinSynthetix|MixinUniswap|MixinUniswapV2|MixinUniswapV3|MixinZeroExBridge|MooniswapLiquidityProvider|MultiplexFeature|MultiplexLiquidityProvider|MultiplexOtc|MultiplexRfq|MultiplexTransformERC20|MultiplexUniswapV2|MultiplexUniswapV3|NFTOrders|NativeOrdersCancellation|NativeOrdersFeature|NativeOrdersInfo|NativeOrdersProtocolFees|NativeOrdersSettlement|OptimismBridgeAdapter|OtcOrdersFeature|OwnableFeature|PancakeSwapFeature|PayTakerTransformer|PermissionlessTransformerDeployer|PolygonBridgeAdapter|SimpleFunctionRegistryFeature|TestCurve|TestDelegateCaller|TestFeeCollectorController|TestFeeRecipient|TestFillQuoteTransformerBridge|TestFillQuoteTransformerExchange|TestFillQuoteTransformerHost|TestFixinProtocolFees|TestFixinTokenSpender|TestFullMigration|TestInitialMigration|TestLibNativeOrder|TestLibSignature|TestLiquidityProvider|TestMetaTransactionsNativeOrdersFeature|TestMetaTransactionsTransformERC20Feature|TestMigrator|TestMintTokenERC20Transformer|TestMintableERC1155Token|TestMintableERC20Token|TestMintableERC721Token|TestMooniswap|TestNFTOrderPresigner|TestNativeOrdersFeature|TestNoEthRecipient|TestOrderSignerRegistryWithContractWallet|TestPermissionlessTransformerDeployerSuicidal|TestPermissionlessTransformerDeployerTransformer|TestPropertyValidator|TestRfqOriginRegistration|TestSimpleFunctionRegistryFeatureImpl1|TestSimpleFunctionRegistryFeatureImpl2|TestStaking|TestTokenSpenderERC20Token|TestTransformERC20|TestTransformerBase|TestTransformerDeployerTransformer|TestTransformerHost|TestUniswapV2Factory|TestUniswapV2Pool|TestUniswapV3Factory|TestUniswapV3Feature|TestUniswapV3Pool|TestWeth|TestWethTransformerHost|TradeSurplusTransformer|TransformERC20Feature|Transformer|TransformerDeployer|UniswapFeature|UniswapV3Feature|WethTransformer|ZeroEx|ZeroExOptimized).json"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ import * as OtcOrdersFeature from '../generated-artifacts/OtcOrdersFeature.json'
|
|||||||
import * as OwnableFeature from '../generated-artifacts/OwnableFeature.json';
|
import * as OwnableFeature from '../generated-artifacts/OwnableFeature.json';
|
||||||
import * as PayTakerTransformer from '../generated-artifacts/PayTakerTransformer.json';
|
import * as PayTakerTransformer from '../generated-artifacts/PayTakerTransformer.json';
|
||||||
import * as PolygonBridgeAdapter from '../generated-artifacts/PolygonBridgeAdapter.json';
|
import * as PolygonBridgeAdapter from '../generated-artifacts/PolygonBridgeAdapter.json';
|
||||||
import * as PositiveSlippageFeeTransformer from '../generated-artifacts/PositiveSlippageFeeTransformer.json';
|
|
||||||
import * as SimpleFunctionRegistryFeature from '../generated-artifacts/SimpleFunctionRegistryFeature.json';
|
import * as SimpleFunctionRegistryFeature from '../generated-artifacts/SimpleFunctionRegistryFeature.json';
|
||||||
|
import * as TradeSurplusTransformer from '../generated-artifacts/TradeSurplusTransformer.json';
|
||||||
import * as TransformERC20Feature from '../generated-artifacts/TransformERC20Feature.json';
|
import * as TransformERC20Feature from '../generated-artifacts/TransformERC20Feature.json';
|
||||||
import * as WethTransformer from '../generated-artifacts/WethTransformer.json';
|
import * as WethTransformer from '../generated-artifacts/WethTransformer.json';
|
||||||
import * as ZeroEx from '../generated-artifacts/ZeroEx.json';
|
import * as ZeroEx from '../generated-artifacts/ZeroEx.json';
|
||||||
@@ -56,7 +56,7 @@ export const artifacts = {
|
|||||||
ITransformERC20Feature: ITransformERC20Feature as ContractArtifact,
|
ITransformERC20Feature: ITransformERC20Feature as ContractArtifact,
|
||||||
FillQuoteTransformer: FillQuoteTransformer as ContractArtifact,
|
FillQuoteTransformer: FillQuoteTransformer as ContractArtifact,
|
||||||
PayTakerTransformer: PayTakerTransformer as ContractArtifact,
|
PayTakerTransformer: PayTakerTransformer as ContractArtifact,
|
||||||
PositiveSlippageFeeTransformer: PositiveSlippageFeeTransformer as ContractArtifact,
|
TradeSurplusTransformer: TradeSurplusTransformer as ContractArtifact,
|
||||||
WethTransformer: WethTransformer as ContractArtifact,
|
WethTransformer: WethTransformer as ContractArtifact,
|
||||||
OwnableFeature: OwnableFeature as ContractArtifact,
|
OwnableFeature: OwnableFeature as ContractArtifact,
|
||||||
SimpleFunctionRegistryFeature: SimpleFunctionRegistryFeature as ContractArtifact,
|
SimpleFunctionRegistryFeature: SimpleFunctionRegistryFeature as ContractArtifact,
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ export {
|
|||||||
OptimismBridgeAdapterContract,
|
OptimismBridgeAdapterContract,
|
||||||
PayTakerTransformerContract,
|
PayTakerTransformerContract,
|
||||||
PolygonBridgeAdapterContract,
|
PolygonBridgeAdapterContract,
|
||||||
PositiveSlippageFeeTransformerContract,
|
TradeSurplusTransformerContract,
|
||||||
TransformERC20FeatureContract,
|
TransformERC20FeatureContract,
|
||||||
WethTransformerContract,
|
WethTransformerContract,
|
||||||
ZeroExContract,
|
ZeroExContract,
|
||||||
|
|||||||
@@ -37,8 +37,8 @@ export * from '../generated-wrappers/otc_orders_feature';
|
|||||||
export * from '../generated-wrappers/ownable_feature';
|
export * from '../generated-wrappers/ownable_feature';
|
||||||
export * from '../generated-wrappers/pay_taker_transformer';
|
export * from '../generated-wrappers/pay_taker_transformer';
|
||||||
export * from '../generated-wrappers/polygon_bridge_adapter';
|
export * from '../generated-wrappers/polygon_bridge_adapter';
|
||||||
export * from '../generated-wrappers/positive_slippage_fee_transformer';
|
|
||||||
export * from '../generated-wrappers/simple_function_registry_feature';
|
export * from '../generated-wrappers/simple_function_registry_feature';
|
||||||
|
export * from '../generated-wrappers/trade_surplus_transformer';
|
||||||
export * from '../generated-wrappers/transform_erc20_feature';
|
export * from '../generated-wrappers/transform_erc20_feature';
|
||||||
export * from '../generated-wrappers/weth_transformer';
|
export * from '../generated-wrappers/weth_transformer';
|
||||||
export * from '../generated-wrappers/zero_ex';
|
export * from '../generated-wrappers/zero_ex';
|
||||||
|
|||||||
@@ -151,7 +151,6 @@ import * as PancakeSwapFeature from '../test/generated-artifacts/PancakeSwapFeat
|
|||||||
import * as PayTakerTransformer from '../test/generated-artifacts/PayTakerTransformer.json';
|
import * as PayTakerTransformer from '../test/generated-artifacts/PayTakerTransformer.json';
|
||||||
import * as PermissionlessTransformerDeployer from '../test/generated-artifacts/PermissionlessTransformerDeployer.json';
|
import * as PermissionlessTransformerDeployer from '../test/generated-artifacts/PermissionlessTransformerDeployer.json';
|
||||||
import * as PolygonBridgeAdapter from '../test/generated-artifacts/PolygonBridgeAdapter.json';
|
import * as PolygonBridgeAdapter from '../test/generated-artifacts/PolygonBridgeAdapter.json';
|
||||||
import * as PositiveSlippageFeeTransformer from '../test/generated-artifacts/PositiveSlippageFeeTransformer.json';
|
|
||||||
import * as SimpleFunctionRegistryFeature from '../test/generated-artifacts/SimpleFunctionRegistryFeature.json';
|
import * as SimpleFunctionRegistryFeature from '../test/generated-artifacts/SimpleFunctionRegistryFeature.json';
|
||||||
import * as TestCurve from '../test/generated-artifacts/TestCurve.json';
|
import * as TestCurve from '../test/generated-artifacts/TestCurve.json';
|
||||||
import * as TestDelegateCaller from '../test/generated-artifacts/TestDelegateCaller.json';
|
import * as TestDelegateCaller from '../test/generated-artifacts/TestDelegateCaller.json';
|
||||||
@@ -198,6 +197,7 @@ import * as TestUniswapV3Feature from '../test/generated-artifacts/TestUniswapV3
|
|||||||
import * as TestUniswapV3Pool from '../test/generated-artifacts/TestUniswapV3Pool.json';
|
import * as TestUniswapV3Pool from '../test/generated-artifacts/TestUniswapV3Pool.json';
|
||||||
import * as TestWeth from '../test/generated-artifacts/TestWeth.json';
|
import * as TestWeth from '../test/generated-artifacts/TestWeth.json';
|
||||||
import * as TestWethTransformerHost from '../test/generated-artifacts/TestWethTransformerHost.json';
|
import * as TestWethTransformerHost from '../test/generated-artifacts/TestWethTransformerHost.json';
|
||||||
|
import * as TradeSurplusTransformer from '../test/generated-artifacts/TradeSurplusTransformer.json';
|
||||||
import * as Transformer from '../test/generated-artifacts/Transformer.json';
|
import * as Transformer from '../test/generated-artifacts/Transformer.json';
|
||||||
import * as TransformERC20Feature from '../test/generated-artifacts/TransformERC20Feature.json';
|
import * as TransformERC20Feature from '../test/generated-artifacts/TransformERC20Feature.json';
|
||||||
import * as TransformerDeployer from '../test/generated-artifacts/TransformerDeployer.json';
|
import * as TransformerDeployer from '../test/generated-artifacts/TransformerDeployer.json';
|
||||||
@@ -311,7 +311,7 @@ export const artifacts = {
|
|||||||
LibERC20Transformer: LibERC20Transformer as ContractArtifact,
|
LibERC20Transformer: LibERC20Transformer as ContractArtifact,
|
||||||
LogMetadataTransformer: LogMetadataTransformer as ContractArtifact,
|
LogMetadataTransformer: LogMetadataTransformer as ContractArtifact,
|
||||||
PayTakerTransformer: PayTakerTransformer as ContractArtifact,
|
PayTakerTransformer: PayTakerTransformer as ContractArtifact,
|
||||||
PositiveSlippageFeeTransformer: PositiveSlippageFeeTransformer as ContractArtifact,
|
TradeSurplusTransformer: TradeSurplusTransformer as ContractArtifact,
|
||||||
Transformer: Transformer as ContractArtifact,
|
Transformer: Transformer as ContractArtifact,
|
||||||
WethTransformer: WethTransformer as ContractArtifact,
|
WethTransformer: WethTransformer as ContractArtifact,
|
||||||
AbstractBridgeAdapter: AbstractBridgeAdapter as ContractArtifact,
|
AbstractBridgeAdapter: AbstractBridgeAdapter as ContractArtifact,
|
||||||
|
|||||||
@@ -149,7 +149,6 @@ export * from '../test/generated-wrappers/pancake_swap_feature';
|
|||||||
export * from '../test/generated-wrappers/pay_taker_transformer';
|
export * from '../test/generated-wrappers/pay_taker_transformer';
|
||||||
export * from '../test/generated-wrappers/permissionless_transformer_deployer';
|
export * from '../test/generated-wrappers/permissionless_transformer_deployer';
|
||||||
export * from '../test/generated-wrappers/polygon_bridge_adapter';
|
export * from '../test/generated-wrappers/polygon_bridge_adapter';
|
||||||
export * from '../test/generated-wrappers/positive_slippage_fee_transformer';
|
|
||||||
export * from '../test/generated-wrappers/simple_function_registry_feature';
|
export * from '../test/generated-wrappers/simple_function_registry_feature';
|
||||||
export * from '../test/generated-wrappers/test_curve';
|
export * from '../test/generated-wrappers/test_curve';
|
||||||
export * from '../test/generated-wrappers/test_delegate_caller';
|
export * from '../test/generated-wrappers/test_delegate_caller';
|
||||||
@@ -196,6 +195,7 @@ export * from '../test/generated-wrappers/test_uniswap_v3_feature';
|
|||||||
export * from '../test/generated-wrappers/test_uniswap_v3_pool';
|
export * from '../test/generated-wrappers/test_uniswap_v3_pool';
|
||||||
export * from '../test/generated-wrappers/test_weth';
|
export * from '../test/generated-wrappers/test_weth';
|
||||||
export * from '../test/generated-wrappers/test_weth_transformer_host';
|
export * from '../test/generated-wrappers/test_weth_transformer_host';
|
||||||
|
export * from '../test/generated-wrappers/trade_surplus_transformer';
|
||||||
export * from '../test/generated-wrappers/transform_erc20_feature';
|
export * from '../test/generated-wrappers/transform_erc20_feature';
|
||||||
export * from '../test/generated-wrappers/transformer';
|
export * from '../test/generated-wrappers/transformer';
|
||||||
export * from '../test/generated-wrappers/transformer_deployer';
|
export * from '../test/generated-wrappers/transformer_deployer';
|
||||||
|
|||||||
@@ -18,24 +18,24 @@ pragma experimental ABIEncoderV2;
|
|||||||
import "@0x/contracts-erc20/contracts/src/v06/WETH9V06.sol";
|
import "@0x/contracts-erc20/contracts/src/v06/WETH9V06.sol";
|
||||||
|
|
||||||
import "utils/BaseTest.sol";
|
import "utils/BaseTest.sol";
|
||||||
import "../../contracts/src/transformers/PositiveSlippageFeeTransformer.sol";
|
import "../../contracts/src/transformers/TradeSurplusTransformer.sol";
|
||||||
import "../../contracts/src/transformers/IERC20Transformer.sol";
|
import "../../contracts/src/transformers/IERC20Transformer.sol";
|
||||||
|
|
||||||
contract PositiveSlippageFeeTransformerTest is BaseTest {
|
contract TradeSurplusTransformerTest is BaseTest {
|
||||||
address public owner = account1;
|
address public owner = account1;
|
||||||
address public feeRecipient = account2;
|
address public feeRecipient = account2;
|
||||||
WETH9V06 weth = new WETH9V06();
|
WETH9V06 weth = new WETH9V06();
|
||||||
IERC20TokenV06 token1 = IERC20TokenV06(address(weth));
|
IERC20TokenV06 token1 = IERC20TokenV06(address(weth));
|
||||||
|
|
||||||
PositiveSlippageFeeTransformer target = new PositiveSlippageFeeTransformer();
|
TradeSurplusTransformer target = new TradeSurplusTransformer();
|
||||||
|
|
||||||
function setUp() public {
|
function setUp() public {
|
||||||
vm.deal(address(this), 1e19);
|
vm.deal(address(this), 1e19);
|
||||||
weth.deposit{value: 10}();
|
weth.deposit{value: 10}();
|
||||||
}
|
}
|
||||||
|
|
||||||
function test_positiveSlippageFee() public {
|
function test_tradeSurplus() public {
|
||||||
// Send positive slippage to contract which executes PositiveSlippageFeeTransformer
|
// Send trade surplus to contract which executes TradeSurplusTransformer
|
||||||
weth.transfer(address(target), 10);
|
weth.transfer(address(target), 10);
|
||||||
uint256 bestCaseAmount = 1;
|
uint256 bestCaseAmount = 1;
|
||||||
|
|
||||||
@@ -44,7 +44,7 @@ contract PositiveSlippageFeeTransformerTest is BaseTest {
|
|||||||
sender: payable(address(this)),
|
sender: payable(address(this)),
|
||||||
recipient: payable(address(this)),
|
recipient: payable(address(this)),
|
||||||
data: abi.encode(
|
data: abi.encode(
|
||||||
PositiveSlippageFeeTransformer.TokenFee({
|
TradeSurplusTransformer.TokenFee({
|
||||||
token: IERC20TokenV06(token1),
|
token: IERC20TokenV06(token1),
|
||||||
bestCaseAmount: bestCaseAmount,
|
bestCaseAmount: bestCaseAmount,
|
||||||
recipient: payable(feeRecipient)
|
recipient: payable(feeRecipient)
|
||||||
@@ -56,7 +56,7 @@ contract PositiveSlippageFeeTransformerTest is BaseTest {
|
|||||||
assertEq(result, LibERC20Transformer.TRANSFORMER_SUCCESS);
|
assertEq(result, LibERC20Transformer.TRANSFORMER_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
function test_positiveSlippageFee_bestCaseEqualsAmount() public {
|
function test_tradeSurplus_bestCaseEqualsAmount() public {
|
||||||
uint256 bestCaseAmount = 10;
|
uint256 bestCaseAmount = 10;
|
||||||
weth.transfer(address(target), 10);
|
weth.transfer(address(target), 10);
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ contract PositiveSlippageFeeTransformerTest is BaseTest {
|
|||||||
sender: payable(address(this)),
|
sender: payable(address(this)),
|
||||||
recipient: payable(address(this)),
|
recipient: payable(address(this)),
|
||||||
data: abi.encode(
|
data: abi.encode(
|
||||||
PositiveSlippageFeeTransformer.TokenFee({
|
TradeSurplusTransformer.TokenFee({
|
||||||
token: IERC20TokenV06(token1),
|
token: IERC20TokenV06(token1),
|
||||||
bestCaseAmount: bestCaseAmount,
|
bestCaseAmount: bestCaseAmount,
|
||||||
recipient: payable(feeRecipient)
|
recipient: payable(feeRecipient)
|
||||||
@@ -77,7 +77,7 @@ contract PositiveSlippageFeeTransformerTest is BaseTest {
|
|||||||
assertEq(result, LibERC20Transformer.TRANSFORMER_SUCCESS);
|
assertEq(result, LibERC20Transformer.TRANSFORMER_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
function test_positiveSlippageFee_bestCaseGreaterThanAmount() public {
|
function test_tradeSurplus_bestCaseGreaterThanAmount() public {
|
||||||
uint256 bestCaseAmount = 10;
|
uint256 bestCaseAmount = 10;
|
||||||
weth.transfer(address(target), 1);
|
weth.transfer(address(target), 1);
|
||||||
|
|
||||||
@@ -86,7 +86,7 @@ contract PositiveSlippageFeeTransformerTest is BaseTest {
|
|||||||
sender: payable(address(this)),
|
sender: payable(address(this)),
|
||||||
recipient: payable(address(this)),
|
recipient: payable(address(this)),
|
||||||
data: abi.encode(
|
data: abi.encode(
|
||||||
PositiveSlippageFeeTransformer.TokenFee({
|
TradeSurplusTransformer.TokenFee({
|
||||||
token: IERC20TokenV06(token1),
|
token: IERC20TokenV06(token1),
|
||||||
bestCaseAmount: bestCaseAmount,
|
bestCaseAmount: bestCaseAmount,
|
||||||
recipient: payable(feeRecipient)
|
recipient: payable(feeRecipient)
|
||||||
@@ -38,7 +38,7 @@ import "src/transformers/WethTransformer.sol";
|
|||||||
import "src/transformers/FillQuoteTransformer.sol";
|
import "src/transformers/FillQuoteTransformer.sol";
|
||||||
import "src/transformers/PayTakerTransformer.sol";
|
import "src/transformers/PayTakerTransformer.sol";
|
||||||
import "src/transformers/AffiliateFeeTransformer.sol";
|
import "src/transformers/AffiliateFeeTransformer.sol";
|
||||||
import "src/transformers/PositiveSlippageFeeTransformer.sol";
|
import "src/transformers/TradeSurplusTransformer.sol";
|
||||||
import "src/transformers/bridges/IBridgeAdapter.sol";
|
import "src/transformers/bridges/IBridgeAdapter.sol";
|
||||||
import "src/transformers/bridges/EthereumBridgeAdapter.sol";
|
import "src/transformers/bridges/EthereumBridgeAdapter.sol";
|
||||||
|
|
||||||
|
|||||||
@@ -37,8 +37,8 @@
|
|||||||
"generated-artifacts/OwnableFeature.json",
|
"generated-artifacts/OwnableFeature.json",
|
||||||
"generated-artifacts/PayTakerTransformer.json",
|
"generated-artifacts/PayTakerTransformer.json",
|
||||||
"generated-artifacts/PolygonBridgeAdapter.json",
|
"generated-artifacts/PolygonBridgeAdapter.json",
|
||||||
"generated-artifacts/PositiveSlippageFeeTransformer.json",
|
|
||||||
"generated-artifacts/SimpleFunctionRegistryFeature.json",
|
"generated-artifacts/SimpleFunctionRegistryFeature.json",
|
||||||
|
"generated-artifacts/TradeSurplusTransformer.json",
|
||||||
"generated-artifacts/TransformERC20Feature.json",
|
"generated-artifacts/TransformERC20Feature.json",
|
||||||
"generated-artifacts/WethTransformer.json",
|
"generated-artifacts/WethTransformer.json",
|
||||||
"generated-artifacts/ZeroEx.json",
|
"generated-artifacts/ZeroEx.json",
|
||||||
@@ -188,7 +188,6 @@
|
|||||||
"test/generated-artifacts/PayTakerTransformer.json",
|
"test/generated-artifacts/PayTakerTransformer.json",
|
||||||
"test/generated-artifacts/PermissionlessTransformerDeployer.json",
|
"test/generated-artifacts/PermissionlessTransformerDeployer.json",
|
||||||
"test/generated-artifacts/PolygonBridgeAdapter.json",
|
"test/generated-artifacts/PolygonBridgeAdapter.json",
|
||||||
"test/generated-artifacts/PositiveSlippageFeeTransformer.json",
|
|
||||||
"test/generated-artifacts/SimpleFunctionRegistryFeature.json",
|
"test/generated-artifacts/SimpleFunctionRegistryFeature.json",
|
||||||
"test/generated-artifacts/TestCurve.json",
|
"test/generated-artifacts/TestCurve.json",
|
||||||
"test/generated-artifacts/TestDelegateCaller.json",
|
"test/generated-artifacts/TestDelegateCaller.json",
|
||||||
@@ -235,6 +234,7 @@
|
|||||||
"test/generated-artifacts/TestUniswapV3Pool.json",
|
"test/generated-artifacts/TestUniswapV3Pool.json",
|
||||||
"test/generated-artifacts/TestWeth.json",
|
"test/generated-artifacts/TestWeth.json",
|
||||||
"test/generated-artifacts/TestWethTransformerHost.json",
|
"test/generated-artifacts/TestWethTransformerHost.json",
|
||||||
|
"test/generated-artifacts/TradeSurplusTransformer.json",
|
||||||
"test/generated-artifacts/TransformERC20Feature.json",
|
"test/generated-artifacts/TransformERC20Feature.json",
|
||||||
"test/generated-artifacts/Transformer.json",
|
"test/generated-artifacts/Transformer.json",
|
||||||
"test/generated-artifacts/TransformerDeployer.json",
|
"test/generated-artifacts/TransformerDeployer.json",
|
||||||
|
|||||||
Reference in New Issue
Block a user