Skip to content

Commit bb2f363

Browse files
committed
wip
1 parent 8145b26 commit bb2f363

File tree

1 file changed

+52
-48
lines changed

1 file changed

+52
-48
lines changed

crates/rpc/rpc-server/tests/controller_deployment.rs

Lines changed: 52 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ use katana_pool::ordering::FiFo;
2121
use katana_pool::pool::Pool;
2222
use katana_pool::validation::NoopValidator;
2323
use katana_primitives::transaction::ExecutableTxWithHash;
24-
use katana_primitives::Felt;
24+
use katana_primitives::{felt, Felt};
2525
use katana_provider::test_utils::test_provider;
2626
use katana_rpc_server::middleware::cartridge::ControllerDeploymentLayer;
2727
use katana_rpc_server::starknet::{PendingBlockProvider, StarknetApi, StarknetApiConfig};
@@ -49,18 +49,17 @@ use url::Url;
4949
async fn estimate_fee_forwards_when_no_controllers() {
5050
let inner_responses = {
5151
let mut m = HashMap::new();
52-
// Return a valid fee estimate response for 1 transaction.
5352
m.insert(
5453
"starknet_estimateFee".to_string(),
55-
json!([{
56-
"l1_gas_consumed": "0x1",
57-
"l1_gas_price": "0x2",
58-
"l2_gas_consumed": "0x3",
59-
"l2_gas_price": "0x4",
60-
"l1_data_gas_consumed": "0x5",
61-
"l1_data_gas_price": "0x6",
62-
"overall_fee": "0x7"
63-
}]),
54+
vec![FeeEstimate {
55+
l1_gas_consumed: felt!("1"),
56+
l1_gas_price: felt!("2"),
57+
l2_gas_consumed: felt!("3"),
58+
l2_gas_price: felt!("4"),
59+
l1_data_gas_consumed: felt!("5"),
60+
l1_data_gas_price: felt!("6"),
61+
overall_fee: felt!("7"),
62+
}],
6463
);
6564
m
6665
};
@@ -107,26 +106,26 @@ async fn estimate_fee_prepends_deploy_tx_for_controller() {
107106
// The inner service will receive 2 txs (1 deploy + 1 original).
108107
m.insert(
109108
"starknet_estimateFee".to_string(),
110-
json!([
111-
{
112-
"l1_gas_consumed": "0xa",
113-
"l1_gas_price": "0xb",
114-
"l2_gas_consumed": "0xc",
115-
"l2_gas_price": "0xd",
116-
"l1_data_gas_consumed": "0xe",
117-
"l1_data_gas_price": "0xf",
118-
"overall_fee": "0x10"
109+
vec![
110+
FeeEstimate {
111+
l1_gas_consumed: felt!("0xa"),
112+
l1_gas_price: felt!("0xb"),
113+
l2_gas_consumed: felt!("0xc"),
114+
l2_gas_price: felt!("0xd"),
115+
l1_data_gas_consumed: felt!("0xe"),
116+
l1_data_gas_price: felt!("0xf"),
117+
overall_fee: felt!("0x10"),
119118
},
120-
{
121-
"l1_gas_consumed": "0x1",
122-
"l1_gas_price": "0x2",
123-
"l2_gas_consumed": "0x3",
124-
"l2_gas_price": "0x4",
125-
"l1_data_gas_consumed": "0x5",
126-
"l1_data_gas_price": "0x6",
127-
"overall_fee": "0x7"
128-
}
129-
]),
119+
FeeEstimate {
120+
l1_gas_consumed: felt!("1"),
121+
l1_gas_price: felt!("2"),
122+
l2_gas_consumed: felt!("3"),
123+
l2_gas_price: felt!("4"),
124+
l1_data_gas_consumed: felt!("5"),
125+
l1_data_gas_price: felt!("6"),
126+
overall_fee: felt!("7"),
127+
},
128+
],
130129
);
131130
m
132131
};
@@ -177,15 +176,15 @@ async fn estimate_fee_forwards_for_non_controller() {
177176
let mut m = HashMap::new();
178177
m.insert(
179178
"starknet_estimateFee".to_string(),
180-
json!([{
181-
"l1_gas_consumed": "0x1",
182-
"l1_gas_price": "0x2",
183-
"l2_gas_consumed": "0x3",
184-
"l2_gas_price": "0x4",
185-
"l1_data_gas_consumed": "0x5",
186-
"l1_data_gas_price": "0x6",
187-
"overall_fee": "0x7"
188-
}]),
179+
vec![FeeEstimate {
180+
l1_gas_consumed: felt!("1"),
181+
l1_gas_price: felt!("2"),
182+
l2_gas_consumed: felt!("3"),
183+
l2_gas_price: felt!("4"),
184+
l1_data_gas_consumed: felt!("5"),
185+
l1_data_gas_price: felt!("6"),
186+
overall_fee: felt!("7"),
187+
}],
189188
);
190189
m
191190
};
@@ -228,17 +227,22 @@ async fn estimate_fee_deduplicates_same_controller() {
228227
m
229228
};
230229

230+
let zero_fee = FeeEstimate {
231+
l1_gas_consumed: felt!("0"),
232+
l1_gas_price: felt!("0"),
233+
l2_gas_consumed: felt!("0"),
234+
l2_gas_price: felt!("0"),
235+
l1_data_gas_consumed: felt!("0"),
236+
l1_data_gas_price: felt!("0"),
237+
overall_fee: felt!("0"),
238+
};
239+
231240
let inner_responses = {
232241
let mut m = HashMap::new();
233242
// Inner service receives 4 txs (1 deploy + 3 original).
234243
m.insert(
235244
"starknet_estimateFee".to_string(),
236-
json!([
237-
{ "l1_gas_consumed": "0x0", "l1_gas_price": "0x0", "l2_gas_consumed": "0x0", "l2_gas_price": "0x0", "l1_data_gas_consumed": "0x0", "l1_data_gas_price": "0x0", "overall_fee": "0x0" },
238-
{ "l1_gas_consumed": "0x0", "l1_gas_price": "0x0", "l2_gas_consumed": "0x0", "l2_gas_price": "0x0", "l1_data_gas_consumed": "0x0", "l1_data_gas_price": "0x0", "overall_fee": "0x0" },
239-
{ "l1_gas_consumed": "0x0", "l1_gas_price": "0x0", "l2_gas_consumed": "0x0", "l2_gas_price": "0x0", "l1_data_gas_consumed": "0x0", "l1_data_gas_price": "0x0", "overall_fee": "0x0" },
240-
{ "l1_gas_consumed": "0x0", "l1_gas_price": "0x0", "l2_gas_consumed": "0x0", "l2_gas_price": "0x0", "l1_data_gas_consumed": "0x0", "l1_data_gas_price": "0x0", "overall_fee": "0x0" }
241-
]),
245+
vec![zero_fee.clone(), zero_fee.clone(), zero_fee.clone(), zero_fee],
242246
);
243247
m
244248
};
@@ -600,11 +604,11 @@ struct MockRpcService {
600604
/// Records all calls.
601605
calls: Arc<Mutex<Vec<RecordedCall>>>,
602606
/// Pre-configured response JSON per method name.
603-
responses: Arc<HashMap<String, serde_json::Value>>,
607+
responses: Arc<HashMap<String, Vec<FeeEstimate>>>,
604608
}
605609

606610
impl MockRpcService {
607-
fn new(responses: HashMap<String, serde_json::Value>) -> Self {
611+
fn new(responses: HashMap<String, Vec<FeeEstimate>>) -> Self {
608612
Self { calls: Arc::new(Mutex::new(Vec::new())), responses: Arc::new(responses) }
609613
}
610614

@@ -748,7 +752,7 @@ struct TestSetup {
748752

749753
async fn setup_test(
750754
cartridge_api_responses: HashMap<String, serde_json::Value>,
751-
inner_rpc_responses: HashMap<String, serde_json::Value>,
755+
inner_rpc_responses: HashMap<String, Vec<FeeEstimate>>,
752756
) -> TestSetup {
753757
let (mock_url, mock_api_state) = start_mock_cartridge_api(cartridge_api_responses).await;
754758

0 commit comments

Comments
 (0)