| 273 | |
| 274 | #[tokio::test(flavor = "multi_thread")] |
| 275 | async fn post_simulate_bundle() { |
| 276 | let filter = filter(config()); |
| 277 | |
| 278 | let json = serde_json::json!([{ |
| 279 | "chainId": 1, |
| 280 | "from": "0x93621dca56fe26cdee86e4f6b18e116e9758ff11", |
| 281 | "to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", |
| 282 | "data": "0x095ea7b300000000000000000000000060f727bdead2ce49b00f2a2133fc707b931d130b00000000000000000000000000000000000000000000000000000000010e3b75", |
| 283 | "gasLimit": 5000000, |
| 284 | "blockNumber": 16976359, |
| 285 | }, { |
| 286 | "chainId": 1, |
| 287 | "from": "0x93621dca56fe26cdee86e4f6b18e116e9758ff11", |
| 288 | "to": "0x60f727bdead2ce49b00f2a2133fc707b931d130b", |
| 289 | "data": "0x8fd8d1bb5ba86686a0554b3441d6dd4921c1f23dc8caac3b4e51d64f338c379a1f02385500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000c23b872dd01000102ffffffffa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48f8b2cb4f0101ffffffffff027e7d64d987cab6eed08a191c4c2459daf2f8ed0b095ea7b3010304ffffffffffa0b86991c6218b36c1d19d4a2e9eb0ce3606eb4819198595a185ffffffffffffdef1c0ded9bec7f1a1670819833240f027b25efff8b2cb4f0101ffffffffff057e7d64d987cab6eed08a191c4c2459daf2f8ed0bb67d77c5010502ffffffffff742f2c5d96c0858d00860039c22d2805bed420e870a082310101ffffffffff02ae7ab96520de3a18e5e111b5eaab095312d7fe84a1903eab030506ffffffffffae7ab96520de3a18e5e111b5eaab095312d7fe8470a082310101ffffffffff01ae7ab96520de3a18e5e111b5eaab095312d7fe84b67d77c5010102ffffffff01742f2c5d96c0858d00860039c22d2805bed420e86e7a43a3010107ffffffff017e7d64d987cab6eed08a191c4c2459daf2f8ed0b241c59120101ffffffffffff7e7d64d987cab6eed08a191c4c2459daf2f8ed0b000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000003a000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000093621dca56fe26cdee86e4f6b18e116e9758ff11000000000000000000000000000000000000000000000000000000000000002000000000000000000000000060f727bdead2ce49b00f2a2133fc707b931d130b000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000007581cd0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000010e3b750000000000000000000000000000000000000000000000000000000000000128d9627aa4000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000010e3b750000000000000000000000000000000000000000000000000020ba4479f1613100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee869584cd000000000000000000000000100000000000000000000000000000000000001100000000000000000000000000000000000000000000005931ace2d8642c3fd00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001", |
| 290 | "gasLimit": 5000000, |
| 291 | "blockNumber": 16976359, |
| 292 | }]); |
| 293 | |
| 294 | let res = warp::test::request() |
| 295 | .method("POST") |
| 296 | .path("/simulate-bundle") |
| 297 | .json(&json) |
| 298 | .reply(&filter) |
| 299 | .await; |
| 300 | |
| 301 | assert_eq!(res.status(), 200); |
| 302 | |
| 303 | let body: Vec<SimulationResponse> = serde_json::from_slice(res.body()).unwrap(); |
| 304 | |
| 305 | assert_eq!(body.len(), 2); |
| 306 | assert!(body[0].success); |
| 307 | assert!(body[1].success); |
| 308 | } |
| 309 | |
| 310 | #[tokio::test(flavor = "multi_thread")] |
| 311 | async fn post_simulate_bundle_second_reverts() { |