From 9cecea896833b27ec855f1ea4d981dde64f869ac Mon Sep 17 00:00:00 2001 From: royvardhan Date: Fri, 24 Jan 2025 21:44:12 +0530 Subject: [PATCH 1/3] feat: add balance v2 encoder test --- src/encoding/evm/swap_encoder/encoders.rs | 50 +++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/src/encoding/evm/swap_encoder/encoders.rs b/src/encoding/evm/swap_encoder/encoders.rs index 5fb7cea..dc57523 100644 --- a/src/encoding/evm/swap_encoder/encoders.rs +++ b/src/encoding/evm/swap_encoder/encoders.rs @@ -159,4 +159,54 @@ mod tests { )) ); } + + #[tokio::test] + async fn test_encode_balancer_v2() { + let balancer_pool = ProtocolComponent { + id: String::from("0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640"), + protocol_system: String::from("vm:balancer_v2"), + ..Default::default() + }; + let swap = Swap { + component: balancer_pool, + token_in: Bytes::from("0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"), // WETH + token_out: Bytes::from("0x6b175474e89094c44da98b954eedeac495271d0f"), // DAI + split: 0f64, + }; + let encoding_context = EncodingContext { + receiver: Bytes::from("0x0000000000000000000000000000000000000001"), + exact_out: false, + router_address: Bytes::zero(20), + }; + let encoder = BalancerV2SwapEncoder::new(String::from("0x")); + let encoded_swap = encoder + .encode_swap(swap, encoding_context) + .unwrap(); + let hex_swap = encode(&encoded_swap); + + assert_eq!( + hex_swap, + String::from(concat!( + // offset pointer + "0000000000000000000000000000000000000000000000000000000000000020", + // token in + "000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + // token out + "0000000000000000000000006b175474e89094c44da98b954eedeac495271d0f", + // pool id offset + "00000000000000000000000000000000000000000000000000000000000000c0", + // receiver + "0000000000000000000000000000000000000000000000000000000000000001", + // exact out + "0000000000000000000000000000000000000000000000000000000000000000", + // approval needed + "0000000000000000000000000000000000000000000000000000000000000001", + // pool id length + "000000000000000000000000000000000000000000000000000000000000002a", + // pool id + "3078383865364130633264444432364645456236344630333961326334313239", + "3646634233663536343000000000000000000000000000000000000000000000" + )) + ); + } } From 7c198fff92bb6bb8858912008d0bb40364d8bcd6 Mon Sep 17 00:00:00 2001 From: royvardhan Date: Mon, 27 Jan 2025 13:36:18 +0530 Subject: [PATCH 2/3] fix: async --- src/encoding/evm/swap_encoder/encoders.rs | 31 +++++++++-------------- 1 file changed, 12 insertions(+), 19 deletions(-) diff --git a/src/encoding/evm/swap_encoder/encoders.rs b/src/encoding/evm/swap_encoder/encoders.rs index dc57523..3b6ff9a 100644 --- a/src/encoding/evm/swap_encoder/encoders.rs +++ b/src/encoding/evm/swap_encoder/encoders.rs @@ -106,7 +106,7 @@ impl SwapEncoder for BalancerV2SwapEncoder { encoding_context.exact_out, approval_needed, ); - Ok(args.abi_encode()) + Ok(args.abi_encode_packed()) } fn executor_address(&self) -> &str { @@ -121,8 +121,8 @@ mod tests { use super::*; - #[tokio::test] - async fn test_encode_uniswap_v2() { + #[test] + fn test_encode_uniswap_v2() { let usv2_pool = ProtocolComponent { id: String::from("0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640"), ..Default::default() @@ -160,8 +160,8 @@ mod tests { ); } - #[tokio::test] - async fn test_encode_balancer_v2() { + #[test] + fn test_encode_balancer_v2() { let balancer_pool = ProtocolComponent { id: String::from("0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640"), protocol_system: String::from("vm:balancer_v2"), @@ -187,25 +187,18 @@ mod tests { assert_eq!( hex_swap, String::from(concat!( - // offset pointer - "0000000000000000000000000000000000000000000000000000000000000020", // token in - "000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", // token out - "0000000000000000000000006b175474e89094c44da98b954eedeac495271d0f", - // pool id offset - "00000000000000000000000000000000000000000000000000000000000000c0", + "6b175474e89094c44da98b954eedeac495271d0f", + // pool id + "307838386536413063326444443236464545623634463033396132633431323936466342336635363430", // receiver - "0000000000000000000000000000000000000000000000000000000000000001", + "0000000000000000000000000000000000000001", // exact out - "0000000000000000000000000000000000000000000000000000000000000000", + "00", // approval needed - "0000000000000000000000000000000000000000000000000000000000000001", - // pool id length - "000000000000000000000000000000000000000000000000000000000000002a", - // pool id - "3078383865364130633264444432364645456236344630333961326334313239", - "3646634233663536343000000000000000000000000000000000000000000000" + "01" )) ); } From 6e81eccfdba5231ae940217fcc266ce1a4b4e145 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 27 Jan 2025 14:43:07 +0000 Subject: [PATCH 3/3] chore(release): 0.16.0 [skip ci] ## [0.16.0](https://github.com/propeller-heads/tycho-execution/compare/0.15.0...0.16.0) (2025-01-27) ### Features * add balance v2 encoder test ([9cecea8](https://github.com/propeller-heads/tycho-execution/commit/9cecea896833b27ec855f1ea4d981dde64f869ac)) ### Bug Fixes * async ([7c198ff](https://github.com/propeller-heads/tycho-execution/commit/7c198fff92bb6bb8858912008d0bb40364d8bcd6)) --- CHANGELOG.md | 12 ++++++++++++ Cargo.lock | 2 +- Cargo.toml | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7fbc62e..3d291a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,15 @@ +## [0.16.0](https://github.com/propeller-heads/tycho-execution/compare/0.15.0...0.16.0) (2025-01-27) + + +### Features + +* add balance v2 encoder test ([9cecea8](https://github.com/propeller-heads/tycho-execution/commit/9cecea896833b27ec855f1ea4d981dde64f869ac)) + + +### Bug Fixes + +* async ([7c198ff](https://github.com/propeller-heads/tycho-execution/commit/7c198fff92bb6bb8858912008d0bb40364d8bcd6)) + ## [0.15.0](https://github.com/propeller-heads/tycho-execution/compare/0.14.0...0.15.0) (2025-01-24) diff --git a/Cargo.lock b/Cargo.lock index 512032d..67969c5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4163,7 +4163,7 @@ dependencies = [ [[package]] name = "tycho-execution" -version = "0.15.0" +version = "0.16.0" dependencies = [ "alloy", "alloy-primitives", diff --git a/Cargo.toml b/Cargo.toml index df4e214..ba4c9f2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tycho-execution" -version = "0.15.0" +version = "0.16.0" edition = "2021" [dependencies]