From 015724891c49c2d61d778786923cd44a9ef4bbac Mon Sep 17 00:00:00 2001 From: jensp Date: Fri, 13 May 2016 09:49:27 +0000 Subject: [PATCH] CCM NG: All EqualsAndHashCode Tests now pass again git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4071 8810af33-2d31-482b-a856-94f89814c4df --- .../categorization/EqualsAndHashCodeTest.java | 49 +++----- .../configuration/EqualsAndHashCodeTest.java | 4 +- .../libreccm/core/EqualsAndHashCodeTest.java | 33 ++--- .../org/libreccm/core/ResourceEntityTest.java | 115 ++++++++++++------ .../formbuilder/EqualsAndHashCodeTest.java | 91 ++++++++++---- .../actions/EqualsAndHashCodeTest.java | 40 +++--- .../libreccm/l10n/EqualsAndHashCodeTest.java | 28 ++--- .../messaging/EqualsAndHashCodeTest.java | 24 ++-- .../notification/EqualsAndHashCodeTest.java | 27 ++-- .../portal/EqualsAndHashCodeTest.java | 29 ++--- .../runtime/EqualsAndHashCodeTest.java | 34 ++---- .../search/lucene/EqualsAndHashCodeTest.java | 24 ++-- .../libreccm/web/EqualsAndHashCodeTest.java | 98 ++++++++++++--- .../workflow/EqualsAndHashCodeTest.java | 61 ++++++++++ 14 files changed, 406 insertions(+), 251 deletions(-) diff --git a/ccm-core/src/test/java/org/libreccm/categorization/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/categorization/EqualsAndHashCodeTest.java index a7b0d467e..848ce92e7 100644 --- a/ccm-core/src/test/java/org/libreccm/categorization/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/categorization/EqualsAndHashCodeTest.java @@ -18,9 +18,6 @@ */ package org.libreccm.categorization; -import nl.jqno.equalsverifier.EqualsVerifier; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.libreccm.core.CcmObject; @@ -28,9 +25,9 @@ import org.libreccm.security.Group; import org.libreccm.security.Role; import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import org.libreccm.web.CcmApplication; -import java.net.URISyntaxException; import java.util.Arrays; import java.util.Collection; @@ -40,9 +37,7 @@ import java.util.Collection; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -54,11 +49,13 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() throws URISyntaxException { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Category category1 = new Category(); category1.setName("Category One"); @@ -80,57 +77,51 @@ public class EqualsAndHashCodeTest { final CcmObject ccmObject1 = new CcmObject(); ccmObject1.setObjectId(-100); ccmObject1.setDisplayName("Object 1"); - + final CcmObject ccmObject2 = new CcmObject(); ccmObject1.setObjectId(-200); ccmObject1.setDisplayName("Object 2"); - + final Role role1 = new Role(); role1.setName("role1"); - + final Role role2 = new Role(); role2.setName("role2"); - + final Group group1 = new Group(); group1.setName("group1"); - + final Group group2 = new Group(); group2.setName("group2"); - + final User user1 = new TestUser(); user1.setName("user1"); - + final User user2 = new TestUser(); user2.setName("user2"); - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() + verifier .withPrefabValues(Category.class, category1, category2) .withPrefabValues(Domain.class, domain1, domain2) .withPrefabValues(CcmApplication.class, application1, application2) .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) .withPrefabValues(Role.class, role1, role2) .withPrefabValues(Group.class, group1, group2) - .withPrefabValues(User.class, user1, user2) - .verify(); + .withPrefabValues(User.class, user1, user2); } - + /** - * {@link User} has a protected constructor, so have have do this to create + * {@link User} has a protected constructor, so have have do this to create * users for the test... */ private class TestUser extends User { private static final long serialVersionUID = -9052762220990453621L; - + protected TestUser() { super(); } - + } } diff --git a/ccm-core/src/test/java/org/libreccm/configuration/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/configuration/EqualsAndHashCodeTest.java index e40d6800e..00bacf2a3 100644 --- a/ccm-core/src/test/java/org/libreccm/configuration/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/configuration/EqualsAndHashCodeTest.java @@ -20,7 +20,7 @@ package org.libreccm.configuration; import java.util.Arrays; import java.util.Collection; -import org.junit.experimental.categories.Category; + import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.libreccm.tests.categories.UnitTest; @@ -31,7 +31,7 @@ import org.libreccm.testutils.EqualsVerifier; * @author Jens Pelzetter */ @RunWith(Parameterized.class) -@Category(UnitTest.class) +@org.junit.experimental.categories.Category(UnitTest.class) public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") diff --git a/ccm-core/src/test/java/org/libreccm/core/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/core/EqualsAndHashCodeTest.java index 2184d9f61..b5bb0a891 100644 --- a/ccm-core/src/test/java/org/libreccm/core/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/core/EqualsAndHashCodeTest.java @@ -25,13 +25,11 @@ import org.libreccm.tests.categories.UnitTest; import java.util.Arrays; import java.util.Collection; -import nl.jqno.equalsverifier.EqualsVerifier; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; import org.libreccm.categorization.Category; import org.libreccm.security.Group; import org.libreccm.security.Role; import org.libreccm.security.User; +import org.libreccm.testutils.EqualsVerifier; /** * @@ -39,9 +37,7 @@ import org.libreccm.security.User; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -51,11 +47,12 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { final CcmObject ccmObject1 = new CcmObject(); ccmObject1.setObjectId(-100); @@ -89,18 +86,12 @@ public class EqualsAndHashCodeTest { final Category category2 = new Category(); category2.setName("Category Two"); - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() - .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) - .withPrefabValues(Role.class, role1, role2) - .withPrefabValues(Group.class, group1, group2) - .withPrefabValues(User.class, user1, user2) - .withPrefabValues(Category.class, category1, category2) - .verify(); + verifier + .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) + .withPrefabValues(Role.class, role1, role2) + .withPrefabValues(Group.class, group1, group2) + .withPrefabValues(User.class, user1, user2) + .withPrefabValues(Category.class, category1, category2); } /** diff --git a/ccm-core/src/test/java/org/libreccm/core/ResourceEntityTest.java b/ccm-core/src/test/java/org/libreccm/core/ResourceEntityTest.java index 6f7ce06e1..cb528874a 100644 --- a/ccm-core/src/test/java/org/libreccm/core/ResourceEntityTest.java +++ b/ccm-core/src/test/java/org/libreccm/core/ResourceEntityTest.java @@ -18,65 +18,112 @@ */ package org.libreccm.core; -import nl.jqno.equalsverifier.EqualsVerifier; import nl.jqno.equalsverifier.Warning; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; -import org.junit.experimental.categories.Category; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.libreccm.categorization.Category; import org.libreccm.l10n.LocalizedString; +import org.libreccm.security.Group; +import org.libreccm.security.Role; +import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; +import java.util.Arrays; +import java.util.Collection; import java.util.Locale; - - /** * * @author Jens Pelzetter */ -@Category(UnitTest.class) -public class ResourceEntityTest { - - public ResourceEntityTest() { +@RunWith(Parameterized.class) +@org.junit.experimental.categories.Category(UnitTest.class) +public class ResourceEntityTest extends EqualsVerifier { + + @Parameterized.Parameters(name = "{0}") + public static Collection> data() { + return Arrays.asList(new Class[]{ + Resource.class + }); } - - @BeforeClass - public static void setUpClass() { + + public ResourceEntityTest(final Class entityClass) { + super(entityClass); } - - @AfterClass - public static void tearDownClass() { - } - - @Before - public void setUp() { - } - - @After - public void tearDown() { - } - - @Test - public void verifyEqualsAndHashCode() { + + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Resource resource1 = new Resource(); final LocalizedString title1 = new LocalizedString(); title1.addValue(Locale.ENGLISH, "Resource 1"); resource1.setTitle(title1); - + final Resource resource2 = new Resource(); final LocalizedString title2 = new LocalizedString(); title2.addValue(Locale.ENGLISH, "Resource 2"); resource2.setTitle(title2); - - EqualsVerifier - .forClass(Resource.class) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) + + final CcmObject ccmObject1 = new CcmObject(); + ccmObject1.setObjectId(-100); + ccmObject1.setDisplayName("Object 1"); + + final CcmObject ccmObject2 = new CcmObject(); + ccmObject1.setObjectId(-200); + ccmObject1.setDisplayName("Object 2"); + + final Role role1 = new Role(); + role1.setName("role1"); + + final Role role2 = new Role(); + role2.setName("role2"); + + final Group group1 = new Group(); + group1.setName("group1"); + + final Group group2 = new Group(); + group2.setName("group2"); + + final User user1 = new TestUser(); + user1.setName("user1"); + + final User user2 = new TestUser(); + user2.setName("user2"); + + final Category category1 = new Category(); + category1.setName("Category One"); + + final Category category2 = new Category(); + category2.setName("Category Two"); + + verifier .withPrefabValues(Resource.class, resource1, resource2) - .withRedefinedSuperclass() - .verify(); + .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) + .withPrefabValues(Role.class, role1, role2) + .withPrefabValues(Group.class, group1, group2) + .withPrefabValues(User.class, user1, user2) + .withPrefabValues(Category.class, category1, category2); } + + /** + * {@link User} has a protected constructor, so have have do this to create + * users for the test... + */ + private class TestUser extends User { + + private static final long serialVersionUID = -9052762220990453621L; + + protected TestUser() { + super(); + } + + } + } diff --git a/ccm-core/src/test/java/org/libreccm/formbuilder/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/formbuilder/EqualsAndHashCodeTest.java index 6b2fced3e..68ffe260e 100644 --- a/ccm-core/src/test/java/org/libreccm/formbuilder/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/formbuilder/EqualsAndHashCodeTest.java @@ -18,13 +18,15 @@ */ package org.libreccm.formbuilder; -import nl.jqno.equalsverifier.EqualsVerifier; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; -import org.junit.experimental.categories.Category; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; +import org.libreccm.categorization.Category; +import org.libreccm.core.CcmObject; +import org.libreccm.security.Group; +import org.libreccm.security.Role; +import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -34,10 +36,8 @@ import java.util.Collection; * @author Jens Pelzetter */ @RunWith(Parameterized.class) -@Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +@org.junit.experimental.categories.Category(UnitTest.class) +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -57,11 +57,13 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Component component1 = new Component(); component1.setAdminName("Component One"); @@ -86,17 +88,62 @@ public class EqualsAndHashCodeTest { final FormSection formSection2 = new FormSection(); formSection2.setAdminName("FormSection Two"); - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() - .withPrefabValues(Component.class, component1, component2) - .withPrefabValues(WidgetLabel.class, widgetLabel1, widgetLabel2) - .withPrefabValues(Widget.class, widget1, widget2) - .withPrefabValues(FormSection.class, formSection1, formSection2) - .verify(); + final CcmObject ccmObject1 = new CcmObject(); + ccmObject1.setObjectId(-100); + ccmObject1.setDisplayName("Object 1"); + + final CcmObject ccmObject2 = new CcmObject(); + ccmObject1.setObjectId(-200); + ccmObject1.setDisplayName("Object 2"); + + final Role role1 = new Role(); + role1.setName("role1"); + + final Role role2 = new Role(); + role2.setName("role2"); + + final Group group1 = new Group(); + group1.setName("group1"); + + final Group group2 = new Group(); + group2.setName("group2"); + + final User user1 = new TestUser(); + user1.setName("user1"); + + final User user2 = new TestUser(); + user2.setName("user2"); + + final Category category1 = new Category(); + category1.setName("Category One"); + + final Category category2 = new Category(); + category2.setName("Category Two"); + + verifier + .withPrefabValues(Component.class, component1, component2) + .withPrefabValues(WidgetLabel.class, widgetLabel1, widgetLabel2) + .withPrefabValues(Widget.class, widget1, widget2) + .withPrefabValues(FormSection.class, formSection1, formSection2) + .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) + .withPrefabValues(Role.class, role1, role2) + .withPrefabValues(Group.class, group1, group2) + .withPrefabValues(User.class, user1, user2) + .withPrefabValues(Category.class, category1, category2); + } + + /** + * {@link User} has a protected constructor, so have have do this to create + * users for the test... + */ + private class TestUser extends User { + + private static final long serialVersionUID = -9052762220990453621L; + + protected TestUser() { + super(); + } + } } diff --git a/ccm-core/src/test/java/org/libreccm/formbuilder/actions/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/formbuilder/actions/EqualsAndHashCodeTest.java index ad17c8302..e22f1c42c 100644 --- a/ccm-core/src/test/java/org/libreccm/formbuilder/actions/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/formbuilder/actions/EqualsAndHashCodeTest.java @@ -18,9 +18,6 @@ */ package org.libreccm.formbuilder.actions; -import nl.jqno.equalsverifier.EqualsVerifier; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.libreccm.formbuilder.Component; @@ -29,11 +26,13 @@ import org.libreccm.tests.categories.UnitTest; import java.util.Arrays; import java.util.Collection; + import org.libreccm.categorization.Category; import org.libreccm.core.CcmObject; import org.libreccm.security.Group; import org.libreccm.security.Role; import org.libreccm.security.User; +import org.libreccm.testutils.EqualsVerifier; /** * @@ -41,9 +40,7 @@ import org.libreccm.security.User; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -58,11 +55,13 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Component component1 = new Component(); component1.setAdminName("Component One"); @@ -107,20 +106,15 @@ public class EqualsAndHashCodeTest { final Category category2 = new Category(); category2.setName("Category Two"); - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() - .withPrefabValues(Component.class, component1, component2) - .withPrefabValues(FormSection.class, formSection1, formSection2) - .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) - .withPrefabValues(Role.class, role1, role2) - .withPrefabValues(Group.class, group1, group2) - .withPrefabValues(User.class, user1, user2) - .withPrefabValues(Category.class, category1, category2) - .verify(); + verifier + .withPrefabValues(Component.class, component1, component2) + .withPrefabValues(FormSection.class, formSection1, formSection2) + .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) + .withPrefabValues(Role.class, role1, role2) + .withPrefabValues(Group.class, group1, group2) + .withPrefabValues(User.class, user1, user2) + .withPrefabValues(Category.class, category1, category2); + } /** diff --git a/ccm-core/src/test/java/org/libreccm/l10n/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/l10n/EqualsAndHashCodeTest.java index f4aa26b69..e30438687 100644 --- a/ccm-core/src/test/java/org/libreccm/l10n/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/l10n/EqualsAndHashCodeTest.java @@ -18,8 +18,6 @@ */ package org.libreccm.l10n; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; import org.junit.experimental.categories.Category; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; @@ -36,9 +34,7 @@ import java.util.Collection; */ @RunWith(Parameterized.class) @Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -48,26 +44,20 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { final Message message1 = new Message(); message1.setSubject("Message One"); - + final Message message2 = new Message(); message2.setSubject("Message Two"); - - nl.jqno.equalsverifier.EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .withRedefinedSuperclass() - .withPrefabValues(Message.class, message1, message2) - .verify(); + + verifier + .withPrefabValues(Message.class, message1, message2); } - - } diff --git a/ccm-core/src/test/java/org/libreccm/messaging/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/messaging/EqualsAndHashCodeTest.java index 687377921..e9bdeaf26 100644 --- a/ccm-core/src/test/java/org/libreccm/messaging/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/messaging/EqualsAndHashCodeTest.java @@ -28,6 +28,7 @@ import org.libreccm.security.Group; import org.libreccm.security.Role; import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -38,9 +39,7 @@ import java.util.Collection; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -52,11 +51,13 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Message message1 = new Message(); message1.setSubject("Message One"); @@ -101,20 +102,15 @@ public class EqualsAndHashCodeTest { final Category category2 = new Category(); category2.setName("Category Two"); - nl.jqno.equalsverifier.EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() + verifier .withPrefabValues(Message.class, message1, message2) .withPrefabValues(Group.class, group1, group2) .withPrefabValues(MessageThread.class, thread1, thread2) .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) .withPrefabValues(User.class, user1, user2) .withPrefabValues(Role.class, role1, role2) - .withPrefabValues(Category.class, category1, category2) - .verify(); + .withPrefabValues(Category.class, category1, category2); + } /** diff --git a/ccm-core/src/test/java/org/libreccm/notification/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/notification/EqualsAndHashCodeTest.java index aa9df9dcf..5741e6f90 100644 --- a/ccm-core/src/test/java/org/libreccm/notification/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/notification/EqualsAndHashCodeTest.java @@ -18,9 +18,6 @@ */ package org.libreccm.notification; -import nl.jqno.equalsverifier.EqualsVerifier; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.libreccm.categorization.Category; @@ -30,6 +27,7 @@ import org.libreccm.security.Party; import org.libreccm.security.Role; import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -40,9 +38,7 @@ import java.util.Collection; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -54,11 +50,13 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Message message1 = new Message(); message1.setSubject("Message One"); @@ -103,20 +101,15 @@ public class EqualsAndHashCodeTest { final Category category2 = new Category(); category2.setName("Category Two"); - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() + verifier .withPrefabValues(Message.class, message1, message2) .withPrefabValues(Role.class, role1, role2) .withPrefabValues(Digest.class, digest1, digest2) .withPrefabValues(Party.class, party1, party2) .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) .withPrefabValues(User.class, user1, user2) - .withPrefabValues(Category.class, category1, category2) - .verify(); + .withPrefabValues(Category.class, category1, category2); + } /** diff --git a/ccm-core/src/test/java/org/libreccm/portal/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/portal/EqualsAndHashCodeTest.java index 677f34ab2..d98bea47e 100644 --- a/ccm-core/src/test/java/org/libreccm/portal/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/portal/EqualsAndHashCodeTest.java @@ -18,7 +18,6 @@ */ package org.libreccm.portal; -import nl.jqno.equalsverifier.EqualsVerifier; import nl.jqno.equalsverifier.Warning; import org.junit.Test; import org.junit.runner.RunWith; @@ -29,6 +28,7 @@ import org.libreccm.core.Resource; import org.libreccm.security.Role; import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -39,9 +39,7 @@ import java.util.Collection; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -51,12 +49,14 @@ public class EqualsAndHashCodeTest { }); } - public EqualsAndHashCodeTest(final Class entityTest) { - this.entityClass = entityTest; + public EqualsAndHashCodeTest(final Class entityClass) { + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Portal portal1 = new Portal(); portal1.setDisplayName("Portal One"); @@ -94,20 +94,15 @@ public class EqualsAndHashCodeTest { final Category category2 = new Category(); category2.setName("Category Two"); - - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() + + verifier .withPrefabValues(Portal.class, portal1, portal2) .withPrefabValues(Resource.class, resource1, resource2) .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) .withPrefabValues(Role.class, role1, role2) .withPrefabValues(User.class, user1, user2) - .withPrefabValues(Category.class, category1, category2) - .verify(); + .withPrefabValues(Category.class, category1, category2); + } /** diff --git a/ccm-core/src/test/java/org/libreccm/runtime/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/runtime/EqualsAndHashCodeTest.java index 4008f27a9..8c0ba2e75 100644 --- a/ccm-core/src/test/java/org/libreccm/runtime/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/runtime/EqualsAndHashCodeTest.java @@ -18,13 +18,10 @@ */ package org.libreccm.runtime; -import nl.jqno.equalsverifier.EqualsVerifier; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; -import org.junit.experimental.categories.Category; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -34,10 +31,8 @@ import java.util.Collection; * @author Jens Pelzetter */ @RunWith(Parameterized.class) -@Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +@org.junit.experimental.categories.Category(UnitTest.class) +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -47,25 +42,22 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + final Initalizer initalizer1 = new Initalizer(); initalizer1.setClassName("org.example.foo.Initalizer"); - + final Initalizer initalizer2 = new Initalizer(); initalizer2.setClassName("org.example.bar.Initalizer"); - - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) - .withRedefinedSuperclass() - .withPrefabValues(Initalizer.class, initalizer1, initalizer2) - .verify(); + + verifier + .withPrefabValues(Initalizer.class, initalizer1, initalizer2); + } } diff --git a/ccm-core/src/test/java/org/libreccm/search/lucene/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/search/lucene/EqualsAndHashCodeTest.java index 67edc8b4d..3f30831aa 100644 --- a/ccm-core/src/test/java/org/libreccm/search/lucene/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/search/lucene/EqualsAndHashCodeTest.java @@ -18,13 +18,12 @@ */ package org.libreccm.search.lucene; -import nl.jqno.equalsverifier.Warning; -import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.libreccm.security.Group; import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -35,9 +34,7 @@ import java.util.Collection; */ @RunWith(Parameterized.class) @org.junit.experimental.categories.Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -48,11 +45,12 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { final Document document1 = new Document(); document1.setTitle("document1"); @@ -71,15 +69,11 @@ public class EqualsAndHashCodeTest { final User user2 = new TestUser(); user2.setName("user2"); - nl.jqno.equalsverifier.EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .suppress(Warning.ALL_FIELDS_SHOULD_BE_USED) + verifier .withPrefabValues(Group.class, group1, group2) .withPrefabValues(Document.class, document1, document2) - .withPrefabValues(User.class, user1, user2) - .verify(); + .withPrefabValues(User.class, user1, user2); + } /** diff --git a/ccm-core/src/test/java/org/libreccm/web/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/web/EqualsAndHashCodeTest.java index e1156f232..8ba190668 100644 --- a/ccm-core/src/test/java/org/libreccm/web/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/web/EqualsAndHashCodeTest.java @@ -18,14 +18,19 @@ */ package org.libreccm.web; -import nl.jqno.equalsverifier.EqualsVerifier; import nl.jqno.equalsverifier.Warning; import org.junit.Test; -import org.junit.experimental.categories.Category; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; +import org.libreccm.categorization.Category; +import org.libreccm.categorization.Domain; +import org.libreccm.core.CcmObject; import org.libreccm.core.Resource; +import org.libreccm.security.Group; +import org.libreccm.security.Role; +import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; +import org.libreccm.testutils.EqualsVerifier; import java.util.Arrays; import java.util.Collection; @@ -35,10 +40,8 @@ import java.util.Collection; * @author Jens Pelzetter */ @RunWith(Parameterized.class) -@Category(UnitTest.class) -public class EqualsAndHashCodeTest { - - private final Class entityClass; +@org.junit.experimental.categories.Category(UnitTest.class) +public class EqualsAndHashCodeTest extends EqualsVerifier { @Parameterized.Parameters(name = "{0}") public static Collection> data() { @@ -49,24 +52,85 @@ public class EqualsAndHashCodeTest { } public EqualsAndHashCodeTest(final Class entityClass) { - this.entityClass = entityClass; + super(entityClass); } - @Test - public void verifyEqualsAndHashCode() { + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { final Resource resource1 = new Resource(); resource1.setDisplayName("Resource One"); - + final Resource resource2 = new Resource(); resource2.setDisplayName("Resource Two"); - - EqualsVerifier - .forClass(entityClass) - .suppress(Warning.STRICT_INHERITANCE) - .suppress(Warning.NONFINAL_FIELDS) - .withRedefinedSuperclass() + + final CcmApplication application1 = new CcmApplication(); + application1.setDisplayName("application1"); + + final CcmApplication application2 = new CcmApplication(); + application2.setDisplayName("application2"); + + final Category category1 = new Category(); + category1.setName("category1"); + + final Category category2 = new Category(); + category2.setName("category2"); + + final Domain domain1 = new Domain(); + domain1.setDomainKey("domain1"); + + final Domain domain2 = new Domain(); + domain2.setDomainKey("domain2"); + + final CcmObject ccmObject1 = new CcmObject(); + ccmObject1.setObjectId(-100); + ccmObject1.setDisplayName("Object 1"); + + final CcmObject ccmObject2 = new CcmObject(); + ccmObject1.setObjectId(-200); + ccmObject1.setDisplayName("Object 2"); + + final Role role1 = new Role(); + role1.setName("role1"); + + final Role role2 = new Role(); + role2.setName("role2"); + + final Group group1 = new Group(); + group1.setName("group1"); + + final Group group2 = new Group(); + group2.setName("group2"); + + final User user1 = new TestUser(); + user1.setName("user1"); + + final User user2 = new TestUser(); + user2.setName("user2"); + + verifier .withPrefabValues(Resource.class, resource1, resource2) - .verify(); + .withPrefabValues(CcmApplication.class, application1, application2) + .withPrefabValues(Category.class, category1, category2) + .withPrefabValues(Domain.class, domain1, domain2) + .withPrefabValues(CcmObject.class, ccmObject1, ccmObject2) + .withPrefabValues(Role.class, role1, role2) + .withPrefabValues(Group.class, group1, group2) + .withPrefabValues(User.class, user1, user2); + } + + /** + * {@link User} has a protected constructor, so have have do this to create + * users for the test... + */ + private class TestUser extends User { + + private static final long serialVersionUID = -9052762220990453621L; + + protected TestUser() { + super(); + } + } } diff --git a/ccm-core/src/test/java/org/libreccm/workflow/EqualsAndHashCodeTest.java b/ccm-core/src/test/java/org/libreccm/workflow/EqualsAndHashCodeTest.java index 7a65636e0..4fcc0d13f 100644 --- a/ccm-core/src/test/java/org/libreccm/workflow/EqualsAndHashCodeTest.java +++ b/ccm-core/src/test/java/org/libreccm/workflow/EqualsAndHashCodeTest.java @@ -21,6 +21,9 @@ package org.libreccm.workflow; import org.junit.experimental.categories.Category; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; +import org.libreccm.security.Group; +import org.libreccm.security.Role; +import org.libreccm.security.User; import org.libreccm.tests.categories.UnitTest; import org.libreccm.testutils.EqualsVerifier; @@ -48,5 +51,63 @@ public class EqualsAndHashCodeTest extends EqualsVerifier { public EqualsAndHashCodeTest(final Class entityClass) { super(entityClass); } + + @Override + protected void addPrefabValues( + final nl.jqno.equalsverifier.EqualsVerifier verifier) { + + super.addPrefabValues(verifier); + + final UserTask userTask1 = new UserTask(); + userTask1.setTaskId(-10); + + final UserTask userTask2 = new UserTask(); + userTask2.setTaskId(-20); + + final Role role1 = new Role(); + role1.setName("role1"); + + final Role role2 = new Role(); + role2.setName("role2"); + + final Task task1 = new Task(); + task1.setTaskId(-10); + + final Task task2 = new Task(); + task2.setTaskId(-20); + + final Group group1 = new Group(); + group1.setName("group1"); + + final Group group2 = new Group(); + group2.setName("group2"); + + final User user1 = new TestUser(); + user1.setName("user1"); + + final User user2 = new TestUser(); + user2.setName("user2"); + + verifier + .withPrefabValues(UserTask.class, userTask1, userTask2) + .withPrefabValues(Role.class, role1, role2) + .withPrefabValues(Task.class, task1, task2) + .withPrefabValues(Group.class, group1, group2) + .withPrefabValues(User.class, user1, user2); + } + + /** + * {@link User} has a protected constructor, so have have do this to create + * users for the test... + */ + private class TestUser extends User { + + private static final long serialVersionUID = -9052762220990453621L; + + protected TestUser() { + super(); + } + + } }