From 26a1dc0bf921b12ae6c26c5ad1ef688562ba0d81 Mon Sep 17 00:00:00 2001 From: JES Date: Mon, 3 Mar 2025 11:44:05 -0800 Subject: [PATCH] test: add coverage for getQuorumUpdateAtIndex --- test/unit/IndexRegistryUnit.t.sol | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/test/unit/IndexRegistryUnit.t.sol b/test/unit/IndexRegistryUnit.t.sol index 88b0a289e..0d65bac19 100644 --- a/test/unit/IndexRegistryUnit.t.sol +++ b/test/unit/IndexRegistryUnit.t.sol @@ -388,6 +388,42 @@ contract IndexRegistryUnitTests_configAndGetters is IndexRegistryUnitTests { cheats.expectRevert(); indexRegistry.getOperatorListAtBlockNumber(quorumNumber, 0); } + + function test_getQuorumUpdateAtIndex() public { + uint8 quorumNumber = nextQuorum; + _initializeQuorum(); + + uint32 blockNum = uint32(block.number); + + // Roll forward to force update + vm.roll(block.number + 1); + + // Check quorum update at index 0 + IIndexRegistry.QuorumUpdate memory quorumUpdate = + indexRegistry.getQuorumUpdateAtIndex(quorumNumber, 0); + assertEq(quorumUpdate.numOperators, 0, "numOperators not 0"); + assertEq(quorumUpdate.fromBlockNumber, blockNum, "fromBlockNumber not correct"); + + // Register operator + (, bytes32 operatorId) = _selectNewOperator(); + _registerOperatorSingleQuorum(operatorId, quorumNumber); + + // Check quorum update at index 1 + quorumUpdate = indexRegistry.getQuorumUpdateAtIndex(quorumNumber, 1); + assertEq(quorumUpdate.numOperators, 1, "numOperators not 1"); + assertEq(quorumUpdate.fromBlockNumber, block.number, "fromBlockNumber not correct"); + + // Roll forward to force update + vm.roll(block.number + 1); + + // Deregister + _deregisterOperatorSingleQuorum(operatorId, quorumNumber); + + // Check quorum update at index 2 + quorumUpdate = indexRegistry.getQuorumUpdateAtIndex(quorumNumber, 2); + assertEq(quorumUpdate.numOperators, 0, "numOperators not 0"); + assertEq(quorumUpdate.fromBlockNumber, block.number, "fromBlockNumber not correct"); + } } contract IndexRegistryUnitTests_registerOperator is IndexRegistryUnitTests {