FINERACT-2389: Fix the handling of nullable field overrides - E2E tests

This commit is contained in:
Peter Kovacs
2025-10-29 11:26:16 +01:00
committed by Adam Saghy
parent adc4ee3545
commit 8a86759773
3 changed files with 116 additions and 0 deletions
@@ -2144,3 +2144,35 @@ Feature: LoanDelinquency
| 3 | RANGE_30 | 125.00 |
| 4 | RANGE_60 | 375.00 |
| 5 | RANGE_90 | 250.00 |
@TestRailId:C4140
Scenario: Verify that loan delinquent days are correct when graceOnArrearsAgeing is set on loan product level (value=3)
When Admin sets the business date to "01 January 2025"
And Admin creates a client with random data
And Admin creates a fully customized loan with the following data:
| LoanProduct | submitted on date | with Principal | ANNUAL interest rate % | interest type | interest calculation period | amortization type | loanTermFrequency | loanTermFrequencyType | repaymentEvery | repaymentFrequencyType | numberOfRepayments | graceOnPrincipalPayment | graceOnInterestPayment | interest free period | Payment strategy |
| LP2_PROGRESSIVE_ADVANCED_PAYMENT_ALLOCATION_BUYDOWN_FEES | 01 January 2025 | 1000 | 0 | DECLINING_BALANCE | DAILY | EQUAL_INSTALLMENTS | 6 | MONTHS | 1 | MONTHS | 6 | 0 | 0 | 0 | ADVANCED_PAYMENT_ALLOCATION |
And Admin successfully approves the loan on "01 January 2025" with "1000" amount and expected disbursement date on "01 January 2025"
And Admin successfully disburse the loan on "01 January 2025" with "1000" EUR transaction amount
And Admin sets the business date to "15 May 2025"
And Admin runs inline COB job for Loan
Then Admin checks that delinquency range is: "RANGE_90" and has delinquentDate "2025-02-04"
And Loan has the following LOAN level delinquency data:
| classification | delinquentAmount | delinquentDate | delinquentDays | pastDueDays |
| RANGE_90 | 666.68 | 04 February 2025 | 100 | 103 |
@TestRailId:C4141
Scenario: Verify that loan delinquent days are correct when graceOnArrearsAgeing is overrided on loan level (value=5)
When Admin sets the business date to "01 January 2025"
And Admin creates a client with random data
And Admin creates a fully customized loan with graceOnArrearsAgeing and following data:
| LoanProduct | submitted on date | with Principal | ANNUAL interest rate % | interest type | interest calculation period | amortization type | loanTermFrequency | loanTermFrequencyType | repaymentEvery | repaymentFrequencyType | numberOfRepayments | graceOnPrincipalPayment | graceOnInterestPayment | interest free period | Payment strategy | graceOnArrearsAgeing |
| LP2_PROGRESSIVE_ADVANCED_PAYMENT_ALLOCATION_BUYDOWN_FEES | 01 January 2025 | 1000 | 0 | DECLINING_BALANCE | DAILY | EQUAL_INSTALLMENTS | 6 | MONTHS | 1 | MONTHS | 6 | 0 | 0 | 0 | ADVANCED_PAYMENT_ALLOCATION | 5 |
And Admin successfully approves the loan on "01 January 2025" with "1000" amount and expected disbursement date on "01 January 2025"
And Admin successfully disburse the loan on "01 January 2025" with "1000" EUR transaction amount
And Admin sets the business date to "15 May 2025"
And Admin runs inline COB job for Loan
Then Admin checks that delinquency range is: "RANGE_90" and has delinquentDate "2025-02-06"
And Loan has the following LOAN level delinquency data:
| classification | delinquentAmount | delinquentDate | delinquentDays | pastDueDays |
| RANGE_90 | 666.68 | 06 February 2025 | 98 | 103 |
@@ -1,6 +1,7 @@
@LoanOverrideFields
Feature: LoanOverrideFields
@TestRailId:C4142
Scenario: Verify that all nullable fields default to product when overrides not allowed and not provided
When Admin sets the business date to the actual date
When Admin creates a client with random data
@@ -15,6 +16,7 @@ Feature: LoanOverrideFields
Then LoanDetails has "graceOnInterestPayment" field with value: "1"
Then LoanDetails has "graceOnArrearsAgeing" field with value: "3"
@TestRailId:C4143
Scenario: Verify that all nullable fields ignore overrides when overrides not allowed
When Admin sets the business date to the actual date
When Admin creates a client with random data
@@ -29,6 +31,7 @@ Feature: LoanOverrideFields
Then LoanDetails has "graceOnInterestPayment" field with value: "1"
Then LoanDetails has "graceOnArrearsAgeing" field with value: "3"
@TestRailId:C4144
Scenario: Verify that nullable fields default to product when override is allowed but not provided
When Admin sets the business date to the actual date
When Admin creates a client with random data
@@ -43,6 +46,7 @@ Feature: LoanOverrideFields
Then LoanDetails has "graceOnInterestPayment" field with value: "1"
Then LoanDetails has "graceOnArrearsAgeing" field with value: "3"
@TestRailId:C4145
Scenario: Verify that nullable fields default to product when override is allowed and provided
When Admin sets the business date to the actual date
When Admin creates a client with random data