mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
feat: add operator fee params on RPC L1BlockInfo (#14269)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
This commit is contained in:
@ -85,6 +85,10 @@ pub struct OpReceiptFieldsBuilder {
|
||||
pub l1_blob_base_fee: Option<u128>,
|
||||
/// The current L1 blob base fee scalar.
|
||||
pub l1_blob_base_fee_scalar: Option<u128>,
|
||||
/// The current operator fee scalar.
|
||||
pub operator_fee_scalar: Option<u128>,
|
||||
/// The current L1 blob base fee scalar.
|
||||
pub operator_fee_constant: Option<u128>,
|
||||
}
|
||||
|
||||
impl OpReceiptFieldsBuilder {
|
||||
@ -102,6 +106,8 @@ impl OpReceiptFieldsBuilder {
|
||||
l1_base_fee_scalar: None,
|
||||
l1_blob_base_fee: None,
|
||||
l1_blob_base_fee_scalar: None,
|
||||
operator_fee_scalar: None,
|
||||
operator_fee_constant: None,
|
||||
}
|
||||
}
|
||||
|
||||
@ -139,6 +145,10 @@ impl OpReceiptFieldsBuilder {
|
||||
self.l1_blob_base_fee = l1_block_info.l1_blob_base_fee.map(|fee| fee.saturating_to());
|
||||
self.l1_blob_base_fee_scalar =
|
||||
l1_block_info.l1_blob_base_fee_scalar.map(|scalar| scalar.saturating_to());
|
||||
self.operator_fee_scalar =
|
||||
l1_block_info.operator_fee_scalar.map(|scalar| scalar.saturating_to());
|
||||
self.operator_fee_constant =
|
||||
l1_block_info.operator_fee_constant.map(|constant| constant.saturating_to());
|
||||
|
||||
Ok(self)
|
||||
}
|
||||
@ -169,6 +179,8 @@ impl OpReceiptFieldsBuilder {
|
||||
l1_base_fee_scalar,
|
||||
l1_blob_base_fee,
|
||||
l1_blob_base_fee_scalar,
|
||||
operator_fee_scalar,
|
||||
operator_fee_constant,
|
||||
} = self;
|
||||
|
||||
OpTransactionReceiptFields {
|
||||
@ -180,6 +192,8 @@ impl OpReceiptFieldsBuilder {
|
||||
l1_base_fee_scalar,
|
||||
l1_blob_base_fee,
|
||||
l1_blob_base_fee_scalar,
|
||||
operator_fee_scalar,
|
||||
operator_fee_constant,
|
||||
},
|
||||
deposit_nonce,
|
||||
deposit_receipt_version,
|
||||
@ -282,6 +296,8 @@ mod test {
|
||||
l1_base_fee_scalar: Some(5227),
|
||||
l1_blob_base_fee: Some(1),
|
||||
l1_blob_base_fee_scalar: Some(1014213),
|
||||
operator_fee_scalar: None,
|
||||
operator_fee_constant: None,
|
||||
},
|
||||
deposit_nonce: None,
|
||||
deposit_receipt_version: None,
|
||||
@ -323,6 +339,8 @@ mod test {
|
||||
l1_base_fee_scalar,
|
||||
l1_blob_base_fee,
|
||||
l1_blob_base_fee_scalar,
|
||||
operator_fee_scalar,
|
||||
operator_fee_constant,
|
||||
} = receipt_meta.l1_block_info;
|
||||
|
||||
assert_eq!(
|
||||
@ -356,6 +374,16 @@ mod test {
|
||||
TX_META_TX_1_OP_MAINNET_BLOCK_124665056.l1_block_info.l1_blob_base_fee_scalar,
|
||||
"incorrect l1 blob base fee scalar"
|
||||
);
|
||||
assert_eq!(
|
||||
operator_fee_scalar,
|
||||
TX_META_TX_1_OP_MAINNET_BLOCK_124665056.l1_block_info.operator_fee_scalar,
|
||||
"incorrect operator fee scalar"
|
||||
);
|
||||
assert_eq!(
|
||||
operator_fee_constant,
|
||||
TX_META_TX_1_OP_MAINNET_BLOCK_124665056.l1_block_info.operator_fee_constant,
|
||||
"incorrect operator fee constant"
|
||||
);
|
||||
}
|
||||
|
||||
// <https://github.com/paradigmxyz/reth/issues/12177>
|
||||
@ -389,6 +417,8 @@ mod test {
|
||||
l1_base_fee_scalar,
|
||||
l1_blob_base_fee,
|
||||
l1_blob_base_fee_scalar,
|
||||
operator_fee_scalar,
|
||||
operator_fee_constant,
|
||||
} = receipt_meta.l1_block_info;
|
||||
|
||||
assert_eq!(l1_gas_price, Some(14121491676), "incorrect l1 base fee (former gas price)");
|
||||
@ -398,5 +428,7 @@ mod test {
|
||||
assert_eq!(l1_base_fee_scalar, Some(2269), "incorrect l1 base fee scalar");
|
||||
assert_eq!(l1_blob_base_fee, Some(1324954204), "incorrect l1 blob base fee");
|
||||
assert_eq!(l1_blob_base_fee_scalar, Some(1055762), "incorrect l1 blob base fee scalar");
|
||||
assert_eq!(operator_fee_scalar, None, "incorrect operator fee scalar");
|
||||
assert_eq!(operator_fee_constant, None, "incorrect operator fee constant");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user