/*
 * Copyright 2015-2018 the original author or authors.
 *
 * All rights reserved. This program and the accompanying materials are
 * made available under the terms of the Eclipse Public License v2.0 which
 * accompanies this distribution and is available at
 *
 * http://www.eclipse.org/legal/epl-v20.html
 */

package org.junit.platform;

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;

/**
 * Abstract base class for unit tests that wish to test
 * {@link Object#equals(Object)} and {@link Object#hashCode()}.
 *
 * @since 1.3
 */
public abstract class AbstractEqualsAndHashCodeTests {

	protected final <T> void assertEqualsAndHashCode(T equal1, T equal2, T different) {
		assertNotNull(equal1);
		assertNotNull(equal2);
		assertNotNull(different);

		assertNotSame(equal1, equal2);
		assertFalse(equal1.equals(null));
		assertFalse(equal1.equals(new Object()));
		assertFalse(equal1.equals(different));
		assertFalse(different.equals(equal1));
		assertNotEquals(equal1.hashCode(), different.hashCode());

		assertTrue(equal1.equals(equal1));
		assertTrue(equal1.equals(equal2));
		assertTrue(equal2.equals(equal1));
		assertEquals(equal1.hashCode(), equal2.hashCode());
	}

}

@@ -358,356 +358,46 @@
 org.
-junit.jupiter.api.Assertions.assertEquals;%0Aimport static org.junit.jupiter.api.Assertions.assertFalse;%0Aimport static org.junit.jupiter.api.Assertions.assertNotEquals;%0Aimport static org.junit.jupiter.api.Assertions.assertNotNull;%0Aimport static org.junit.jupiter.api.Assertions.assertNotSame;%0Aimport static org.junit.jupiter.api.Assertions.assertTrue
+assertj.core.api.Assertions.assertThat
 ;%0A%0A/
@@ -685,32 +685,47 @@
 ) %7B%0A%09%09assert
+That(equal1).is
 NotNull(
 equal1);%0A%09%09a
@@ -712,22 +712,16 @@
 NotNull(
-equal1
 );%0A%09%09ass
@@ -727,23 +727,20 @@
 sert
-NotNull
+That
 (equal2)
 ;%0A%09%09
@@ -731,24 +731,36 @@
 That(equal2)
+.isNotNull()
 ;%0A%09%09assertNo
@@ -757,23 +757,20 @@
 %09%09assert
-NotNull
+That
 (differe
@@ -776,35 +776,56 @@
 ent)
-;%0A%0A%09%09assertNotSame(equal1, 
+.isNotNull();%0A%0A%09%09assertThat(equal1).isNotSameAs(
 equa
@@ -841,34 +841,39 @@
 sert
-False
+That
 (equal1
-.e
+).isNotE
 qual
-s
+To
 (null)
-)
 ;%0A%09%09
@@ -878,35 +878,41 @@
 %09%09assert
-False
+That
 (equal1
-.e
+).isNotE
 qual
-s
+To
 (new Obj
@@ -917,17 +917,16 @@
 bject())
-)
 ;%0A%09%09asse
@@ -931,27 +931,33 @@
 sert
-False
+That
 (equal1
-.e
+).isNotE
 qual
-s
+To
 (dif
@@ -963,17 +963,16 @@
 fferent)
-)
 ;%0A%09%09asse
@@ -977,13 +977,12 @@
 sert
-False
+That
 (dif
@@ -987,31 +987,38 @@
 ifferent
-.e
+).isNotE
 qual
-s
+To
 (equal1)
 );%0A%09%09ass
@@ -1001,33 +1001,32 @@
 tEqualTo(equal1)
-)
 ;%0A%09%09assertNotEqu
@@ -1023,17 +1023,58 @@
 sert
-NotEquals
+That(different).isNotEqualTo(equal2);%0A%09%09assertThat
 (equ
@@ -1087,18 +1087,31 @@
 shCode()
-, 
+).isNotEqualTo(
 differen
@@ -1139,33 +1139,37 @@
 ertT
-rue
+hat
 (equal1
-.e
+).isE
 qual
-s
+To
 (equal1)
 );%0A%09
@@ -1156,33 +1156,32 @@
 sEqualTo(equal1)
-)
 ;%0A%09%09assertTrue(e
@@ -1179,33 +1179,37 @@
 ertT
-rue
+hat
 (equal1
-.e
+).isE
 qual
-s
+To
 (equal2)
 );%0A%09
@@ -1204,17 +1204,16 @@
 (equal2)
-)
 ;%0A%09%09asse
@@ -1219,33 +1219,37 @@
 ertT
-rue
+hat
 (equal2
-.e
+).isE
 qual
-s
+To
 (equal1)
 );%0A%09
@@ -1244,17 +1244,16 @@
 (equal1)
-)
 ;%0A%09%09asse
@@ -1254,22 +1254,20 @@
 %09%09assert
-Equals
+That
 (equal1.
@@ -1276,18 +1276,28 @@
 shCode()
-, 
+).isEqualTo(
 equal2.h

Use AssertJ in AbstractEqualsAndHashCodeTests