Krishna Mewara created FINERACT-2793:
----------------------------------------
Summary: Migrate the loan money movement integration tests to the
Feign client
Key: FINERACT-2793
URL: https://issues.apache.org/jira/browse/FINERACT-2793
Project: Apache Fineract
Issue Type: Improvement
Components: Test
Affects Versions: 1.15.0
Reporter: Krishna Mewara
Assignee: Krishna Mewara
h3. *Overview*
These tests previously communicated with the server using REST Assured and
hand-written JSON. This PR migrates them to the generated Feign client,
ensuring that requests and responses are strongly typed and checked by the
compiler.
h3. *Scope of Changes*
Migrated *23 test classes* and {*}98 tests{*}, covering the following flows:
* Charge refunds
* Charge-off accounting
* Disbursement and tranches
* Repayment schedules
* Write-off and overpaid flows
* Guarantors
* Variable installments
h3. *Production Code Impact*
* *OpenAPI Schema Only (8 files):* Added fields that the server already
accepts and validates. The schema previously did not declare them, preventing
the typed client from sending them.
* *No behavior change* to the core application.
h3. *Cleanup & Refactoring*
* *Deleted {{BaseLoanIntegrationTest}} (1,944 lines):* The old REST Assured
base class for loan tests is now dead code since its last subclass has been
migrated.
* *Deleted dead helpers:* Removed two helper methods that were exclusively
used by the deleted base class.
h3. *Known API Check Findings*
* *Endpoint:* {{GET /loans/\{loanId}/postdatedchecks/\{installmentId}}}
* *Context:* This was previously declared as returning an array, but it
actually returns a single object.
* *Fix:* Correcting this schema shape triggers swagger-brake report
{{{}R015{}}}. This is the intended and correct fix, as no generated client
could read the old declared shape.
h3. *Not Included / Future Work*
* {{AccountingScenarioIntegrationTest}} is not included in this migration. It
is a single class holding loan, savings, deposit, and share tests.
* The non-loan tests require GL account mapping fields that the savings,
deposit, and share product schemas do not have yet.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)