|
@@ -24,27 +24,32 @@ public class AccountDeletionTest extends ActivatedBubbleModelTestBase { |
|
|
|
|
|
|
|
|
modelTest("account_deletion/delete_account_with_payments"); |
|
|
modelTest("account_deletion/delete_account_with_payments"); |
|
|
|
|
|
|
|
|
assertEquals("Archived payments record not created for deleted user", 1, archivedInfoDAO.countAll().intValue()); |
|
|
|
|
|
|
|
|
|
|
|
final var accountDAO = getBean(AccountDAO.class); |
|
|
final var accountDAO = getBean(AccountDAO.class); |
|
|
|
|
|
final var deletedAccounts = accountDAO.findDeleted(); |
|
|
// there should be just 1 deleted account - finding it by corresponding hashed password value: |
|
|
// there should be just 1 deleted account - finding it by corresponding hashed password value: |
|
|
final var deletedAccount = accountDAO.findByUniqueField("hashedPassword", HashedPassword.DELETED); |
|
|
|
|
|
// just in case: |
|
|
|
|
|
|
|
|
assertEquals("Wrong number of deleted accounts found", 1, deletedAccounts.size()); |
|
|
|
|
|
final var deletedAccount = deletedAccounts.get(0); |
|
|
|
|
|
assertEquals("Deleted account has wrong hashed password", |
|
|
|
|
|
HashedPassword.DELETED.getHashedPassword(), |
|
|
|
|
|
deletedAccount.getHashedPassword().getHashedPassword()); |
|
|
assertTrue("Account found with 'deleted' password is not marked as deleted", deletedAccount.deleted()); |
|
|
assertTrue("Account found with 'deleted' password is not marked as deleted", deletedAccount.deleted()); |
|
|
|
|
|
|
|
|
|
|
|
// there should be just 1 archived payment info records corresponding to that 1 deleted account |
|
|
|
|
|
assertEquals("Archived payments record not created for deleted user", 1, archivedInfoDAO.countAll().intValue()); |
|
|
|
|
|
|
|
|
final var archivedInfo = archivedInfoDAO.findByAccountUuid(deletedAccount.getUuid()); |
|
|
final var archivedInfo = archivedInfoDAO.findByAccountUuid(deletedAccount.getUuid()); |
|
|
assertNotNull("Archived payment info not found for deleted user", archivedInfo); |
|
|
assertNotNull("Archived payment info not found for deleted user", archivedInfo); |
|
|
|
|
|
|
|
|
final var archivedBills = archivedInfo.getBills(); |
|
|
final var archivedBills = archivedInfo.getBills(); |
|
|
assertEquals("Only 1 bill should be in for deleted account", archivedBills.length); |
|
|
|
|
|
|
|
|
assertEquals("Only 1 bill should be in for deleted account", 1, archivedBills.length); |
|
|
|
|
|
|
|
|
final var archivedPayments = archivedInfo.getPayments(); |
|
|
final var archivedPayments = archivedInfo.getPayments(); |
|
|
assertEquals("Only 1 bill should be in for deleted account", archivedPayments.length); |
|
|
|
|
|
|
|
|
assertEquals("Only 1 payment should be in for deleted account", 1, archivedPayments.length); |
|
|
assertEquals("Archived payment should be for archived bill", |
|
|
assertEquals("Archived payment should be for archived bill", |
|
|
archivedBills[0].getUuid(), archivedPayments[0].getBill()); |
|
|
archivedBills[0].getUuid(), archivedPayments[0].getBill()); |
|
|
|
|
|
|
|
|
final var archivedPaymentMethods = archivedInfo.getPaymentMethods(); |
|
|
final var archivedPaymentMethods = archivedInfo.getPaymentMethods(); |
|
|
assertEquals("Only 1 bill should be in for deleted account", archivedPaymentMethods.length); |
|
|
|
|
|
|
|
|
assertEquals("Only 1 payment method should be in for deleted account", 1, archivedPaymentMethods.length); |
|
|
assertEquals("Archived payment method should be for used within archived payment", |
|
|
assertEquals("Archived payment method should be for used within archived payment", |
|
|
archivedPayments[0].getPaymentMethod(), archivedPaymentMethods[0].getUuid()); |
|
|
archivedPayments[0].getPaymentMethod(), archivedPaymentMethods[0].getUuid()); |
|
|
} |
|
|
} |
|
|