2323import static org .junit .jupiter .api .Assertions .assertNotNull ;
2424import static org .junit .jupiter .api .Assertions .assertTrue ;
2525
26- import com .google .gson .JsonArray ;
27- import com .google .gson .JsonObject ;
28- import com .google .gson .JsonParser ;
2926import java .math .BigDecimal ;
27+ import java .util .List ;
28+ import java .util .Objects ;
29+ import org .apache .fineract .client .models .WorkingCapitalBreachData ;
30+ import org .apache .fineract .client .models .WorkingCapitalBreachRequest ;
31+ import org .apache .fineract .client .models .WorkingCapitalBreachTemplateResponse ;
3032import org .apache .fineract .integrationtests .common .workingcapitalloanbreach .WorkingCapitalBreachHelper ;
3133import org .junit .jupiter .api .Test ;
3234
@@ -36,48 +38,53 @@ public class WorkingCapitalBreachCRUDTest {
3638
3739 @ Test
3840 public void testTemplateEndpoint () {
39- final String json = breachHelper .retrieveTemplateRaw ();
40- final JsonObject template = JsonParser .parseString (json ).getAsJsonObject ();
41- assertTrue (template .has ("breachFrequencyTypeOptions" ));
42- assertTrue (template .has ("breachAmountCalculationTypeOptions" ));
43- assertFalse (template .getAsJsonArray ("breachFrequencyTypeOptions" ).isEmpty ());
44- assertFalse (template .getAsJsonArray ("breachAmountCalculationTypeOptions" ).isEmpty ());
41+ final WorkingCapitalBreachTemplateResponse template = breachHelper .retrieveTemplateRaw ();
42+ assertNotNull (template .getBreachFrequencyTypeOptions ());
43+ assertNotNull (template .getBreachAmountCalculationTypeOptions ());
44+ assertFalse (template .getBreachFrequencyTypeOptions ().isEmpty ());
45+ assertFalse (template .getBreachAmountCalculationTypeOptions ().isEmpty ());
4546 }
4647
4748 @ Test
4849 public void testCreateRetrieveUpdateDeleteAndListEndpoints () {
49- final JsonObject createBody = breachHelper .breachJson ("Default WCL Breach" , 15 , "DAYS" , "PERCENTAGE" , BigDecimal .valueOf (7.5 ));
50+ final WorkingCapitalBreachRequest createBody = breachHelper .createBreachRequest ("Default WCL Breach" , 15 , "DAYS" , "PERCENTAGE" ,
51+ BigDecimal .valueOf (7.5 ));
5052 final Long breachId = breachHelper .create (createBody );
5153 assertNotNull (breachId );
5254
53- final JsonObject created = JsonParser .parseString (breachHelper .retrieveOneRaw (breachId )).getAsJsonObject ();
54- assertEquals ("Default WCL Breach" , created .get ("name" ).getAsString ());
55- assertEquals (15 , created .get ("breachFrequency" ).getAsInt ());
56- assertEquals ("DAYS" , created .getAsJsonObject ("breachFrequencyType" ).get ("id" ).getAsString ());
57- assertEquals ("PERCENTAGE" , created .getAsJsonObject ("breachAmountCalculationType" ).get ("id" ).getAsString ());
58- assertEquals (0 , BigDecimal .valueOf (7.5 ).compareTo (created .get ("breachAmount" ).getAsBigDecimal ()));
55+ final WorkingCapitalBreachData created = breachHelper .retrieveOneRaw (breachId );
56+ assertEquals ("Default WCL Breach" , created .getName ());
57+ assertEquals (15 , created .getBreachFrequency ());
58+ assert created .getBreachFrequencyType () != null ;
59+ assertEquals ("DAYS" , created .getBreachFrequencyType ().getId ());
60+ assert created .getBreachAmountCalculationType () != null ;
61+ assertEquals ("PERCENTAGE" , created .getBreachAmountCalculationType ().getId ());
62+ assertEquals (0 , BigDecimal .valueOf (7.5 ).compareTo (created .getBreachAmount ()));
5963
60- final JsonArray all = JsonParser . parseString ( breachHelper .retrieveAllRaw ()). getAsJsonArray ();
64+ final List < WorkingCapitalBreachData > all = breachHelper .retrieveAllRaw ();
6165 boolean found = false ;
62- for (int i = 0 ; i < all . size (); i ++ ) {
63- if (all . get ( i ). getAsJsonObject (). get ( "id" ). getAsLong () == breachId ) {
64- assertEquals ("Default WCL Breach" , all . get ( i ). getAsJsonObject (). get ( "name" ). getAsString ());
66+ for (WorkingCapitalBreachData workingCapitalBreachData : all ) {
67+ if (Objects . equals ( workingCapitalBreachData . getId (), breachId ) ) {
68+ assertEquals ("Default WCL Breach" , workingCapitalBreachData . getName ());
6569 found = true ;
6670 break ;
6771 }
6872 }
6973 assertTrue (found );
7074
71- final JsonObject updateBody = breachHelper .breachJson ("Updated WCL Breach" , 20 , "MONTHS" , "FLAT" , BigDecimal .valueOf (111 ));
75+ final WorkingCapitalBreachRequest updateBody = breachHelper .createBreachRequest ("Updated WCL Breach" , 20 , "MONTHS" , "FLAT" ,
76+ BigDecimal .valueOf (111 ));
7277 final Long updatedId = breachHelper .update (breachId , updateBody );
7378 assertEquals (breachId , updatedId );
7479
75- final JsonObject updated = JsonParser .parseString (breachHelper .retrieveOneRaw (breachId )).getAsJsonObject ();
76- assertEquals ("Updated WCL Breach" , updated .get ("name" ).getAsString ());
77- assertEquals (20 , updated .get ("breachFrequency" ).getAsInt ());
78- assertEquals ("MONTHS" , updated .getAsJsonObject ("breachFrequencyType" ).get ("id" ).getAsString ());
79- assertEquals ("FLAT" , updated .getAsJsonObject ("breachAmountCalculationType" ).get ("id" ).getAsString ());
80- assertEquals (0 , BigDecimal .valueOf (111 ).compareTo (updated .get ("breachAmount" ).getAsBigDecimal ()));
80+ final WorkingCapitalBreachData updated = breachHelper .retrieveOneRaw (breachId );
81+ assertEquals ("Updated WCL Breach" , updated .getName ());
82+ assertEquals (20 , updated .getBreachFrequency ());
83+ assert updated .getBreachFrequencyType () != null ;
84+ assertEquals ("MONTHS" , updated .getBreachFrequencyType ().getId ());
85+ assert updated .getBreachAmountCalculationType () != null ;
86+ assertEquals ("FLAT" , updated .getBreachAmountCalculationType ().getId ());
87+ assertEquals (0 , BigDecimal .valueOf (111 ).compareTo (updated .getBreachAmount ()));
8188
8289 final Long deletedId = breachHelper .delete (breachId );
8390 assertEquals (breachId , deletedId );
0 commit comments