1 package de.dlr.shepard.context.references.structureddata.entities;
2
3 import static org.junit.jupiter.api.Assertions.assertEquals;
4
5 import de.dlr.shepard.BaseTestCase;
6 import de.dlr.shepard.auth.permission.model.Permissions;
7 import de.dlr.shepard.auth.users.entities.User;
8 import de.dlr.shepard.auth.users.entities.UserGroup;
9 import de.dlr.shepard.context.collection.entities.DataObject;
10 import de.dlr.shepard.context.semantic.entities.SemanticAnnotation;
11 import de.dlr.shepard.context.version.entities.Version;
12 import de.dlr.shepard.data.structureddata.entities.StructuredData;
13 import java.util.Date;
14 import java.util.List;
15 import nl.jqno.equalsverifier.EqualsVerifier;
16 import nl.jqno.equalsverifier.Mode;
17 import org.junit.jupiter.api.Test;
18
19 public class StructuredDataReferenceTest extends BaseTestCase {
20
21 @Test
22 public void equalsContract() {
23 EqualsVerifier.simple()
24 .set(Mode.skipMockito())
25 .forClass(StructuredDataReference.class)
26 .withPrefabValues(DataObject.class, new DataObject(1L), new DataObject(2L))
27 .withPrefabValues(Version.class, new Version("Version1"), new Version("Version2"))
28 .withPrefabValues(User.class, new User("bob"), new User("claus"))
29 .withPrefabValues(UserGroup.class, new UserGroup(1L), new UserGroup(2L))
30 .withPrefabValues(SemanticAnnotation.class, new SemanticAnnotation(1L), new SemanticAnnotation(2L))
31 .withPrefabValues(Permissions.class, new Permissions(1L), new Permissions(2L))
32 .verify();
33 }
34
35 @Test
36 public void addStructuredDataTest() {
37 var ref = new StructuredDataReference(1L);
38 var sd = new StructuredData("newOid", new Date(), "name");
39 ref.addStructuredData(sd);
40
41 assertEquals(List.of(sd), ref.getStructuredDatas());
42 }
43 }