Commit fba0bba0 authored by Mark Tyneway's avatar Mark Tyneway

contracts-bedrock: update target in ResourceMetering

parent b3bfb3c7
...@@ -397,16 +397,17 @@ RLPWriter_writeUint_Test:test_writeUint_smallint_succeeds() (gas: 7280) ...@@ -397,16 +397,17 @@ RLPWriter_writeUint_Test:test_writeUint_smallint_succeeds() (gas: 7280)
RLPWriter_writeUint_Test:test_writeUint_zero_succeeds() (gas: 7749) RLPWriter_writeUint_Test:test_writeUint_zero_succeeds() (gas: 7749)
ResolvedDelegateProxy_Test:test_fallback_addressManagerNotSet_reverts() (gas: 605906) ResolvedDelegateProxy_Test:test_fallback_addressManagerNotSet_reverts() (gas: 605906)
ResolvedDelegateProxy_Test:test_fallback_delegateCallBar_reverts() (gas: 24783) ResolvedDelegateProxy_Test:test_fallback_delegateCallBar_reverts() (gas: 24783)
ResourceMetering_Test:test_meter_initialBaseFee_succeeds() (gas: 7025) ResourceMetering_Test:test_meter_initialBaseFee_succeeds() (gas: 7003)
ResourceMetering_Test:test_meter_initialResourceParams_succeeds() (gas: 8983) ResourceMetering_Test:test_meter_initialResourceParams_succeeds() (gas: 9028)
ResourceMetering_Test:test_meter_maxValue_succeeds() (gas: 7015)
ResourceMetering_Test:test_meter_minBaseFeeLessThanMaxBaseFee_succeeds() (gas: 6194) ResourceMetering_Test:test_meter_minBaseFeeLessThanMaxBaseFee_succeeds() (gas: 6194)
ResourceMetering_Test:test_meter_updateNoGasDelta_succeeds() (gas: 4008242) ResourceMetering_Test:test_meter_updateNoGasDelta_succeeds() (gas: 2008204)
ResourceMetering_Test:test_meter_updateOneEmptyBlock_succeeds() (gas: 18441) ResourceMetering_Test:test_meter_updateOneEmptyBlock_succeeds() (gas: 18441)
ResourceMetering_Test:test_meter_updateParamsNoChange_succeeds() (gas: 14005) ResourceMetering_Test:test_meter_updateParamsNoChange_succeeds() (gas: 14005)
ResourceMetering_Test:test_meter_updateTenEmptyBlocks_succeeds() (gas: 21243) ResourceMetering_Test:test_meter_updateTenEmptyBlocks_succeeds() (gas: 21243)
ResourceMetering_Test:test_meter_updateTwoEmptyBlocks_succeeds() (gas: 21199) ResourceMetering_Test:test_meter_updateTwoEmptyBlocks_succeeds() (gas: 21199)
ResourceMetering_Test:test_meter_useMax_succeeds() (gas: 20017420) ResourceMetering_Test:test_meter_useMax_succeeds() (gas: 20017464)
ResourceMetering_Test:test_meter_useMoreThanMax_reverts() (gas: 16142) ResourceMetering_Test:test_meter_useMoreThanMax_reverts() (gas: 16120)
SafeCall_call_Test:test_callWithMinGas_noLeakageHigh_succeeds() (gas: 2075873614) SafeCall_call_Test:test_callWithMinGas_noLeakageHigh_succeeds() (gas: 2075873614)
SafeCall_call_Test:test_callWithMinGas_noLeakageLow_succeeds() (gas: 753665282) SafeCall_call_Test:test_callWithMinGas_noLeakageLow_succeeds() (gas: 753665282)
Semver_Test:test_behindProxy_succeeds() (gas: 506748) Semver_Test:test_behindProxy_succeeds() (gas: 506748)
......
...@@ -36,7 +36,7 @@ abstract contract ResourceMetering is Initializable { ...@@ -36,7 +36,7 @@ abstract contract ResourceMetering is Initializable {
/** /**
* @notice Along with the resource limit, determines the target resource limit. * @notice Along with the resource limit, determines the target resource limit.
*/ */
int256 public constant ELASTICITY_MULTIPLIER = 5; int256 public constant ELASTICITY_MULTIPLIER = 10;
/** /**
* @notice Target amount of the resource that should be used within this block. * @notice Target amount of the resource that should be used within this block.
......
...@@ -67,6 +67,13 @@ contract ResourceMetering_Test is Test { ...@@ -67,6 +67,13 @@ contract ResourceMetering_Test is Test {
assertEq(prevBlockNum, initialBlockNum); assertEq(prevBlockNum, initialBlockNum);
} }
function test_meter_maxValue_succeeds() external {
uint256 max = uint256(meter.MAX_RESOURCE_LIMIT());
uint256 target = uint256(meter.TARGET_RESOURCE_LIMIT());
uint256 elasticity = uint256(meter.ELASTICITY_MULTIPLIER());
assertEq(max / elasticity, target);
}
function test_meter_updateParamsNoChange_succeeds() external { function test_meter_updateParamsNoChange_succeeds() external {
meter.use(0); // equivalent to just updating the base fee and block number meter.use(0); // equivalent to just updating the base fee and block number
(uint128 prevBaseFee, uint64 prevBoughtGas, uint64 prevBlockNum) = meter.params(); (uint128 prevBaseFee, uint64 prevBoughtGas, uint64 prevBlockNum) = meter.params();
...@@ -129,7 +136,7 @@ contract ResourceMetering_Test is Test { ...@@ -129,7 +136,7 @@ contract ResourceMetering_Test is Test {
vm.roll(initialBlockNum + 1); vm.roll(initialBlockNum + 1);
meter.use(0); meter.use(0);
(uint128 postBaseFee, , ) = meter.params(); (uint128 postBaseFee, , ) = meter.params();
assertEq(postBaseFee, 1500000000); assertEq(postBaseFee, 2125000000);
} }
function test_meter_useMoreThanMax_reverts() external { function test_meter_useMoreThanMax_reverts() external {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment