| 618 | |
| 619 | #[tokio::test(flavor = "multi_thread")] |
| 620 | async fn post_simulate_stateful() { |
| 621 | let filter = filter(config()); |
| 622 | |
| 623 | let new_simulation_req = serde_json::json!({ |
| 624 | "chainId": 1, |
| 625 | "gasLimit": 5000000, |
| 626 | "blockNumber": 16968594, |
| 627 | }); |
| 628 | |
| 629 | let res = warp::test::request() |
| 630 | .method("POST") |
| 631 | .path("/simulate-stateful") |
| 632 | .json(&new_simulation_req) |
| 633 | .reply(&filter) |
| 634 | .await; |
| 635 | |
| 636 | assert_eq!(res.status(), 200); |
| 637 | |
| 638 | let simulation_response_body: StatefulSimulationResponse = |
| 639 | serde_json::from_slice(res.body()).unwrap(); |
| 640 | assert_eq!( |
| 641 | simulation_response_body |
| 642 | .stateful_simulation_id |
| 643 | .to_string() |
| 644 | .len(), |
| 645 | 36 |
| 646 | ); |
| 647 | |
| 648 | let first_request = serde_json::json!([{ |
| 649 | "chainId": 1, |
| 650 | "from": "0x93621dca56fe26cdee86e4f6b18e116e9758ff11", |
| 651 | "to": "0xdac17f958d2ee523a2206206994597c13d831ec7", |
| 652 | "data": "0x095ea7b300000000000000000000000060f727bdead2ce49b00f2a2133fc707b931d130b0000000000000000000000000000000000000000000000000000000000989680", |
| 653 | "gasLimit": 5000000, |
| 654 | "blockNumber": 16968595, |
| 655 | }, { |
| 656 | "chainId": 1, |
| 657 | "from": "0x93621dca56fe26cdee86e4f6b18e116e9758ff11", |
| 658 | "to": "0x60f727bdead2ce49b00f2a2133fc707b931d130b", |
| 659 | "data": "0x8fd8d1bbffc9011b73f477fef5d4ebdd0903025283464275113654045eef0ce1ba22ccea000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000006f8b2cb4f0100ffffffffff057e7d64d987cab6eed08a191c4c2459daf2f8ed0b095ea7b3010102ffffffffffdac17f958d2ee523a2206206994597c13d831ec719198595a183ffffffffffffdef1c0ded9bec7f1a1670819833240f027b25efff8b2cb4f0100ffffffffff007e7d64d987cab6eed08a191c4c2459daf2f8ed0bb67d77c5010005ffffffff00742f2c5d96c0858d00860039c22d2805bed420e8a1903eab030004ffffffffffae7ab96520de3a18e5e111b5eaab095312d7fe84000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000002e00000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000002000000000000000000000000060f727bdead2ce49b00f2a2133fc707b931d130b0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000000000000000000128d9627aa40000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000098968000000000000000000000000000000000000000000000000000130e53e715e8a500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee869584cd00000000000000000000000010000000000000000000000000000000000000110000000000000000000000000000000000000000000000cef2d4383a642acb0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", |
| 660 | "gasLimit": 5000000, |
| 661 | "blockNumber": 16968596, |
| 662 | }]); |
| 663 | |
| 664 | let res = warp::test::request() |
| 665 | .method("POST") |
| 666 | .path( |
| 667 | format!( |
| 668 | "/simulate-stateful/{}", |
| 669 | simulation_response_body.stateful_simulation_id |
| 670 | ) |
| 671 | .as_str(), |
| 672 | ) |
| 673 | .json(&first_request) |
| 674 | .reply(&filter) |
| 675 | .await; |
| 676 | |
| 677 | assert_eq!(res.status(), 200); |