[
https://issues.apache.org/jira/browse/FINERACT-2824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Krishna Mewara updated FINERACT-2824:
-------------------------------------
Labels: beginner-friendly feign-migration integration-tests swagger (was:
beginner-friendly feign-migration integration-tests)
> Migrate loan lifecycle and product integration tests to the Feign client
> ------------------------------------------------------------------------
>
> Key: FINERACT-2824
> URL: https://issues.apache.org/jira/browse/FINERACT-2824
> Project: Apache Fineract
> Issue Type: Improvement
> Components: Test
> Affects Versions: 1.15.0
> Reporter: Krishna Mewara
> Assignee: Krishna Mewara
> Priority: Trivial
> Labels: beginner-friendly, feign-migration, integration-tests,
> swagger
>
> The loan lifecycle and loan product integration tests still drive the server
> through REST Assured request/response specifications. This ticket moves them
> onto the typed Feign client and {{{}FeignLoanTestBase{}}}, continuing the
> migration tracked under the Feign integration test epic.
> h4. Scope (11 test classes, 28 tests)
> * *Loan product configuration*
> ** {{LoanProductExternalIdTest}} (2)
> ** {{LoanProductUpdateApiTest}} (2)
> ** {{LoanProductWithRepaymentDueEventConfigurationTest}} (2)
> ** {{LoanProductRepaymentStartDateConfigurationTest}} (4)
> * *Loan application*
> ** {{LoanApplicationApprovalTest}} (4)
> ** {{LoanApplicationScheduleMonthlyTest}} (4)
> **
> {{LoanApplicationRejectionForLoanProductWithPeriodicAccrualAccountingTest}}
> (1)
> ** {{LoanValidationIntegrationTest}} (1)
> * *Auditing and concurrency*
> ** {{LoanAuditingIntegrationTest}} (1)
> ** {{ConcurrencyIntegrationTest}} (1)
> * *Working capital loan*
> ** {{WorkingCapitalLoanOriginatorsTest}} (6)
> _Note: The COB tests named in the same area of the migration plan are already
> on the Feign client and are not part of this ticket._
> h4. Schema Change
> {{GetLoanProductsProductIdResponse}} in {{LoanProductsApiResourceSwagger}}
> did not declare {{{}externalId{}}}, although {{LoanProductData}} carries it
> and the endpoint returns it. The generated model therefore had no getter, so
> a test that retrieves a loan product by its external ID could not assert that
> the value round-tripped.
> The field is added and asserted in {{{}LoanProductExternalIdTest{}}}. The
> change is additive.
> h4. Test Helper Changes
> * New {{FeignRoleHelper}} ({{{}createRole{}}},
> {{{}addPermissionsToRole{}}}), replacing the REST Assured {{RolesHelper}}
> used by the working capital loan originator test.
> * {{FeignUserHelper}} gains a {{createUser}} overload taking a full
> {{{}PostUsersRequest{}}}.
> * {{FeignLoanHelper}} gains {{retrieveLoanProductByExternalId}} and
> {{{}updateLoanProductByExternalId{}}}.
> * {{FeignLoanTestBase}} gains {{{}extractErrorCount{}}}, and
> {{extractErrorGlobalisationCode}} now also unwraps
> {{{}error.msg.resource.not.found{}}}, which is a generic envelope like the
> two codes it already skipped: every
> {{AbstractPlatformResourceNotFoundException}} reports it at the top of the
> body with the entity-specific code nested underneath.
> _Note on {{{}DisallowBackdatedTransactionsIntegrationTest{}}}: This is listed
> against this area in the migration plan but is a savings test with no loan
> involvement. It is left to the savings and deposit ticket (FINERACT-2732) so
> that it lands with the savings helpers it needs._
--
This message was sent by Atlassian Jira
(v8.20.10#820010)