TSK-564: Improved classification mapper test coverage

This commit is contained in:
julian.schallenmueller 2018-06-12 09:03:25 +02:00 committed by Holger Hagen
parent 73d1f33e9f
commit f54a02ccb1
3 changed files with 94 additions and 13 deletions

View File

@ -1,8 +1,11 @@
package acceptance.classification; package acceptance.classification;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.fail;
import java.util.List; import java.util.List;
import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import acceptance.AbstractAccTest; import acceptance.AbstractAccTest;
@ -25,14 +28,31 @@ public class GetClassificationAccTest extends AbstractAccTest {
ClassificationService classificationService = taskanaEngine.getClassificationService(); ClassificationService classificationService = taskanaEngine.getClassificationService();
List<ClassificationSummary> classificationSummaryList = classificationService.createClassificationQuery() List<ClassificationSummary> classificationSummaryList = classificationService.createClassificationQuery()
.list(); .list();
Assert.assertNotNull(classificationSummaryList); assertNotNull(classificationSummaryList);
} }
@Test @Test
public void testGetOneClassificationForDomain() throws ClassificationNotFoundException { public void testGetOneClassificationByKeyAndDomain() throws ClassificationNotFoundException {
ClassificationService classificationService = taskanaEngine.getClassificationService(); ClassificationService classificationService = taskanaEngine.getClassificationService();
Classification classification = classificationService.getClassification("T6310", "DOMAIN_A"); Classification classification = classificationService.getClassification("T6310", "DOMAIN_A");
Assert.assertNotNull(classification); assertNotNull(classification);
assertEquals("CLI:100000000000000000000000000000000011", classification.getId());
assertEquals("", classification.getParentId());
assertEquals("AUTOMATIC", classification.getCategory());
assertEquals("TASK", classification.getType());
assertEquals(true, classification.getIsValidInDomain());
assertEquals("T-GUK Honorarrechnung erstellen", classification.getName());
assertEquals(2, classification.getPriority());
assertEquals("P2D", classification.getServiceLevel());
assertEquals("", classification.getApplicationEntryPoint());
assertEquals("VNR", classification.getCustom1());
assertEquals("custom2", classification.getCustom2());
assertEquals("custom3", classification.getCustom3());
assertEquals("custom4", classification.getCustom4());
assertEquals("custom5", classification.getCustom5());
assertEquals("custom6", classification.getCustom6());
assertEquals("custom7", classification.getCustom7());
assertEquals("custom8", classification.getCustom8());
} }
@Test @Test
@ -40,7 +60,42 @@ public class GetClassificationAccTest extends AbstractAccTest {
ClassificationService classificationService = taskanaEngine.getClassificationService(); ClassificationService classificationService = taskanaEngine.getClassificationService();
Classification classification = classificationService Classification classification = classificationService
.getClassification("CLI:100000000000000000000000000000000011"); .getClassification("CLI:100000000000000000000000000000000011");
Assert.assertNotNull(classification); assertNotNull(classification);
assertEquals("T6310", classification.getKey());
assertEquals("", classification.getParentId());
assertEquals("AUTOMATIC", classification.getCategory());
assertEquals("TASK", classification.getType());
assertEquals("DOMAIN_A", classification.getDomain());
assertEquals(true, classification.getIsValidInDomain());
assertEquals("T-GUK Honorarrechnung erstellen", classification.getName());
assertEquals(2, classification.getPriority());
assertEquals("P2D", classification.getServiceLevel());
assertEquals("", classification.getApplicationEntryPoint());
assertEquals("VNR", classification.getCustom1());
assertEquals("custom2", classification.getCustom2());
assertEquals("custom3", classification.getCustom3());
assertEquals("custom4", classification.getCustom4());
assertEquals("custom5", classification.getCustom5());
assertEquals("custom6", classification.getCustom6());
assertEquals("custom7", classification.getCustom7());
assertEquals("custom8", classification.getCustom8());
}
@Test
public void testGetClassificationAsSummary() throws ClassificationNotFoundException {
ClassificationService classificationService = taskanaEngine.getClassificationService();
ClassificationSummary classification = classificationService
.getClassification("CLI:100000000000000000000000000000000011").asSummary();
assertNotNull(classification);
assertEquals("T6310", classification.getKey());
assertEquals("", classification.getParentId());
assertEquals("AUTOMATIC", classification.getCategory());
assertEquals("TASK", classification.getType());
assertEquals("DOMAIN_A", classification.getDomain());
assertEquals("T-GUK Honorarrechnung erstellen", classification.getName());
//assertEquals("Generali Unterstützungskasse Honorar wird fällig", classification.getDescription());
assertEquals(2, classification.getPriority());
assertEquals("P2D", classification.getServiceLevel());
} }
@Test(expected = ClassificationNotFoundException.class) @Test(expected = ClassificationNotFoundException.class)
@ -48,7 +103,7 @@ public class GetClassificationAccTest extends AbstractAccTest {
ClassificationService classificationService = taskanaEngine.getClassificationService(); ClassificationService classificationService = taskanaEngine.getClassificationService();
Classification classification = classificationService Classification classification = classificationService
.getClassification("CLI:100000000470000000000000000000000011"); .getClassification("CLI:100000000470000000000000000000000011");
Assert.fail("ClassificationNotFoundException was expected"); fail("ClassificationNotFoundException was expected");
} }
@Test @Test
@ -56,17 +111,17 @@ public class GetClassificationAccTest extends AbstractAccTest {
throws ClassificationNotFoundException { throws ClassificationNotFoundException {
ClassificationService classificationService = taskanaEngine.getClassificationService(); ClassificationService classificationService = taskanaEngine.getClassificationService();
Classification classification = classificationService.getClassification("L10000", "DOMAIN_B"); Classification classification = classificationService.getClassification("L10000", "DOMAIN_B");
Assert.assertNotNull(classification); assertNotNull(classification);
Assert.assertEquals("", classification.getDomain()); assertEquals("", classification.getDomain());
Assert.assertEquals(999L, classification.getPriority()); assertEquals(999L, classification.getPriority());
} }
@Test @Test
public void testGetOneClassificationForRootDomain() throws ClassificationNotFoundException { public void testGetOneClassificationForRootDomain() throws ClassificationNotFoundException {
ClassificationService classificationService = taskanaEngine.getClassificationService(); ClassificationService classificationService = taskanaEngine.getClassificationService();
Classification classification = classificationService.getClassification("L10000", ""); Classification classification = classificationService.getClassification("L10000", "");
Assert.assertNotNull(classification); assertNotNull(classification);
Assert.assertEquals("", classification.getDomain()); assertEquals("", classification.getDomain());
Assert.assertEquals(999L, classification.getPriority()); assertEquals(999L, classification.getPriority());
} }
} }

