[ 
https://issues.apache.org/jira/browse/FINERACT-2649?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Krishna Mewara updated FINERACT-2649:
-------------------------------------
    Description: 
Migrate all ~118 loan integration tests currently extending 
{{BaseLoanIntegrationTest}} to extend {{{}FeignLoanTestBase{}}}, replacing 
REST-assured HTTP calls with the typed Feign client. This eliminates 
REST-assured as a test dependency for loan tests and aligns with the project's 
long-term goal of full Feign client adoption.
----
Current state:
 * 84 test classes still extend {{BaseLoanIntegrationTest}} (REST-assured)
 * 39 migrated so far (PR1 merged + PR2 in progress)
 * 45 test classes extend {{FeignLoanTestBase}} (Feign) — includes 6 
pre-existing Feign-only tests
 * {{FeignLoanTestBase}} covers most of the base class API; PR3/PR4 need COB, 
batch, external events, and cumulative/APA helpers

Target state:
 * 0 test classes extend {{BaseLoanIntegrationTest}}
 * All loan tests use the typed Feign client
 * {{BaseLoanIntegrationTest}} can be deleted or deprecated

----
Approach

Split into 4 batch PRs ordered by infrastructure dependency complexity:
||PR||GitHub||~Classes||Scope||
|PR1|[#6005|https://github.com/apache/fineract/pull/6005] merged|5|Simple 
lifecycle no GL accounting, no charges, no advanced features|
|PR2| |34|Charge-off, fraud, delinquency, progressive, accrual, waive/refund, 
reverse-replay|
|PR3|TBD|53|Reschedule, chargeback, cumulative/APA, client loan, 
transaction-heavy tests|
|PR4|TBD|31|COB, inline COB, external asset owner, batch API, GL journals, 
permissions, edge cases|

  was:
Migrate all *118 loan integration tests* currently extending 
{{BaseLoanIntegrationTest}} to extend {{{}FeignLoanTestBase{}}}, replacing 
REST-assured HTTP calls with the typed Feign client. This eliminates 
REST-assured as a test dependency for loan tests and aligns with the project's 
long-term goal of full Feign client adoption.

*Current state:*
 * 118 test classes extend {{BaseLoanIntegrationTest}} (REST-assured)
 * 11 test classes already extend {{FeignLoanTestBase}} (Feign)
 * {{FeignLoanTestBase}} covers ~60% of the base class API surface

*Target state:*
 * 0 test classes extend {{BaseLoanIntegrationTest}}
 * All loan tests use the typed Feign client
 * {{BaseLoanIntegrationTest}} can be deleted or deprecated

h3. Approach

Split into *3 batch PRs* ordered by infrastructure dependency complexity:
||PR||Tests||Scope||
|PR1 |5 tests|Simple lifecycle tests - no GL accounting, no charges, no 
advanced features|
|PR2|55 tests|Tests needing charges, chargebacks, chargeoff, reschedule, 
cumulative loans, fraud, business events|
|PR3|58 tests|Tests needing GL journal verification, external asset owner, COB, 
inline COB, batch API, point-in-time|


> Batch Migrate BaseLoanIntegrationTest Importers to FeignLoanTestBase
> --------------------------------------------------------------------
>
>                 Key: FINERACT-2649
>                 URL: https://issues.apache.org/jira/browse/FINERACT-2649
>             Project: Apache Fineract
>          Issue Type: Improvement
>          Components: Test
>            Reporter: Krishna Mewara
>            Assignee: Krishna Mewara
>            Priority: Trivial
>              Labels: feign-migration
>
> Migrate all ~118 loan integration tests currently extending 
> {{BaseLoanIntegrationTest}} to extend {{{}FeignLoanTestBase{}}}, replacing 
> REST-assured HTTP calls with the typed Feign client. This eliminates 
> REST-assured as a test dependency for loan tests and aligns with the 
> project's long-term goal of full Feign client adoption.
> ----
> Current state:
>  * 84 test classes still extend {{BaseLoanIntegrationTest}} (REST-assured)
>  * 39 migrated so far (PR1 merged + PR2 in progress)
>  * 45 test classes extend {{FeignLoanTestBase}} (Feign) — includes 6 
> pre-existing Feign-only tests
>  * {{FeignLoanTestBase}} covers most of the base class API; PR3/PR4 need COB, 
> batch, external events, and cumulative/APA helpers
> Target state:
>  * 0 test classes extend {{BaseLoanIntegrationTest}}
>  * All loan tests use the typed Feign client
>  * {{BaseLoanIntegrationTest}} can be deleted or deprecated
> ----
> Approach
> Split into 4 batch PRs ordered by infrastructure dependency complexity:
> ||PR||GitHub||~Classes||Scope||
> |PR1|[#6005|https://github.com/apache/fineract/pull/6005] merged|5|Simple 
> lifecycle no GL accounting, no charges, no advanced features|
> |PR2| |34|Charge-off, fraud, delinquency, progressive, accrual, waive/refund, 
> reverse-replay|
> |PR3|TBD|53|Reschedule, chargeback, cumulative/APA, client loan, 
> transaction-heavy tests|
> |PR4|TBD|31|COB, inline COB, external asset owner, batch API, GL journals, 
> permissions, edge cases|



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to