diff --git a/stores/epoch/src/main/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessor.java b/stores/epoch/src/main/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessor.java index d9af27414..fb52f3938 100644 --- a/stores/epoch/src/main/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessor.java +++ b/stores/epoch/src/main/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessor.java @@ -58,19 +58,13 @@ public void handleEpochChangeEvent(PreEpochTransitionEvent epochChangeEvent) { EpochParam previousEpochParam = epochParamStorage.getProtocolParams(newEpoch - 1).orElse(null); //Get protocol param proposals target for this era (Signature check for validity -- //TODO) - List ppProposals = protocolParamsProposalStorage.getProtocolParamsProposalsByTargetEpoch(newEpoch); - - //Also check any proposal target to previous epoch, but also submitted in previous epoch. Those should be considered now. - //Filter to check if submitted in previous epochl - List ppProposalsSubmittedPrevEpoch = protocolParamsProposalStorage.getProtocolParamsProposalsByTargetEpoch(newEpoch - 1) - .stream().filter(protocolParamsProposal -> protocolParamsProposal.getEpoch() == newEpoch - 1).toList(); + List ppProposals = protocolParamsProposalStorage.getProtocolParamsProposalsByTargetEpoch(newEpoch - 1); if (previousEpochParam != null) protocolParams.merge(previousEpochParam.getParams()); genesisProtocolParams.ifPresent(protocolParams::merge); - ppProposalsSubmittedPrevEpoch.forEach(ppProposal -> protocolParams.merge(ppProposal.getParams())); ppProposals.forEach(ppProposal -> protocolParams.merge(ppProposal.getParams())); //Additional Era change specific rules diff --git a/stores/epoch/src/test/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessorTest.java b/stores/epoch/src/test/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessorTest.java index 277be1c50..401361850 100644 --- a/stores/epoch/src/test/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessorTest.java +++ b/stores/epoch/src/test/java/com/bloxbean/cardano/yaci/store/epoch/processor/EpochParamProcessorTest.java @@ -13,6 +13,7 @@ import org.mockito.junit.jupiter.MockitoExtension; import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.when; @ExtendWith(MockitoExtension.class) class EpochParamProcessorTest { @@ -50,7 +51,7 @@ void givenEpochChangeEvent_whenPreviousEpochIsNullAndEpochEqualsMaxEpoch_shouldR .build()) .build(); - Mockito.when(epochParamStorage.getMaxEpoch()).thenReturn(28); + when(epochParamStorage.getMaxEpoch()).thenReturn(28); epochParamProcessor.handleEpochChangeEvent(epochChangeEvent); Mockito.verify(epochParamStorage, Mockito.never()).save(Mockito.any()); @@ -71,7 +72,7 @@ void givenEpochChangeEvent_whenMaxEpochIsNotNullAndMaxEpochPlusOneIsNotEqualToEp .build()) .build(); - Mockito.when(epochParamStorage.getMaxEpoch()).thenReturn(30); + when(epochParamStorage.getMaxEpoch()).thenReturn(30); epochParamProcessor.handleEpochChangeEvent(epochChangeEvent); Mockito.verify(epochParamStorage, Mockito.never()).save(Mockito.any()); @@ -98,7 +99,6 @@ void givenEpochChangeEvent_shouldSaveEpochParam() { Mockito.verify(epochParamStorage, Mockito.times(1)).save(argCaptor.capture()); Mockito.verify(epochParamStorage).getProtocolParams(27); - Mockito.verify(protocolParamsProposalStorage).getProtocolParamsProposalsByTargetEpoch(28); Mockito.verify(protocolParamsProposalStorage).getProtocolParamsProposalsByTargetEpoch(27); EpochParam epochParam = argCaptor.getValue(); @@ -108,4 +108,6 @@ void givenEpochChangeEvent_shouldSaveEpochParam() { assertThat(epochParam.getBlockNumber()).isEqualTo(177070); assertThat(epochParam.getBlockTime()).isEqualTo(1666342887); } + + //TODO -- Add more test cases without mock }