Skip to content

Commit

Permalink
fix: semver natspec check failure (#79)
Browse files Browse the repository at this point in the history
* fix: semver natspec check failure

* fix: ignore mock contracts in semver natspec script

* fix: error message
  • Loading branch information
agusduha authored Oct 3, 2024
1 parent 1981789 commit ae019b8
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -129,9 +129,14 @@ func run() error {
return
}

// Skip mock contracts
if strings.Contains(contractName, "_MockContract") {
return
}

contractPath := contractFiles[contractName]
if contractPath == "" {
fail("%s: Source file not found", contractName)
fail("%s: Source file not found (For test mock contracts, suffix the name with '_MockContract' to ignore this warning)", contractName)
return
}

Expand Down
13 changes: 2 additions & 11 deletions packages/contracts-bedrock/test/L2/SuperchainERC20.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,7 @@ import { BeaconProxy } from "@openzeppelin/contracts-v5/proxy/beacon/BeaconProxy
// Target contract
import { SuperchainERC20, ISuperchainERC20Extension } from "src/L2/SuperchainERC20.sol";
import { ISuperchainERC20Errors } from "src/L2/interfaces/ISuperchainERC20.sol";

contract SuperchainERC20Implementation is SuperchainERC20 {
function name() public pure override returns (string memory) {
return "SuperchainERC20";
}

function symbol() public pure override returns (string memory) {
return "SCE";
}
}
import { SuperchainERC20Implementation_MockContract } from "test/mocks/SuperchainERC20Implementation.sol";

/// @title SuperchainERC20Test
/// @notice Contract for testing the SuperchainERC20 contract.
Expand All @@ -40,7 +31,7 @@ contract SuperchainERC20Test is Test {

/// @notice Sets up the test suite.
function setUp() public {
superchainERC20 = new SuperchainERC20Implementation();
superchainERC20 = new SuperchainERC20Implementation_MockContract();
}

/// @notice Helper function to setup a mock and expect a call to it.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// SPDX-License-Identifier: MIT
pragma solidity 0.8.25;

import { SuperchainERC20 } from "src/L2/SuperchainERC20.sol";

/// @title SuperchainERC20Implementation Mock contract
/// @notice Mock contract just to create tests over an implementation of the SuperchainERC20 abstract contract.
contract SuperchainERC20Implementation_MockContract is SuperchainERC20 {
/// @notice Semantic version.
/// @custom:semver 1.0.0-beta.1
string public constant override version = "1.0.0-beta.1";

function name() public pure override returns (string memory) {
return "SuperchainERC20";
}

function symbol() public pure override returns (string memory) {
return "SCE";
}
}

0 comments on commit ae019b8

Please sign in to comment.