From 7cc6a4b153411876d0537b3515080ae7752cceb5 Mon Sep 17 00:00:00 2001 From: ryzhak Date: Fri, 6 Jun 2025 12:14:18 +0300 Subject: [PATCH] test: increase coverage for GnoValidatorsChecker --- remappings.txt | 3 ++- test/gnosis/GnoValidatorsChecker.t.sol | 12 ++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/remappings.txt b/remappings.txt index 5be0b517..ca789a87 100644 --- a/remappings.txt +++ b/remappings.txt @@ -1,2 +1,3 @@ @openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/ -@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ \ No newline at end of file +@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ +forge-std/=lib/forge-std/src/ diff --git a/test/gnosis/GnoValidatorsChecker.t.sol b/test/gnosis/GnoValidatorsChecker.t.sol index 7d42e227..f5640ae4 100644 --- a/test/gnosis/GnoValidatorsChecker.t.sol +++ b/test/gnosis/GnoValidatorsChecker.t.sol @@ -7,6 +7,7 @@ import {IGnoVault} from "../../contracts/interfaces/IGnoVault.sol"; import {IVaultEnterExit} from "../../contracts/interfaces/IVaultEnterExit.sol"; import {IVaultState} from "../../contracts/interfaces/IVaultState.sol"; import {IKeeperRewards} from "../../contracts/interfaces/IKeeperRewards.sol"; +import {IValidatorsChecker} from "../../contracts/interfaces/IValidatorsChecker.sol"; import {GnoHelpers} from "../helpers/GnoHelpers.sol"; contract GnoValidatorsCheckerTest is Test, GnoHelpers { @@ -63,6 +64,17 @@ contract GnoValidatorsCheckerTest is Test, GnoHelpers { validRegistryRoot = contracts.validatorsRegistry.get_deposit_root(); } + // Test checkValidatorsManagerSignature with an empty vault + function testCheckValidatorsManagerSignature_InsufficientAssets() public view { + // Test with empty vault + (uint256 blockNumber, IValidatorsChecker.Status status) = + validatorsChecker.checkValidatorsManagerSignature(emptyVault, validRegistryRoot, "", ""); + + // Verify result + assertEq(uint256(status), uint256(IValidatorsChecker.Status.INSUFFICIENT_ASSETS)); + assertEq(blockNumber, block.number); + } + // Test getExitQueueCumulativeTickets and getExitQueueMissingAssets with an empty exit queue function testGetExitQueueFunctions_EmptyQueue() public view { // Get cumulative tickets for empty queue