1 package de.dlr.shepard.context.references.timeseriesreference;
2
3 import static org.junit.jupiter.api.Assertions.assertEquals;
4
5 import de.dlr.shepard.auth.users.entities.User;
6 import de.dlr.shepard.context.collection.entities.DataObject;
7 import de.dlr.shepard.context.references.timeseriesreference.io.TimeseriesReferenceIO;
8 import de.dlr.shepard.context.references.timeseriesreference.model.TimeseriesReference;
9 import de.dlr.shepard.data.timeseries.model.TimeseriesContainer;
10 import de.dlr.shepard.data.timeseries.model.TimeseriesTuple;
11 import java.util.Date;
12 import java.util.List;
13 import nl.jqno.equalsverifier.EqualsVerifier;
14 import org.junit.jupiter.api.Test;
15
16 public class TimeseriesReferenceIOTest {
17
18 @Test
19 public void equalsContract() {
20 EqualsVerifier.simple().forClass(TimeseriesReferenceIO.class).verify();
21 }
22
23 @Test
24 public void testConversion() {
25 var date = new Date();
26 var user = new User("bob");
27 var update = new Date();
28 var updateUser = new User("claus");
29 var dataObject = new DataObject(2L);
30 dataObject.setShepardId(500L);
31 var container = new TimeseriesContainer(3L);
32 var ts = new TimeseriesTuple("meas", "dev", "loc", "name", "field");
33
34 var timeseriesReference = new TimeseriesReference(1L);
35 timeseriesReference.setShepardId(341L);
36 timeseriesReference.setCreatedAt(date);
37 timeseriesReference.setCreatedBy(user);
38 timeseriesReference.setName("MyName");
39 timeseriesReference.setUpdatedAt(update);
40 timeseriesReference.setUpdatedBy(updateUser);
41 timeseriesReference.setDataObject(dataObject);
42 timeseriesReference.setEnd(213);
43 timeseriesReference.setStart(123);
44 timeseriesReference.setReferencedTimeseriesList(List.of(ts));
45 timeseriesReference.setTimeseriesContainer(container);
46
47 var converted = new TimeseriesReferenceIO(timeseriesReference);
48 assertEquals(timeseriesReference.getShepardId(), converted.getId());
49 assertEquals(timeseriesReference.getCreatedAt(), converted.getCreatedAt());
50 assertEquals("bob", converted.getCreatedBy());
51 assertEquals(timeseriesReference.getName(), converted.getName());
52 assertEquals(timeseriesReference.getUpdatedAt(), converted.getUpdatedAt());
53 assertEquals("claus", converted.getUpdatedBy());
54 assertEquals(dataObject.getShepardId(), converted.getDataObjectId());
55 assertEquals(timeseriesReference.getEnd(), converted.getEnd());
56 assertEquals(timeseriesReference.getStart(), converted.getStart());
57 assertEquals(List.of(ts), converted.getTimeseries());
58 assertEquals(3L, converted.getTimeseriesContainerId());
59 }
60
61 @Test
62 public void testConversion_ContainerNull() {
63 var date = new Date();
64 var user = new User("bob");
65 var dataObject = new DataObject(2L);
66 dataObject.setShepardId(3485L);
67 var ts = new TimeseriesTuple("meas", "dev", "loc", "name", "field");
68
69 var timeseriesReference = new TimeseriesReference(1L);
70 timeseriesReference.setShepardId(234L);
71 timeseriesReference.setCreatedAt(date);
72 timeseriesReference.setCreatedBy(user);
73 timeseriesReference.setName("MyName");
74 timeseriesReference.setDataObject(dataObject);
75 timeseriesReference.setEnd(213);
76 timeseriesReference.setStart(123);
77 timeseriesReference.setReferencedTimeseriesList(List.of(ts));
78
79 var converted = new TimeseriesReferenceIO(timeseriesReference);
80 assertEquals(timeseriesReference.getShepardId(), converted.getId());
81 assertEquals(timeseriesReference.getCreatedAt(), converted.getCreatedAt());
82 assertEquals("bob", converted.getCreatedBy());
83 assertEquals(timeseriesReference.getName(), converted.getName());
84 assertEquals(dataObject.getShepardId(), converted.getDataObjectId());
85 assertEquals(timeseriesReference.getEnd(), converted.getEnd());
86 assertEquals(timeseriesReference.getStart(), converted.getStart());
87 assertEquals(List.of(ts), converted.getTimeseries());
88 assertEquals(-1, converted.getTimeseriesContainerId());
89 }
90 }