Skip to content

Commit

Permalink
Add mock and include in testable toml
Browse files Browse the repository at this point in the history
  • Loading branch information
leomassazza committed Dec 7, 2023
1 parent aa17203 commit af154fa
Show file tree
Hide file tree
Showing 2 changed files with 105 additions and 1 deletion.
40 changes: 39 additions & 1 deletion auxiliary/OpGasPriceOracle/cannonfile.test.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,40 @@
name = "op-gas-price-oracle"
version = "<%= package.version %>-testable"
include = ["cannonfile.toml"]

[setting.baseFee]
defaultValue = "30000000"

[setting.gasPrice]
defaultValue = "30000000"

[setting.l1BaseFee]
defaultValue = "50000000000"

[setting.overhead]
defaultValue = "200"

[setting.scalar]
defaultValue = "684000"

[setting.internall1GasUsed]
defaultValue = "10000"

[setting.internall1Fee]
defaultValue = "1000"

[contract.mockOVMGasPriceOracle]
artifact = "contracts/mocks/MockOVMGasPriceOracle.sol:MockOVMGasPriceOracle"
args = [
"<%= settings.gasPrice %>",
"<%= settings.overhead %>",
"<%= settings.baseFee %>",
"<%= settings.l1BaseFee %>",
"<%= settings.scalar %>",
"<%= settings.internall1GasUsed %>",
"<%= settings.internall1Fee %>"
]

[contract.OpGasPriceOracle]
artifact = "contracts/OpGasPriceOracle.sol:OpGasPriceOracle"
args = ["<%= contracts.mockOVMGasPriceOracle.address %>"]
create2 = true
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
// SPDX-License-Identifier: MIT
pragma solidity >=0.8.0;

import "../interfaces/IOVM_GasPriceOracle.sol";

contract MockOVMGasPriceOracle is IOVM_GasPriceOracle {
uint256 public constant DECIMALS = 6;

uint256 public gasPrice;
uint256 public overhead;
uint256 public baseFee;
uint256 public l1BaseFee;
uint256 public scalar;
uint256 public internall1GasUsed;
uint256 public internall1Fee;

constructor(
uint256 _gasPrice,
uint256 _overhead,
uint256 _baseFee,
uint256 _l1BaseFee,
uint256 _scalar,
uint256 _internall1GasUsed,
uint256 _internall1Fee
) {
gasPrice = _gasPrice;
overhead = _overhead;
baseFee = _baseFee;
l1BaseFee = _l1BaseFee;
scalar = _scalar;
internall1GasUsed = _internall1GasUsed;
internall1Fee = _internall1Fee;
}

function setParams(
uint256 _gasPrice,
uint256 _overhead,
uint256 _baseFee,
uint256 _l1BaseFee,
uint256 _scalar,
uint256 _internall1GasUsed,
uint256 _internall1Fee
) external {
gasPrice = _gasPrice;
overhead = _overhead;
baseFee = _baseFee;
l1BaseFee = _l1BaseFee;
scalar = _scalar;
internall1GasUsed = _internall1GasUsed;
internall1Fee = _internall1Fee;
}

function decimals() external pure returns (uint256) {
return DECIMALS;
}

function getL1Fee(bytes memory _data) external view returns (uint256) {
_data;
return internall1Fee;
}

function getL1GasUsed(bytes memory _data) external view returns (uint256) {
_data;
return internall1GasUsed;
}
}

0 comments on commit af154fa

Please sign in to comment.