View Javadoc
1   package de.dlr.shepard.context.collection.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.references.dataobject.entities.CollectionReference;
10  import de.dlr.shepard.context.semantic.entities.SemanticAnnotation;
11  import de.dlr.shepard.context.version.entities.Version;
12  import de.dlr.shepard.data.file.entities.FileContainer;
13  import java.util.List;
14  import java.util.UUID;
15  import nl.jqno.equalsverifier.EqualsVerifier;
16  import org.junit.jupiter.api.Test;
17  
18  public class CollectionTest extends BaseTestCase {
19  
20    @Test
21    public void equalsContract() {
22      EqualsVerifier.simple()
23        .forClass(Collection.class)
24        .withPrefabValues(DataObject.class, new DataObject(1L), new DataObject(2L))
25        .withPrefabValues(User.class, new User("bob"), new User("claus"))
26        .withPrefabValues(UserGroup.class, new UserGroup(1L), new UserGroup(2L))
27        .withPrefabValues(CollectionReference.class, new CollectionReference(1L), new CollectionReference(2L))
28        .withPrefabValues(SemanticAnnotation.class, new SemanticAnnotation(1L), new SemanticAnnotation(2L))
29        .withPrefabValues(Version.class, new Version(new UUID(1L, 2L)), new Version(new UUID(3L, 4L)))
30        .withPrefabValues(FileContainer.class, new FileContainer(1L), new FileContainer(2L))
31        .withPrefabValues(Permissions.class, new Permissions(1L), new Permissions(2L))
32        .verify();
33    }
34  
35    @Test
36    public void addDataObjectTest() {
37      var col = new Collection(1L);
38      var dataObject = new DataObject(2L);
39      col.addDataObject(dataObject);
40  
41      assertEquals(col.getDataObjects(), List.of(dataObject));
42    }
43  }