View File

@ -3,18 +3,28 @@ package acceptance.classification;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNotNull;
import java.time.Instant;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith;
import acceptance.AbstractAccTest; import acceptance.AbstractAccTest;
import pro.taskana.ClassificationService; import pro.taskana.ClassificationService;
import pro.taskana.ClassificationSummary; import pro.taskana.ClassificationSummary;
import pro.taskana.TimeInterval;
import pro.taskana.exceptions.ClassificationNotFoundException;
import pro.taskana.exceptions.ConcurrencyException;
import pro.taskana.exceptions.InvalidArgumentException;
import pro.taskana.exceptions.NotAuthorizedException;
import pro.taskana.security.JAASRunner;
import pro.taskana.security.WithAccessId;
/** /**
* Acceptance test for all "get classification" scenarios. * Acceptance test for all "get classification" scenarios.
*/ */
@RunWith(JAASRunner.class)
public class QueryClassificationAccTest extends AbstractAccTest { public class QueryClassificationAccTest extends AbstractAccTest {
public QueryClassificationAccTest() { public QueryClassificationAccTest() {
@ -228,4 +238,20 @@ public class QueryClassificationAccTest extends AbstractAccTest {
} }
@WithAccessId(
userName = "businessadmin")
@Test
public void testFindClassificationByModifiedWithin()
throws ClassificationNotFoundException, NotAuthorizedException, ConcurrencyException, InvalidArgumentException {
ClassificationService classificationService = taskanaEngine.getClassificationService();
String clId = "CLI:200000000000000000000000000000000015";
classificationService.updateClassification(classificationService.getClassification(clId));
List<ClassificationSummary> list = classificationService.createClassificationQuery()
.modifiedWithin(new TimeInterval(
classificationService.getClassification(clId).getModified(),
Instant.now()))
.list();
assertEquals(1, list.size());
assertEquals(clId, list.get(0).getId());
}
} }

View File

@ -25,7 +25,7 @@ INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000008', 'L12010', '', '', 'EXTERNAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'Gewährung-Policendarlehen', 'Gewährung-Policendarlehen', 1, 'P1D', '', 'VNR,RVNR,KOLVNR', '', '', '', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000008', 'L12010', '', '', 'EXTERNAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'Gewährung-Policendarlehen', 'Gewährung-Policendarlehen', 1, 'P1D', '', 'VNR,RVNR,KOLVNR', '', '', '', '', '', '', '');
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000009', 'L140101', '', '', 'EXTERNAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'Zustimmungserklärung', 'Zustimmungserklärung', 2, 'P2D', '', 'VNR', '', '', '', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000009', 'L140101', '', '', 'EXTERNAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'Zustimmungserklärung', 'Zustimmungserklärung', 2, 'P2D', '', 'VNR', '', '', '', '', '', '', '');
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000010', 'T2100', '', '', 'MANUAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'T-Vertragstermin VERA', 'T-Vertragstermin VERA', 2, 'P2D', '', 'VNR', '', '', '', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000010', 'T2100', '', '', 'MANUAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'T-Vertragstermin VERA', 'T-Vertragstermin VERA', 2, 'P2D', '', 'VNR', '', '', '', '', '', '', '');
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000011', 'T6310', '', '', 'AUTOMATIC', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'T-GUK Honorarrechnung erstellen', 'Generali Unterstützungskasse Honorar wird fällig', 2, 'P2D', '', 'VNR', '', '', '', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000011', 'T6310', '', '', 'AUTOMATIC', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'T-GUK Honorarrechnung erstellen', 'Generali Unterstützungskasse Honorar wird fällig', 2, 'P2D', '', 'VNR', 'custom2', 'custom3', 'custom4', 'custom5', 'custom6', 'custom7', 'custom8');
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000013', 'DOCTYPE_DEFAULT', '', '', 'EXTERNAL', 'DOCUMENT', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'EP allgemein', 'EP allgemein', 99, 'P2000D', '', 'VNR', '', '', '', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000013', 'DOCTYPE_DEFAULT', '', '', 'EXTERNAL', 'DOCUMENT', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'EP allgemein', 'EP allgemein', 99, 'P2000D', '', 'VNR', '', '', '', '', '', '', '');
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000014', 'L10000', '', '', 'EXTERNAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'BUZ-Leistungsfall', 'BUZ-Leistungsfall', 1, 'P1D', '', 'VNR,RVNR,KOLVNR', 'VNR', 'VNR', 'VNR', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000014', 'L10000', '', '', 'EXTERNAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'BUZ-Leistungsfall', 'BUZ-Leistungsfall', 1, 'P1D', '', 'VNR,RVNR,KOLVNR', 'VNR', 'VNR', 'VNR', '', '', '', '');
INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000016', 'T2000', '', '', 'MANUAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'T-Vertragstermin', 'T-Vertragstermin', 1, 'P1D', '', 'VNR,KOLVNR,RVNR', 'CUSTOM_2', 'Custom_3', 'custom_4', '', '', '', ''); INSERT INTO TASKANA.CLASSIFICATION VALUES('CLI:100000000000000000000000000000000016', 'T2000', '', '', 'MANUAL', 'TASK', 'DOMAIN_A', TRUE, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 'T-Vertragstermin', 'T-Vertragstermin', 1, 'P1D', '', 'VNR,KOLVNR,RVNR', 'CUSTOM_2', 'Custom_3', 'custom_4', '', '', '', '');