Bladeren bron

added refactored test classes

Grega Bremec 2 jaren geleden
bovenliggende
commit
8778ae5d65

+ 46 - 0
src/test/java/com/redhat/training/claims/ClaimsTestSupport.java

@@ -0,0 +1,46 @@
+package com.redhat.training.claims;
+
+import com.redhat.training.claims.model.Claim;
+import com.redhat.training.claims.model.Claimant;
+import com.redhat.training.claims.model.Gender;
+
+import org.junit.After;
+import org.junit.Before;
+import org.kie.api.KieServices;
+import org.kie.api.runtime.KieContainer;
+import org.kie.api.runtime.KieSession;
+
+public class ClaimsTestSupport {
+    KieSession session;
+
+    @Before
+    public void setup() {
+        KieContainer kc = KieServices.Factory.get().getKieClasspathContainer();
+        session = kc.newKieSession();
+        System.out.println("Created new session...");
+    }
+    @After
+    public void tearDown() {
+        if (session != null) {
+            session.dispose();
+        }
+        System.out.println("Destroyed session after test.");
+    }
+
+    public void insertValidClaimantAndClaim(int claimId, double amount, String claimantName, Gender claimantGender, String reason) {
+        Claimant c = new Claimant();
+        c.setName(claimantName);
+        c.setGender(claimantGender);
+
+        Claim cl = new Claim();
+        cl.setId(claimId);
+        cl.setAmount(amount);
+        cl.setReason(reason);
+        cl.getInvolvedPersons().add(c);
+
+        c.getClaims().add(cl);
+
+        session.insert(c);
+        session.insert(cl);
+    }
+}

+ 43 - 0
src/test/java/com/redhat/training/claims/ProcessSanityCheckTest.java

@@ -0,0 +1,43 @@
+package com.redhat.training.claims;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.util.HashMap;
+
+import com.redhat.training.claims.model.Claim;
+import com.redhat.training.claims.model.ClaimResults;
+import com.redhat.training.claims.model.Claimant;
+import com.redhat.training.claims.model.Gender;
+
+import org.junit.Test;
+
+public class ProcessSanityCheckTest extends ClaimsTestSupport {
+    @Test
+    public void testSanityChecksValidClaim() {
+        Claimant c = new Claimant();
+        c.setName("Tom Jones");
+        c.setGender(Gender.MALE);
+
+        Claim cl = new Claim();
+        cl.setId(234);
+        cl.setAmount(500.00);
+        cl.setReason("Test 123");
+        cl.getInvolvedPersons().add(c);
+
+        c.getClaims().add(cl);
+
+        ClaimResults cr = new ClaimResults();
+        cr.setClaimId(cl.getId());
+
+        HashMap<String, Object> params = new HashMap<>();
+        params.put("claimant", c);
+        params.put("claim", cl);
+        params.put("claimResults", cr);
+        this.session.startProcess("claims.ClaimRuleFlow", params);
+        this.session.fireAllRules();
+
+        assertTrue("Incorrect number of ClaimResults reasons", cr.getReasons().size() == 1);
+        assertEquals("Claim owner properly listed as involved.", cr.getReasons().get(0));
+    }
+}