TSK-426: creation of classifications with empty id is now possible.
This commit is contained in:
parent
8307e3e7a7
commit
fdfb9b65d0
|
@ -202,7 +202,7 @@ public class ClassificationServiceImpl implements ClassificationService {
|
|||
*/
|
||||
private void initDefaultClassificationValues(ClassificationImpl classification) throws InvalidArgumentException {
|
||||
Instant now = Instant.now();
|
||||
if (classification.getId() == null) {
|
||||
if (classification.getId() == null || "".equals(classification.getId())) {
|
||||
classification.setId(IdGenerator.generateWithPrefix(ID_PREFIX_CLASSIFICATION));
|
||||
}
|
||||
|
||||
|
|
|
@ -4,6 +4,11 @@ import static org.junit.Assert.assertEquals;
|
|||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.URL;
|
||||
import java.util.Collections;
|
||||
|
||||
import org.junit.Test;
|
||||
|
@ -104,6 +109,38 @@ public class ClassificationControllerIntTest {
|
|||
assertNotNull(response.getBody().getLink(Link.REL_PREVIOUS));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCreateClassification() throws IOException {
|
||||
String newClassification = "{\"classificationId\":\"\",\"category\":\"MANUAL\",\"domain\":\"DOMAIN_A\",\"key\":\"NEW_CLASS\",\"name\":\"new classification\",\"type\":\"TASK\"}";
|
||||
// {"classificationId": "","key": "aaaaa","parentId": "","category": "EXTERN","type": "TASK","domain": ""
|
||||
URL url = new URL("http://127.0.0.1:" + port + "/v1/classifications");
|
||||
HttpURLConnection con = (HttpURLConnection) url.openConnection();
|
||||
con.setRequestMethod("POST");
|
||||
con.setRequestProperty("Authorization", "Basic dGVhbWxlYWRfMTp0ZWFtbGVhZF8x");
|
||||
con.setDoOutput(true);
|
||||
con.setRequestProperty("Content-Type", "application/json");
|
||||
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(con.getOutputStream()));
|
||||
out.write(newClassification);
|
||||
out.flush();
|
||||
out.close();
|
||||
assertEquals(201, con.getResponseCode());
|
||||
con.disconnect();
|
||||
|
||||
newClassification = "{\"classificationId\":\"\",\"category\":\"MANUAL\",\"domain\":\"DOMAIN_A\",\"key\":\"NEW_CLASS_2\",\"name\":\"new classification\",\"type\":\"TASK\"}";
|
||||
url = new URL("http://127.0.0.1:" + port + "/v1/classifications");
|
||||
con = (HttpURLConnection) url.openConnection();
|
||||
con.setRequestMethod("POST");
|
||||
con.setRequestProperty("Authorization", "Basic dGVhbWxlYWRfMTp0ZWFtbGVhZF8x");
|
||||
con.setDoOutput(true);
|
||||
con.setRequestProperty("Content-Type", "application/json");
|
||||
out = new BufferedWriter(new OutputStreamWriter(con.getOutputStream()));
|
||||
out.write(newClassification);
|
||||
out.flush();
|
||||
out.close();
|
||||
assertEquals(201, con.getResponseCode());
|
||||
con.disconnect();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetClassificationWithSpecialCharacter() {
|
||||
RestTemplate template = getRestTemplate();
|
||||
|
|
|
@ -48,8 +48,12 @@ public class ClassificationResourceAssembler {
|
|||
BeanUtils.copyProperties(classificationResource, classification);
|
||||
|
||||
classification.setId(classificationResource.getClassificationId());
|
||||
classification.setCreated(Instant.parse(classificationResource.getCreated()));
|
||||
classification.setModified(Instant.parse(classificationResource.getModified()));
|
||||
if (classificationResource.getCreated() != null) {
|
||||
classification.setCreated(Instant.parse(classificationResource.getCreated()));
|
||||
}
|
||||
if (classificationResource.getModified() != null) {
|
||||
classification.setModified(Instant.parse(classificationResource.getModified()));
|
||||
}
|
||||
return classification;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue