Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,10 @@

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNotSame;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;

import java.lang.reflect.Method;
Expand Down Expand Up @@ -50,21 +52,21 @@ public void testClone() throws Exception {
SampleSaveConfiguration cloneA = (SampleSaveConfiguration) a.clone();
assertNotSame(a, cloneA);
assertEquals(a, cloneA);
assertTrue(a.equals(cloneA));
assertTrue(cloneA.equals(a));
assertEquals(a, cloneA);
assertEquals(cloneA, a);
assertEquals(a.hashCode(), cloneA.hashCode());

// Change the original
a.setUrl(true);
assertFalse(a.equals(cloneA));
assertFalse(cloneA.equals(a));
assertFalse(a.hashCode() == cloneA.hashCode());
assertNotEquals(a, cloneA);
assertNotEquals(cloneA, a);
assertNotEquals(a.hashCode(), cloneA.hashCode());

// Change the original back again
a.setUrl(false);
assertEquals(a, cloneA);
assertTrue(a.equals(cloneA));
assertTrue(cloneA.equals(a));
assertEquals(a, cloneA);
assertEquals(cloneA, a);
assertEquals(a.hashCode(), cloneA.hashCode());
}

Expand All @@ -85,8 +87,8 @@ public void testEqualsAndHashCode() throws Exception {

// a and b should be equal
assertEquals(a, b);
assertTrue(a.equals(b));
assertTrue(b.equals(a));
assertEquals(a, b);
assertEquals(b, a);
assertEquals(a.hashCode(), b.hashCode());
assertPrimitiveEquals(a.saveUrl(), b.saveUrl());
assertPrimitiveEquals(a.saveAssertions(), b.saveAssertions());
Expand All @@ -95,64 +97,64 @@ public void testEqualsAndHashCode() throws Exception {

a.setAssertions(false);
// a and b should not be equal
assertFalse(a.equals(b));
assertFalse(b.equals(a));
assertFalse(a.hashCode() == b.hashCode());
assertFalse(a.saveAssertions() == b.saveAssertions());
assertNotEquals(a, b);
assertNotEquals(b, a);
assertNotEquals(a.hashCode(), b.hashCode());
assertNotEquals(a.saveAssertions(), b.saveAssertions());
}

@Test
public void testFalse() throws Exception {
SampleSaveConfiguration a = new SampleSaveConfiguration(false);
SampleSaveConfiguration b = new SampleSaveConfiguration(false);
assertEquals(a.hashCode(), b.hashCode(), "Hash codes should be equal");
assertTrue(a.equals(b), "Objects should be equal");
assertTrue(b.equals(a), "Objects should be equal");
assertEquals(a, b, "Objects should be equal");
assertEquals(b, a, "Objects should be equal");
}

@Test
public void testTrue() throws Exception {
SampleSaveConfiguration a = new SampleSaveConfiguration(true);
SampleSaveConfiguration b = new SampleSaveConfiguration(true);
assertEquals(a.hashCode(), b.hashCode(), "Hash codes should be equal");
assertTrue(a.equals(b), "Objects should be equal");
assertTrue(b.equals(a), "Objects should be equal");
assertEquals(a, b, "Objects should be equal");
assertEquals(b, a, "Objects should be equal");
}
@Test
public void testFalseTrue() throws Exception {
SampleSaveConfiguration a = new SampleSaveConfiguration(false);
SampleSaveConfiguration b = new SampleSaveConfiguration(true);
assertFalse(a.hashCode() == b.hashCode(), "Hash codes should not be equal");
assertFalse(a.equals(b), "Objects should not be equal");
assertFalse(b.equals(a), "Objects should not be equal");
assertNotEquals(a.hashCode(), b.hashCode(), "Hash codes should not be equal");
assertNotEquals(a, b, "Objects should not be equal");
assertNotEquals(b, a, "Objects should not be equal");
}

@Test
public void testFormatter() throws Exception {
SampleSaveConfiguration a = new SampleSaveConfiguration(false);
SampleSaveConfiguration b = new SampleSaveConfiguration(false);
assertEquals(a.hashCode(), b.hashCode(), "Hash codes should be equal");
assertTrue(a.equals(b), "Objects should be equal");
assertTrue(b.equals(a), "Objects should be equal");
assertTrue(a.strictDateFormatter() == null);
assertTrue(b.strictDateFormatter() == null);
assertTrue(a.threadSafeLenientFormatter() == null);
assertTrue(b.threadSafeLenientFormatter() == null);
assertEquals(a, b, "Objects should be equal");
assertEquals(b, a, "Objects should be equal");
assertNull(a.strictDateFormatter());
assertNull(b.strictDateFormatter());
assertNull(a.threadSafeLenientFormatter());
assertNull(b.threadSafeLenientFormatter());
a.setDateFormat(null);
b.setDateFormat(null);
assertEquals(a.hashCode(), b.hashCode(), "Hash codes should be equal");
assertTrue(a.equals(b), "Objects should be equal");
assertTrue(b.equals(a), "Objects should be equal");
assertTrue(a.strictDateFormatter() == null);
assertTrue(b.strictDateFormatter() == null);
assertTrue(a.threadSafeLenientFormatter() == null);
assertTrue(b.threadSafeLenientFormatter() == null);
assertEquals(a, b, "Objects should be equal");
assertEquals(b, a, "Objects should be equal");
assertNull(a.strictDateFormatter());
assertNull(b.strictDateFormatter());
assertNull(a.threadSafeLenientFormatter());
assertNull(b.threadSafeLenientFormatter());
a.setDateFormat("dd/MM/yyyy");
b.setDateFormat("dd/MM/yyyy");
assertEquals(a.hashCode(), b.hashCode(), "Hash codes should be equal");
assertTrue(a.equals(b), "Objects should be equal");
assertTrue(b.equals(a), "Objects should be equal");
assertTrue(a.strictDateFormatter().equals(b.strictDateFormatter()), "Objects should be equal");
assertEquals(a, b, "Objects should be equal");
assertEquals(b, a, "Objects should be equal");
assertEquals(a.strictDateFormatter(), b.strictDateFormatter(), "Objects should be equal");
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,9 @@
package org.apache.jorphan.collections;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNotSame;
import static org.junit.jupiter.api.Assertions.assertTrue;

import java.util.Arrays;
import java.util.Collection;
Expand Down Expand Up @@ -52,16 +51,12 @@ public void testEqualsAndHashCode1() throws Exception {
HashTree tree3 = new HashTree("abcde");
HashTree tree4 = new HashTree("abcde");

assertTrue(tree1.equals(tree1));
assertTrue(tree1.equals(tree2));
assertTrue(tree2.equals(tree1));
assertTrue(tree2.equals(tree2));
assertEquals(tree1, tree2);
assertEquals(tree2, tree1);
assertEquals(tree1.hashCode(), tree2.hashCode());

assertTrue(tree3.equals(tree3));
assertTrue(tree3.equals(tree4));
assertTrue(tree4.equals(tree3));
assertTrue(tree4.equals(tree4));
assertEquals(tree3, tree4);
assertEquals(tree4, tree3);
assertEquals(tree3.hashCode(), tree4.hashCode());

assertNotSame(tree1, tree2);
Expand All @@ -70,24 +65,24 @@ public void testEqualsAndHashCode1() throws Exception {
assertNotSame(tree2, tree3);
assertNotSame(tree2, tree4);

assertFalse(tree1.equals(tree3));
assertFalse(tree1.equals(tree4));
assertFalse(tree2.equals(tree3));
assertFalse(tree2.equals(tree4));
assertNotEquals(tree1, tree3);
assertNotEquals(tree1, tree4);
assertNotEquals(tree2, tree3);
assertNotEquals(tree2, tree4);

assertNotNull(tree1);
assertNotNull(tree2);

tree1.add("abcd", tree3);
assertFalse(tree1.equals(tree2));
assertFalse(tree2.equals(tree1));// Check reflexive
assertNotEquals(tree1, tree2);
assertNotEquals(tree2, tree1);// Check reflexive
if (tree1.hashCode() == tree2.hashCode()) {
// This is not a requirement
System.out.println("WARN: unequal HashTrees should not have equal hashCodes");
}
tree2.add("abcd", tree4);
assertTrue(tree1.equals(tree2));
assertTrue(tree2.equals(tree1));
assertEquals(tree1, tree2);
assertEquals(tree2, tree1);
assertEquals(tree1.hashCode(), tree2.hashCode());
}

Expand All @@ -112,54 +107,50 @@ public void testEqualsAndHashCode2() throws Exception {
ListedHashTree tree3 = new ListedHashTree("abcde");
ListedHashTree tree4 = new ListedHashTree("abcde");

assertTrue(tree1.equals(tree1));
assertTrue(tree1.equals(tree2));
assertTrue(tree2.equals(tree1));
assertTrue(tree2.equals(tree2));
assertEquals(tree1, tree2);
assertEquals(tree2, tree1);
assertEquals(tree1.hashCode(), tree2.hashCode());

assertTrue(tree3.equals(tree3));
assertTrue(tree3.equals(tree4));
assertTrue(tree4.equals(tree3));
assertTrue(tree4.equals(tree4));
assertEquals(tree3, tree4);
assertEquals(tree4, tree3);
assertEquals(tree3.hashCode(), tree4.hashCode());

assertNotSame(tree1, tree2);
assertNotSame(tree1, tree3);
assertFalse(tree1.equals(tree3));
assertFalse(tree3.equals(tree1));
assertFalse(tree1.equals(tree4));
assertFalse(tree4.equals(tree1));
assertNotEquals(tree1, tree3);
assertNotEquals(tree3, tree1);
assertNotEquals(tree1, tree4);
assertNotEquals(tree4, tree1);

assertFalse(tree2.equals(tree3));
assertFalse(tree3.equals(tree2));
assertFalse(tree2.equals(tree4));
assertFalse(tree4.equals(tree2));
assertNotEquals(tree2, tree3);
assertNotEquals(tree3, tree2);
assertNotEquals(tree2, tree4);
assertNotEquals(tree4, tree2);

tree1.add("abcd", tree3);
assertFalse(tree1.equals(tree2));
assertFalse(tree2.equals(tree1));
assertNotEquals(tree1, tree2);
assertNotEquals(tree2, tree1);

tree2.add("abcd", tree4);
assertTrue(tree1.equals(tree2));
assertTrue(tree2.equals(tree1));
assertEquals(tree1, tree2);
assertEquals(tree2, tree1);
assertEquals(tree1.hashCode(), tree2.hashCode());

tree1.add("a1");
tree1.add("a2");
tree2.add("a2");
tree2.add("a1");

assertFalse(tree1.equals(tree2));
assertFalse(tree2.equals(tree1));
assertNotEquals(tree1, tree2);
assertNotEquals(tree2, tree1);
if (tree1.hashCode() == tree2.hashCode()) {
// This is not a requirement
System.out.println("WARN: unequal ListedHashTrees should not have equal hashcodes");
}

tree4.add("abcdef");
assertFalse(tree3.equals(tree4));
assertFalse(tree4.equals(tree3));
assertNotEquals(tree3, tree4);
assertNotEquals(tree4, tree3);
}

@Test
Expand Down
Loading