TSK-1105 Make attributes in ClassificationResource private

TSK-1105 Converted tests to AssertJ
This commit is contained in:
Sofie Hofmann 2020-02-11 13:45:10 +01:00
parent f3f71a66b5
commit 38d5c8535c
5 changed files with 85 additions and 89 deletions

View File

@ -173,7 +173,7 @@ public class ClassificationController extends AbstractPagingController {
}
ResponseEntity<ClassificationResource> result;
if (classificationId.equals(resource.classificationId)) {
if (classificationId.equals(resource.getClassificationId())) {
Classification classification = classificationResourceAssembler.toModel(resource);
classification = classificationService.updateClassification(classification);
result = ResponseEntity.ok(classificationResourceAssembler.toResource(classification));

View File

@ -38,6 +38,7 @@ import pro.taskana.rest.resource.ClassificationResource;
import pro.taskana.rest.resource.ClassificationResourceAssembler;
/** Controller for Importing / Exporting classifications. */
@SuppressWarnings("unused")
@RestController
@EnableHypermediaSupport(type = EnableHypermediaSupport.HypermediaType.HAL)
public class ClassificationDefinitionController {
@ -104,30 +105,24 @@ public class ClassificationDefinitionController {
}
private Map<String, String> getSystemIds() {
Map<String, String> systemIds =
classificationService.createClassificationQuery().list().stream()
.collect(
Collectors.toMap(
i -> i.getKey() + "|" + i.getDomain(), ClassificationSummary::getId));
return systemIds;
return classificationService.createClassificationQuery().list().stream()
.collect(
Collectors.toMap(i -> i.getKey() + "|" + i.getDomain(), ClassificationSummary::getId));
}
private List<ClassificationResource> extractClassificationResourcesFromFile(MultipartFile file)
throws IOException {
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
List<ClassificationResource> classificationsDefinitions =
mapper.readValue(
file.getInputStream(), new TypeReference<List<ClassificationResource>>() {});
return classificationsDefinitions;
return mapper.readValue(
file.getInputStream(), new TypeReference<List<ClassificationResource>>() {});
}
private void checkForDuplicates(List<ClassificationResource> classificationList) {
List<String> identifiers = new ArrayList<>();
Set<String> duplicates = new HashSet<>();
for (ClassificationResource classification : classificationList) {
String identifier = classification.key + "|" + classification.domain;
String identifier = classification.getKey() + "|" + classification.getDomain();
if (identifiers.contains(identifier)) {
duplicates.add(identifier);
} else {
@ -149,8 +144,8 @@ public class ClassificationDefinitionController {
cl -> newKeysWithDomain.add(cl.getKey() + "|" + cl.getDomain()));
for (ClassificationResource cl : classificationResources) {
cl.parentId = cl.parentId == null ? "" : cl.parentId;
cl.parentKey = cl.parentKey == null ? "" : cl.parentKey;
cl.setParentId(cl.getParentId() == null ? "" : cl.getParentId());
cl.setParentKey(cl.getParentKey() == null ? "" : cl.getParentKey());
if (!cl.getParentId().equals("") && cl.getParentKey().equals("")) {
for (ClassificationResource parent : classificationResources) {
@ -160,7 +155,7 @@ public class ClassificationDefinitionController {
}
}
String parentKeyAndDomain = cl.parentKey + "|" + cl.domain;
String parentKeyAndDomain = cl.getParentKey() + "|" + cl.getDomain();
if (!cl.getParentKey().isEmpty() && !cl.getParentKey().equals("")) {
if (newKeysWithDomain.contains(parentKeyAndDomain)
|| systemIds.containsKey(parentKeyAndDomain)) {
@ -189,7 +184,7 @@ public class ClassificationDefinitionController {
classificationResource.setClassificationId(null);
String systemId =
systemIds.get(classificationResource.key + "|" + classificationResource.domain);
systemIds.get(classificationResource.getKey() + "|" + classificationResource.getDomain());
if (systemId != null) {
updateExistingClassification(classificationResource, systemId);
} else {
@ -234,23 +229,23 @@ public class ClassificationDefinitionController {
if (cl.getType() != null && !cl.getType().equals(currentClassification.getType())) {
throw new InvalidArgumentException("Can not change the type of a classification.");
}
currentClassification.setCategory(cl.category);
currentClassification.setIsValidInDomain(cl.isValidInDomain);
currentClassification.setName(cl.name);
currentClassification.setParentId(cl.parentId);
currentClassification.setParentKey(cl.parentKey);
currentClassification.setDescription(cl.description);
currentClassification.setPriority(cl.priority);
currentClassification.setServiceLevel(cl.serviceLevel);
currentClassification.setApplicationEntryPoint(cl.applicationEntryPoint);
currentClassification.setCustom1(cl.custom1);
currentClassification.setCustom2(cl.custom2);
currentClassification.setCustom3(cl.custom3);
currentClassification.setCustom4(cl.custom4);
currentClassification.setCustom5(cl.custom5);
currentClassification.setCustom6(cl.custom6);
currentClassification.setCustom7(cl.custom7);
currentClassification.setCustom8(cl.custom8);
currentClassification.setCategory(cl.getCategory());
currentClassification.setIsValidInDomain(cl.getIsValidInDomain());
currentClassification.setName(cl.getName());
currentClassification.setParentId(cl.getParentId());
currentClassification.setParentKey(cl.getParentKey());
currentClassification.setDescription(cl.getDescription());
currentClassification.setPriority(cl.getPriority());
currentClassification.setServiceLevel(cl.getServiceLevel());
currentClassification.setApplicationEntryPoint(cl.getApplicationEntryPoint());
currentClassification.setCustom1(cl.getCustom1());
currentClassification.setCustom2(cl.getCustom2());
currentClassification.setCustom3(cl.getCustom3());
currentClassification.setCustom4(cl.getCustom4());
currentClassification.setCustom5(cl.getCustom5());
currentClassification.setCustom6(cl.getCustom6());
currentClassification.setCustom7(cl.getCustom7());
currentClassification.setCustom8(cl.getCustom8());
classificationService.updateClassification(currentClassification);
LOGGER.debug("Exit from updateExistingClassification()");
}

View File

@ -8,29 +8,29 @@ import pro.taskana.classification.api.Classification;
/** Resource class for {@link Classification}. */
public class ClassificationResource extends ResourceSupport {
@NotNull public String classificationId;
@NotNull public String key;
public String parentId;
public String parentKey;
public String category;
public String type;
public String domain;
public Boolean isValidInDomain;
public String created; // ISO-8601
public String modified; // ISO-8601
public String name;
public String description;
public int priority;
public String serviceLevel; // PddDThhHmmM
public String applicationEntryPoint;
public String custom1;
public String custom2;
public String custom3;
public String custom4;
public String custom5;
public String custom6;
public String custom7;
public String custom8;
@NotNull private String classificationId;
@NotNull private String key;
private String parentId;
private String parentKey;
private String category;
private String type;
private String domain;
private Boolean isValidInDomain;
private String created; // ISO-8601
private String modified; // ISO-8601
private String name;
private String description;
private int priority;
private String serviceLevel; // PddDThhHmmM
private String applicationEntryPoint;
private String custom1;
private String custom2;
private String custom3;
private String custom4;
private String custom5;
private String custom6;
private String custom7;
private String custom8;
public ClassificationResource() {}

View File

@ -55,9 +55,9 @@ public class ClassificationResourceAssembler
ClassificationImpl classification =
(ClassificationImpl)
classificationService.newClassification(
classificationResource.domain,
classificationResource.key,
classificationResource.type);
classificationResource.getDomain(),
classificationResource.getKey(),
classificationResource.getType());
BeanUtils.copyProperties(classificationResource, classification);
classification.setId(classificationResource.getClassificationId());

View File

@ -1,7 +1,8 @@
package pro.taskana.rest.resource;
import static org.assertj.core.api.Assertions.assertThat;
import java.time.Instant;
import org.junit.Assert;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
@ -15,9 +16,9 @@ import pro.taskana.rest.Mapping;
@TaskanaSpringBootTest
class ClassificationAssemblerTest {
@Autowired private ClassificationResourceAssembler classificationResourceAssembler;
@Autowired ClassificationResourceAssembler classificationResourceAssembler;
@Autowired private ClassificationService classificationService;
@Autowired ClassificationService classificationService;
@Test
void classificationToResource() {
@ -90,35 +91,35 @@ class ClassificationAssemblerTest {
}
private void testLinks(ClassificationResource resource) {
Assert.assertEquals(1, resource.getLinks().size());
Assert.assertEquals(
Mapping.URL_CLASSIFICATIONS_ID.replaceAll("\\{.*}", resource.getClassificationId()),
resource.getLink("self").getHref());
assertThat(resource.getLinks()).hasSize(1);
assertThat(Mapping.URL_CLASSIFICATIONS_ID.replaceAll("\\{.*}", resource.getClassificationId()))
.isEqualTo(resource.getLink("self").getHref());
}
private void testEquality(
Classification classification, ClassificationResource classificationResource) {
Assert.assertEquals(
classification.getApplicationEntryPoint(), classificationResource.applicationEntryPoint);
Assert.assertEquals(classification.getKey(), classificationResource.key);
Assert.assertEquals(classification.getDomain(), classificationResource.domain);
Assert.assertEquals(classification.getId(), classificationResource.classificationId);
Assert.assertEquals(classification.getDescription(), classificationResource.description);
Assert.assertEquals(classification.getName(), classificationResource.name);
Assert.assertEquals(classification.getServiceLevel(), classificationResource.serviceLevel);
Assert.assertEquals(classification.getCategory(), classificationResource.category);
Assert.assertEquals(classification.getCustom1(), classificationResource.custom1);
Assert.assertEquals(classification.getCustom2(), classificationResource.custom2);
Assert.assertEquals(classification.getCustom3(), classificationResource.custom3);
Assert.assertEquals(classification.getCustom4(), classificationResource.custom4);
Assert.assertEquals(classification.getCustom5(), classificationResource.custom5);
Assert.assertEquals(classification.getCustom6(), classificationResource.custom6);
Assert.assertEquals(classification.getCustom7(), classificationResource.custom7);
Assert.assertEquals(classification.getCustom8(), classificationResource.custom8);
Assert.assertEquals(classification.getParentId(), classificationResource.parentId);
Assert.assertEquals(classification.getType(), classificationResource.type);
Assert.assertEquals(classification.getPriority(), classificationResource.priority);
Assert.assertEquals(
classification.getIsValidInDomain(), classificationResource.isValidInDomain);
assertThat(classification.getApplicationEntryPoint())
.isEqualTo(classificationResource.getApplicationEntryPoint());
assertThat(classification.getKey()).isEqualTo(classificationResource.getKey());
assertThat(classification.getDomain()).isEqualTo(classificationResource.getDomain());
assertThat(classification.getId()).isEqualTo(classificationResource.getClassificationId());
assertThat(classification.getDescription()).isEqualTo(classificationResource.getDescription());
assertThat(classification.getName()).isEqualTo(classificationResource.getName());
assertThat(classification.getServiceLevel())
.isEqualTo(classificationResource.getServiceLevel());
assertThat(classification.getCategory()).isEqualTo(classificationResource.getCategory());
assertThat(classification.getCustom1()).isEqualTo(classificationResource.getCustom1());
assertThat(classification.getCustom2()).isEqualTo(classificationResource.getCustom2());
assertThat(classification.getCustom3()).isEqualTo(classificationResource.getCustom3());
assertThat(classification.getCustom4()).isEqualTo(classificationResource.getCustom4());
assertThat(classification.getCustom5()).isEqualTo(classificationResource.getCustom5());
assertThat(classification.getCustom6()).isEqualTo(classificationResource.getCustom6());
assertThat(classification.getCustom7()).isEqualTo(classificationResource.getCustom7());
assertThat(classification.getCustom8()).isEqualTo(classificationResource.getCustom8());
assertThat(classification.getParentId()).isEqualTo(classificationResource.getParentId());
assertThat(classification.getType()).isEqualTo(classificationResource.getType());
assertThat(classification.getPriority()).isEqualTo(classificationResource.getPriority());
assertThat(classification.getIsValidInDomain())
.isEqualTo(classificationResource.getIsValidInDomain());
}
}