Skip to content

Commit

Permalink
P4ADEV-2037 add test
Browse files Browse the repository at this point in the history
  • Loading branch information
RiccardoGiuliani committed Jan 29, 2025
1 parent f57c707 commit ec55be8
Showing 1 changed file with 21 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import it.gov.pagopa.pu.debtpositions.repository.InstallmentPIIRepository;
import it.gov.pagopa.pu.debtpositions.repository.PaymentOptionRepository;
import it.gov.pagopa.pu.debtpositions.repository.TransferRepository;
import it.gov.pagopa.pu.debtpositions.util.Utilities;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
Expand Down Expand Up @@ -64,11 +65,23 @@ void givenValidDebtPositionDTO_WhenSaveDebtPosition_ThenSaveAllEntities() {

DebtPosition debtPosition = buildDebtPosition();
PaymentOption paymentOption = buildPaymentOption();

InstallmentNoPII installmentNoPIINoIud = buildInstallmentNoPII();
Installment installmentNoIud = buildInstallment();
installmentNoIud.setIud("");

InstallmentNoPII installmentNoPII = buildInstallmentNoPII();
Installment installment = buildInstallment();
installment.setInstallmentId(10L);
installmentNoPII.setInstallmentId(10L);

Transfer transfer = buildTransfer();

Map<InstallmentNoPII, Installment> installmentMap = Map.of(installmentNoPII, installment);
Map<InstallmentNoPII, Installment> installmentMap = Map.of(
installmentNoPIINoIud, installmentNoIud,
installmentNoPII, installment
);

Pair<DebtPosition, Map<InstallmentNoPII, Installment>> mappedPair = Pair.of(debtPosition, installmentMap);

DebtPosition savedDebtPosition = new DebtPosition();
Expand All @@ -77,26 +90,31 @@ void givenValidDebtPositionDTO_WhenSaveDebtPosition_ThenSaveAllEntities() {

PaymentOption savedPaymentOption = new PaymentOption();
savedPaymentOption.setPaymentOptionId(1L);
savedPaymentOption.setInstallments(new TreeSet<>(List.of(installmentNoPII)));
savedPaymentOption.setInstallments(new TreeSet<>(List.of(installmentNoPIINoIud, installmentNoPII)));

Installment savedInstallment = new Installment();
savedInstallment.setInstallmentId(1L);

Transfer savedTransfer = new Transfer();
savedTransfer.setTransferId(1L);

String generatedIUD = "RANDOM_IUD_12345";

Mockito.when(debtPositionMapper.mapToModel(debtPositionDTO)).thenReturn(mappedPair);
Mockito.when(debtPositionRepository.save(Mockito.any(DebtPosition.class))).thenReturn(savedDebtPosition);
Mockito.when(paymentOptionRepository.save(Mockito.any(PaymentOption.class))).thenReturn(savedPaymentOption);
Mockito.when(installmentRepository.save(Mockito.any(Installment.class))).thenReturn(savedInstallment.getInstallmentId());
Mockito.when(transferRepository.save(Mockito.any(Transfer.class))).thenReturn(savedTransfer);

Mockito.mockStatic(Utilities.class);
Mockito.when(Utilities.getRandomIUD()).thenReturn(generatedIUD);

debtPositionService.saveDebtPosition(debtPositionDTO);

Mockito.verify(debtPositionRepository, Mockito.times(1)).save(debtPosition);
Mockito.verify(paymentOptionRepository, Mockito.times(1)).save(paymentOption);
Mockito.verify(installmentRepository, Mockito.times(1)).save(installment);
Mockito.verify(transferRepository, Mockito.times(1)).save(transfer);
Mockito.verify(transferRepository, Mockito.times(2)).save(transfer);
}
}

0 comments on commit ec55be8

Please sign in to comment.