TSK-1841: refactor GetClassificationAccTest to use test-api
This commit is contained in:
parent
c46222c43a
commit
59a4968106
|
@ -0,0 +1,163 @@
|
|||
package acceptance.classification.get;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.assertThatThrownBy;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_1;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_2;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_3;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_4;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_5;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_6;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_7;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_8;
|
||||
import static pro.taskana.common.api.SharedConstants.MASTER_DOMAIN;
|
||||
|
||||
import java.time.Instant;
|
||||
import org.assertj.core.api.ThrowableAssert.ThrowingCallable;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import pro.taskana.classification.api.ClassificationService;
|
||||
import pro.taskana.classification.api.exceptions.ClassificationNotFoundException;
|
||||
import pro.taskana.classification.api.models.Classification;
|
||||
import pro.taskana.testapi.DefaultTestEntities;
|
||||
import pro.taskana.testapi.TaskanaInject;
|
||||
import pro.taskana.testapi.TaskanaIntegrationTest;
|
||||
import pro.taskana.testapi.builder.ClassificationBuilder;
|
||||
import pro.taskana.testapi.security.WithAccessId;
|
||||
|
||||
@TaskanaIntegrationTest
|
||||
class GetClassificationAccTest {
|
||||
|
||||
@TaskanaInject ClassificationService classificationService;
|
||||
|
||||
Classification defaultClassification;
|
||||
Classification classificationWithAllProperties;
|
||||
|
||||
@WithAccessId(user = "businessadmin")
|
||||
@BeforeAll
|
||||
void setup() throws Exception {
|
||||
defaultClassification =
|
||||
DefaultTestEntities.defaultTestClassification().buildAndStore(classificationService);
|
||||
classificationWithAllProperties =
|
||||
ClassificationBuilder.newClassification()
|
||||
.key("Key")
|
||||
.domain("DOMAIN_A")
|
||||
.name("Name")
|
||||
.category("AUTOMATIC")
|
||||
.parentId(defaultClassification.getId())
|
||||
.type("TASK")
|
||||
.priority(2)
|
||||
.applicationEntryPoint("EntryPoint")
|
||||
.created(Instant.now())
|
||||
.serviceLevel("P2D")
|
||||
.description("Description")
|
||||
.modified(Instant.now())
|
||||
.customAttribute(CUSTOM_1, "custom1")
|
||||
.customAttribute(CUSTOM_2, "custom2")
|
||||
.customAttribute(CUSTOM_3, "custom3")
|
||||
.customAttribute(CUSTOM_4, "custom4")
|
||||
.customAttribute(CUSTOM_5, "custom5")
|
||||
.customAttribute(CUSTOM_6, "custom6")
|
||||
.customAttribute(CUSTOM_7, "custom7")
|
||||
.customAttribute(CUSTOM_8, "custom8")
|
||||
.buildAndStore(classificationService);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_getClassificationById_When_AllPropertiesSet() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification(classificationWithAllProperties.getId());
|
||||
|
||||
assertThat(classification)
|
||||
.hasNoNullFieldsOrProperties()
|
||||
.isEqualTo(classificationWithAllProperties);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_getClassificationByKeyAndDomain_When_AllPropertiesSet() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification(
|
||||
classificationWithAllProperties.getKey(), classificationWithAllProperties.getDomain());
|
||||
|
||||
assertThat(classification)
|
||||
.hasNoNullFieldsOrProperties()
|
||||
.isEqualTo(classificationWithAllProperties);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_ThrowException_When_ClassificationIdIsNull() {
|
||||
ThrowingCallable test = () -> classificationService.getClassification(null);
|
||||
|
||||
assertThatThrownBy(test).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_ThrowException_When_ClassificationIdDoesNotExist() {
|
||||
ThrowingCallable test = () -> classificationService.getClassification("CLI:NonExistingId");
|
||||
|
||||
assertThatThrownBy(test).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_ThrowException_When_ClassificationKeyIsNull() {
|
||||
ThrowingCallable test =
|
||||
() ->
|
||||
classificationService.getClassification(
|
||||
null, classificationWithAllProperties.getDomain());
|
||||
|
||||
assertThatThrownBy(test).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_ThrowException_When_ClassificationKeyDoesNotExist() {
|
||||
ThrowingCallable test =
|
||||
() ->
|
||||
classificationService.getClassification(
|
||||
"WrongKey", classificationWithAllProperties.getDomain());
|
||||
|
||||
assertThatThrownBy(test).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_ReturnMasterClassification_When_ClassificationDomainDoesNotExist() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification(
|
||||
classificationWithAllProperties.getKey(), "WrongDomain");
|
||||
|
||||
assertThat(classification).isNotNull().hasNoNullFieldsOrProperties();
|
||||
assertThat(classification.getDomain()).isEqualTo(MASTER_DOMAIN);
|
||||
assertThat(classification.getKey()).isEqualTo(classificationWithAllProperties.getKey());
|
||||
}
|
||||
|
||||
@WithAccessId(user = "user-1-1")
|
||||
@Test
|
||||
void should_GetSpecialCharacterCorrectly_When_AFieldContainsASpecialCharacter() throws Exception {
|
||||
Classification classification =
|
||||
DefaultTestEntities.defaultTestClassification()
|
||||
.name("Zustimmungserklärung")
|
||||
.buildAndStore(classificationService, "businessadmin");
|
||||
|
||||
Classification result = classificationService.getClassification(classification.getId());
|
||||
|
||||
assertThat(result.getName()).isEqualTo("Zustimmungserklärung");
|
||||
}
|
||||
|
||||
@Test
|
||||
void should_GetClassification_For_MasterDomain() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification(
|
||||
classificationWithAllProperties.getKey(), MASTER_DOMAIN);
|
||||
|
||||
assertThat(classification).isNotNull().hasNoNullFieldsOrProperties();
|
||||
assertThat(classification.getDomain()).isEqualTo(MASTER_DOMAIN);
|
||||
assertThat(classification.getKey()).isEqualTo(classificationWithAllProperties.getKey());
|
||||
}
|
||||
}
|
|
@ -1,152 +0,0 @@
|
|||
package acceptance.classification.get;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.assertThatThrownBy;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_1;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_2;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_3;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_4;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_5;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_6;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_7;
|
||||
import static pro.taskana.classification.api.ClassificationCustomField.CUSTOM_8;
|
||||
import static pro.taskana.common.api.SharedConstants.MASTER_DOMAIN;
|
||||
|
||||
import acceptance.AbstractAccTest;
|
||||
import java.util.List;
|
||||
import org.assertj.core.api.ThrowableAssert.ThrowingCallable;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import pro.taskana.classification.api.ClassificationService;
|
||||
import pro.taskana.classification.api.exceptions.ClassificationNotFoundException;
|
||||
import pro.taskana.classification.api.models.Classification;
|
||||
import pro.taskana.classification.api.models.ClassificationSummary;
|
||||
|
||||
/** Acceptance test for all "get classification" scenarios. */
|
||||
class GetClassificationAccTest extends AbstractAccTest {
|
||||
|
||||
private ClassificationService classificationService;
|
||||
|
||||
GetClassificationAccTest() {
|
||||
super();
|
||||
classificationService = taskanaEngine.getClassificationService();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFindAllClassifications() {
|
||||
List<ClassificationSummary> classificationSummaryList =
|
||||
classificationService.createClassificationQuery().list();
|
||||
assertThat(classificationSummaryList).isNotNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetOneClassificationByKeyAndDomain() throws Exception {
|
||||
Classification classification = classificationService.getClassification("T6310", "DOMAIN_A");
|
||||
assertThat(classification).isNotNull();
|
||||
assertThat(classification.getId()).isEqualTo("CLI:100000000000000000000000000000000011");
|
||||
assertThat(classification.getParentId()).isEmpty();
|
||||
assertThat(classification.getCategory()).isEqualTo("AUTOMATIC");
|
||||
assertThat(classification.getType()).isEqualTo("TASK");
|
||||
assertThat(classification.getIsValidInDomain()).isTrue();
|
||||
assertThat(classification.getName()).isEqualTo("T-GUK Honorarrechnung erstellen");
|
||||
assertThat(classification.getPriority()).isEqualTo(2);
|
||||
assertThat(classification.getServiceLevel()).isEqualTo("P2D");
|
||||
assertThat(classification.getApplicationEntryPoint()).isEqualTo("point0815");
|
||||
assertThat(classification.getCustomField(CUSTOM_1)).isEqualTo("VNR");
|
||||
assertThat(classification.getCustomField(CUSTOM_2)).isEqualTo("custom2");
|
||||
assertThat(classification.getCustomField(CUSTOM_3)).isEqualTo("custom3");
|
||||
assertThat(classification.getCustomField(CUSTOM_4)).isEqualTo("custom4");
|
||||
assertThat(classification.getCustomField(CUSTOM_5)).isEqualTo("custom5");
|
||||
assertThat(classification.getCustomField(CUSTOM_6)).isEqualTo("custom6");
|
||||
assertThat(classification.getCustomField(CUSTOM_7)).isEqualTo("custom7");
|
||||
assertThat(classification.getCustomField(CUSTOM_8)).isEqualTo("custom8");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetOneClassificationById() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification("CLI:100000000000000000000000000000000011");
|
||||
assertThat(classification).isNotNull();
|
||||
assertThat(classification.getKey()).isEqualTo("T6310");
|
||||
assertThat(classification.getParentId()).isEmpty();
|
||||
assertThat(classification.getCategory()).isEqualTo("AUTOMATIC");
|
||||
assertThat(classification.getType()).isEqualTo("TASK");
|
||||
assertThat(classification.getDomain()).isEqualTo("DOMAIN_A");
|
||||
assertThat(classification.getIsValidInDomain()).isTrue();
|
||||
assertThat(classification.getName()).isEqualTo("T-GUK Honorarrechnung erstellen");
|
||||
assertThat(classification.getPriority()).isEqualTo(2);
|
||||
assertThat(classification.getServiceLevel()).isEqualTo("P2D");
|
||||
assertThat(classification.getApplicationEntryPoint()).isEqualTo("point0815");
|
||||
assertThat(classification.getCustomField(CUSTOM_1)).isEqualTo("VNR");
|
||||
assertThat(classification.getCustomField(CUSTOM_2)).isEqualTo("custom2");
|
||||
assertThat(classification.getCustomField(CUSTOM_3)).isEqualTo("custom3");
|
||||
assertThat(classification.getCustomField(CUSTOM_4)).isEqualTo("custom4");
|
||||
assertThat(classification.getCustomField(CUSTOM_5)).isEqualTo("custom5");
|
||||
assertThat(classification.getCustomField(CUSTOM_6)).isEqualTo("custom6");
|
||||
assertThat(classification.getCustomField(CUSTOM_7)).isEqualTo("custom7");
|
||||
assertThat(classification.getCustomField(CUSTOM_8)).isEqualTo("custom8");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetClassificationWithSpecialCharacter() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification("CLI:100000000000000000000000000000000009");
|
||||
assertThat(classification.getName()).isEqualTo("Zustimmungserklärung");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetClassificationAsSummary() throws Exception {
|
||||
ClassificationSummary classification =
|
||||
classificationService
|
||||
.getClassification("CLI:100000000000000000000000000000000011")
|
||||
.asSummary();
|
||||
assertThat(classification).isNotNull();
|
||||
assertThat(classification.getKey()).isEqualTo("T6310");
|
||||
assertThat(classification.getParentId()).isEmpty();
|
||||
assertThat(classification.getCategory()).isEqualTo("AUTOMATIC");
|
||||
assertThat(classification.getType()).isEqualTo("TASK");
|
||||
assertThat(classification.getDomain()).isEqualTo("DOMAIN_A");
|
||||
assertThat(classification.getName()).isEqualTo("T-GUK Honorarrechnung erstellen");
|
||||
// assertThat(classification.getDescription())
|
||||
// .isEqualTo("Generali Unterstützungskasse Honorar wird fällig");
|
||||
assertThat(classification.getPriority()).isEqualTo(2);
|
||||
assertThat(classification.getServiceLevel()).isEqualTo("P2D");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetOneClassificationByIdFails() {
|
||||
ThrowingCallable call =
|
||||
() -> classificationService.getClassification("CLI:100000000470000000000000000000000011");
|
||||
assertThatThrownBy(call).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetClassificationByNullKeyFails() {
|
||||
ThrowingCallable call = () -> classificationService.getClassification(null, MASTER_DOMAIN);
|
||||
assertThatThrownBy(call).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetClassificationByInvalidKeyAndDomain() {
|
||||
ThrowingCallable call =
|
||||
() -> classificationService.getClassification("Key0815", "NOT_EXISTING");
|
||||
assertThatThrownBy(call).isInstanceOf(ClassificationNotFoundException.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetOneClassificationForDomainAndGetClassificationFromMasterDomain() throws Exception {
|
||||
Classification classification = classificationService.getClassification("L10000", "DOMAIN_B");
|
||||
assertThat(classification).isNotNull();
|
||||
assertThat(classification.getDomain()).isEmpty();
|
||||
assertThat(classification.getPriority()).isEqualTo(999L);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testGetOneClassificationForMasterDomain() throws Exception {
|
||||
Classification classification =
|
||||
classificationService.getClassification("L10000", MASTER_DOMAIN);
|
||||
assertThat(classification).isNotNull();
|
||||
assertThat(classification.getDomain()).isEmpty();
|
||||
assertThat(classification.getPriority()).isEqualTo(999L);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue