1 package de.dlr.shepard.context.semantic.io;
2
3 import static org.junit.jupiter.api.Assertions.assertEquals;
4
5 import de.dlr.shepard.context.semantic.entities.SemanticAnnotation;
6 import de.dlr.shepard.context.semantic.entities.SemanticRepository;
7 import nl.jqno.equalsverifier.EqualsVerifier;
8 import org.junit.jupiter.api.Test;
9
10 public class SemanticAnnotationIOTest {
11
12 @Test
13 public void equalsContract() {
14 EqualsVerifier.simple().forClass(SemanticAnnotationIO.class).verify();
15 }
16
17 @Test
18 public void testConversion() {
19 var propertyRepository = new SemanticRepository(3L);
20 var valueRepository = new SemanticRepository(4L);
21
22 var obj = new SemanticAnnotation(1L);
23 obj.setPropertyName("MyName");
24 obj.setPropertyRepository(propertyRepository);
25 obj.setValueRepository(valueRepository);
26 obj.setPropertyIRI("prop");
27 obj.setValueIRI("val");
28
29 var converted = new SemanticAnnotationIO(obj);
30 assertEquals(obj.getId(), converted.getId());
31 assertEquals(obj.getName(), converted.getName());
32 assertEquals(3L, converted.getPropertyRepositoryId());
33 assertEquals(4L, converted.getValueRepositoryId());
34 assertEquals("prop", converted.getPropertyIRI());
35 assertEquals("val", converted.getValueIRI());
36 }
37
38 @Test
39 public void testConversion_RepositoryNull() {
40 var obj = new SemanticAnnotation(1L);
41 obj.setPropertyName("MyName");
42 obj.setPropertyIRI("prop");
43 obj.setValueIRI("val");
44
45 var converted = new SemanticAnnotationIO(obj);
46 assertEquals(obj.getId(), converted.getId());
47 assertEquals(obj.getName(), converted.getName());
48 assertEquals(-1, converted.getPropertyRepositoryId());
49 assertEquals(-1, converted.getValueRepositoryId());
50 assertEquals("prop", converted.getPropertyIRI());
51 assertEquals("val", converted.getValueIRI());
52 }
53
54 @Test
55 public void testUniqueId() {
56 var obj = new SemanticAnnotationIO();
57 obj.setId(123L);
58
59 var actual = obj.getUniqueId();
60
61 assertEquals("123", actual);
62 }
63 }