From fd49ea5f7cd986e93121ea703b817cf2317174c3 Mon Sep 17 00:00:00 2001 From: Michael Amadi Date: Fri, 22 Nov 2024 20:01:08 +0100 Subject: [PATCH 1/3] improve drippie & faucet tests and coverage --- .../test/periphery/drippie/Drippie.t.sol | 18 +++++++----------- .../test/periphery/faucet/Faucet.t.sol | 18 ++++++++++++++++++ 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/packages/contracts-bedrock/test/periphery/drippie/Drippie.t.sol b/packages/contracts-bedrock/test/periphery/drippie/Drippie.t.sol index 0e6755b0e63..c5791e06868 100644 --- a/packages/contracts-bedrock/test/periphery/drippie/Drippie.t.sol +++ b/packages/contracts-bedrock/test/periphery/drippie/Drippie.t.sol @@ -16,10 +16,6 @@ import { SimpleStorage } from "test/mocks/SimpleStorage.sol"; contract TestDrippie is Drippie { constructor(address owner) Drippie(owner) { } - function dripStatus(string memory name) external view returns (Drippie.DripStatus) { - return drips[name].status; - } - function dripStateLast(string memory name) external view returns (uint256) { return drips[name].last; } @@ -131,12 +127,12 @@ contract Drippie_Test is Test { vm.prank(drippie.owner()); drippie.create(dripName, cfg); - Drippie.DripStatus status = drippie.dripStatus(dripName); + Drippie.DripStatus status = drippie.getDripStatus(dripName); Drippie.DripConfig memory config = drippie.dripConfig(dripName); assertEq(uint256(status), uint256(Drippie.DripStatus.PAUSED)); - assertEq(config.interval, cfg.interval); + assertEq(drippie.getDripInterval(dripName), cfg.interval); assertEq(config.reentrant, cfg.reentrant); assertEq(address(config.dripcheck), address(cfg.dripcheck)); assertEq(config.checkparams, cfg.checkparams); @@ -186,7 +182,7 @@ contract Drippie_Test is Test { address owner = drippie.owner(); { - Drippie.DripStatus status = drippie.dripStatus(dripName); + Drippie.DripStatus status = drippie.getDripStatus(dripName); assertEq(uint256(status), uint256(Drippie.DripStatus.PAUSED)); } @@ -198,7 +194,7 @@ contract Drippie_Test is Test { drippie.status(dripName, Drippie.DripStatus.ACTIVE); { - Drippie.DripStatus status = drippie.dripStatus(dripName); + Drippie.DripStatus status = drippie.getDripStatus(dripName); assertEq(uint256(status), uint256(Drippie.DripStatus.ACTIVE)); } @@ -210,7 +206,7 @@ contract Drippie_Test is Test { drippie.status(dripName, Drippie.DripStatus.PAUSED); { - Drippie.DripStatus status = drippie.dripStatus(dripName); + Drippie.DripStatus status = drippie.getDripStatus(dripName); assertEq(uint256(status), uint256(Drippie.DripStatus.PAUSED)); } } @@ -252,7 +248,7 @@ contract Drippie_Test is Test { drippie.status(dripName, Drippie.DripStatus.ARCHIVED); - Drippie.DripStatus status = drippie.dripStatus(dripName); + Drippie.DripStatus status = drippie.getDripStatus(dripName); assertEq(uint256(status), uint256(Drippie.DripStatus.ARCHIVED)); } @@ -463,7 +459,7 @@ contract Drippie_Test is Test { function test_not_active_reverts() external { _createDefaultDrip(dripName); - Drippie.DripStatus status = drippie.dripStatus(dripName); + Drippie.DripStatus status = drippie.getDripStatus(dripName); assertEq(uint256(status), uint256(Drippie.DripStatus.PAUSED)); vm.prank(drippie.owner()); diff --git a/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol b/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol index a0ef75f28d5..6e2c3be81b2 100644 --- a/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol +++ b/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol @@ -103,6 +103,24 @@ contract FaucetTest is Faucet_Initializer { assertEq(faucet.ADMIN(), faucetContractAdmin); } + function test_configure_succeeds() external { + vm.startPrank(faucetContractAdmin); + faucet.configure(optimistNftFam, Faucet.ModuleConfig("OptimistNftModule", true, 1 days, 1 ether)); + + (string memory name, bool enabled, uint256 ttl, uint256 amount) = faucet.modules(optimistNftFam); + assertEq(name, "OptimistNftModule"); + assertEq(enabled, true); + assertEq(ttl, 1 days); + assertEq(amount, 1 ether); + + assertTrue(faucet.isModuleEnabled(optimistNftFam)); + } + + function test_configure_reverts_when_not_admin() external { + vm.expectRevert("Faucet: function can only be called by admin"); + faucet.configure(optimistNftFam, Faucet.ModuleConfig("OptimistNftModule", true, 1 days, 1 ether)); + } + function test_authAdmin_drip_succeeds() external { _enableFaucetAuthModules(); bytes32 nonce = faucetHelper.consumeNonce(); From a828af370a007e1c000e0d470c07ba3ef56f4437 Mon Sep 17 00:00:00 2001 From: Michael Amadi Date: Fri, 22 Nov 2024 20:13:48 +0100 Subject: [PATCH 2/3] Update packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol Co-authored-by: smartcontracts --- packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol b/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol index 6e2c3be81b2..ab9361db8eb 100644 --- a/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol +++ b/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol @@ -116,7 +116,7 @@ contract FaucetTest is Faucet_Initializer { assertTrue(faucet.isModuleEnabled(optimistNftFam)); } - function test_configure_reverts_when_not_admin() external { + function test_configure_whenNotAdmin_reverts() external { vm.expectRevert("Faucet: function can only be called by admin"); faucet.configure(optimistNftFam, Faucet.ModuleConfig("OptimistNftModule", true, 1 days, 1 ether)); } From 12689f616f316c993d1a9f7dbba1da01971e71a8 Mon Sep 17 00:00:00 2001 From: Michael Amadi Date: Fri, 22 Nov 2024 20:14:08 +0100 Subject: [PATCH 3/3] Update packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol Co-authored-by: smartcontracts --- packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol b/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol index ab9361db8eb..b5f156cf1a8 100644 --- a/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol +++ b/packages/contracts-bedrock/test/periphery/faucet/Faucet.t.sol @@ -103,7 +103,7 @@ contract FaucetTest is Faucet_Initializer { assertEq(faucet.ADMIN(), faucetContractAdmin); } - function test_configure_succeeds() external { + function test_configure_whenAdmin_succeeds() external { vm.startPrank(faucetContractAdmin); faucet.configure(optimistNftFam, Faucet.ModuleConfig("OptimistNftModule", true, 1 days, 1 ether));