diff --git a/sci-publications/src/main/java/org/scientificcms/publications/Authorship.java b/sci-publications/src/main/java/org/scientificcms/publications/Authorship.java index 8bd96c4..0e38a86 100644 --- a/sci-publications/src/main/java/org/scientificcms/publications/Authorship.java +++ b/sci-publications/src/main/java/org/scientificcms/publications/Authorship.java @@ -131,6 +131,9 @@ public class Authorship implements Serializable, Comparable { if (authorshipId != other.getAuthorshipId()) { return false; } + if (!Objects.equals(uuid, other.getUuid())) { + return false; + } if (editor != other.isEditor()) { return false; } @@ -156,8 +159,8 @@ public class Authorship implements Serializable, Comparable { return String.format("%s{ " + "authorshipId = %d, " + "uuid = %s, " - + "author = %s" - + "editor = %b," + + "author = %s " + + "editor = %b, " + "authorOrder = %d%s " + "}", super.toString(), diff --git a/sci-publications/src/main/java/org/scientificcms/publications/contenttypes/ProceedingsItem.java b/sci-publications/src/main/java/org/scientificcms/publications/contenttypes/ProceedingsItem.java index 9d887ac..32cb4f5 100644 --- a/sci-publications/src/main/java/org/scientificcms/publications/contenttypes/ProceedingsItem.java +++ b/sci-publications/src/main/java/org/scientificcms/publications/contenttypes/ProceedingsItem.java @@ -8,7 +8,6 @@ package org.scientificcms.publications.contenttypes; import com.arsdigita.cms.contenttypes.ui.ProceedingsCreateForm; import com.arsdigita.cms.contenttypes.ui.ProceedingsPropertiesStep; -import jdk.jfr.ContentType; import org.librecms.CmsConstants; import org.librecms.contenttypes.AuthoringKit; import org.librecms.contenttypes.AuthoringStep; diff --git a/sci-publications/src/test/java/org/scientificcms/publications/EqualsAndHashCodeTest.java b/sci-publications/src/test/java/org/scientificcms/publications/EqualsAndHashCodeTest.java index 8de3ade..5a3c62d 100644 --- a/sci-publications/src/test/java/org/scientificcms/publications/EqualsAndHashCodeTest.java +++ b/sci-publications/src/test/java/org/scientificcms/publications/EqualsAndHashCodeTest.java @@ -11,13 +11,12 @@ import org.junit.runners.Parameterized; import org.libreccm.tests.categories.UnitTest; import org.libreccm.testutils.EqualsVerifier; import org.librecms.assets.Organization; +import org.librecms.assets.Person; import java.util.Arrays; import java.util.Collection; import java.util.Locale; - - /** * * @author Jens Pelzetter @@ -63,6 +62,18 @@ public class EqualsAndHashCodeTest extends EqualsVerifier { volume2.getTitle().addValue(Locale.ENGLISH, "Test 2"); verifier.withPrefabValues(CollectedVolume.class, volume1, volume2); + final Person author1 = new Person(); + author1.setDisplayName("Max Mustermann"); + final Person author2 = new Person(); + author2.setDisplayName("John Doe"); + verifier.withPrefabValues(Person.class, author1, author2); + + final Publication publication1 = new Publication(); + publication1.getTitle().addValue(Locale.ENGLISH, "Alpha"); + final Publication publication2 = new Publication(); + publication2.getTitle().addValue(Locale.ENGLISH, "Bravo"); + verifier.withPrefabValues(Publication.class, publication1, publication2); + final Journal journal1 = new Journal(); journal1.setTitle("Journal 1"); journal1.setFirstYear(1980); @@ -70,28 +81,34 @@ public class EqualsAndHashCodeTest extends EqualsVerifier { journal2.setTitle("Journal 2"); journal2.setFirstYear(2004); verifier.withPrefabValues(Journal.class, journal1, journal2); - + final Publisher publisher1 = new Publisher(); publisher1.setName("publisher1"); final Publisher publisher2 = new Publisher(); publisher2.setName("publisher2"); verifier.withPrefabValues(Publisher.class, publisher1, publisher2); - + final Organization organization1 = new Organization(); organization1.setName("Orga 1"); final Organization organization2 = new Organization(); organization2.setName("Orga 2"); - verifier.withPrefabValues(Organization.class, - organization1, + verifier.withPrefabValues(Organization.class, + organization1, organization2); - + final Proceedings proceedings1 = new Proceedings(); proceedings1.getTitle().addValue(Locale.ENGLISH, "Proceedings 1"); final Proceedings proceedings2 = new Proceedings(); proceedings2.getTitle().addValue(Locale.ENGLISH, "Proceedings 2"); - verifier.withPrefabValues(Proceedings.class, - proceedings1, + verifier.withPrefabValues(Proceedings.class, + proceedings1, proceedings2); + + final Series series1 = new Series(); + series1.getTitle().addValue(Locale.ENGLISH, "Series Alpha"); + final Series series2 = new Series(); + series2.getTitle().addValue(Locale.ENGLISH, "Series Bravo"); + verifier.withPrefabValues(Series.class, series1, series2); } } diff --git a/sci-publications/src/test/java/org/scientificcms/publications/contenttypes/EqualsAndHashCodeTest.java b/sci-publications/src/test/java/org/scientificcms/publications/contenttypes/EqualsAndHashCodeTest.java index 2403c24..a6e0090 100644 --- a/sci-publications/src/test/java/org/scientificcms/publications/contenttypes/EqualsAndHashCodeTest.java +++ b/sci-publications/src/test/java/org/scientificcms/publications/contenttypes/EqualsAndHashCodeTest.java @@ -23,6 +23,7 @@ import org.librecms.lifecycle.LifecycleDefinition; import org.scientificcms.publications.CollectedVolume; import org.scientificcms.publications.Journal; import org.scientificcms.publications.Proceedings; +import org.scientificcms.publications.Publication; import org.scientificcms.publications.assets.PrefabAssetsProvider; import java.util.Arrays; @@ -58,7 +59,7 @@ public class EqualsAndHashCodeTest extends EqualsVerifier { public EqualsAndHashCodeTest(final Class clazz) { super(clazz); } - + @Override protected void addSuppressWarnings(final EqualsVerifierApi verifier) { super.addSuppressWarnings(verifier); @@ -154,8 +155,12 @@ public class EqualsAndHashCodeTest extends EqualsVerifier { lifecycle2.setDefinition(lifecycleDef2); lifecycle2.setStarted(false); verifier.withPrefabValues(Lifecycle.class, lifecycle1, lifecycle2); + + final Publication publication1 = new Publication(); + publication1.getTitle().addValue(Locale.ENGLISH, "Alpha"); + final Publication publication2 = new Publication(); + publication2.getTitle().addValue(Locale.ENGLISH, "Bravo"); + verifier.withPrefabValues(Publication.class, publication1, publication2); } - - }