Skip to content
Snippets Groups Projects
Commit 98c05151 authored by Jan Kožusznik's avatar Jan Kožusznik
Browse files

Equivalnce routines

parent 989fe83a
Branches
No related merge requests found
package koz01.java2.lab04;
import static org.junit.jupiter.api.Assertions.assertTrue;
class EquivalenceRoutines {
static void assertReflexivity(Object obj) {
assertTrue(obj.equals(obj));
}
static void assertSymmetry(Object obj1, Object obj2) {
if(obj1.equals(obj2)) {
assertTrue(obj2.equals(obj1));
} else {
assertTrue(!obj2.equals(obj1));
}
}
static void assertTransitivity(Object obj1, Object obj2, Object obj3) {
if(obj1.equals(obj2) && obj2.equals(obj3)) {
assertTrue(obj1.equals(obj3));
}
}
}
package koz01.java2.lab04;
import static org.junit.jupiter.api.Assertions.*;
import static koz01.java2.lab04.EquivalenceRoutines.assertReflexivity;
import static koz01.java2.lab04.EquivalenceRoutines.assertSymmetry;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import javafx.scene.paint.Color;
@TestMethodOrder(OrderAnnotation.class)
class TestEquals {
@Test
@Order(1)
void testLogicEquality() {
Point p1 = new Point(1,2);
Point p2 = new Point(1,2);
assertTrue(p1.equals(p2));
Point p3 = new Point(1,1);
assertTrue(!p1.equals(p3));
Point cp1 = new ColorPoint(1,2,Color.BLACK);
Point cp2 = new ColorPoint(1,2,Color.BLACK);
assertTrue(cp1.equals(cp2));
Point cp3 = new ColorPoint(1,1,Color.BLACK);
assertTrue(!cp1.equals(cp3));
Point cp4 = new ColorPoint(1,2,Color.WHITE);
assertTrue(!cp1.equals(cp4));
}
@Test
@Order(2)
void testRelfexity() {
Point p1 = new Point(1,2);
assertTrue(p1.equals(p1));
assertReflexivity(p1);
}
@Test
@Order(3)
void testSymmetry() {
Point p1 = new Point(1,2);
Point p2 = new Point(1,2);
Point p3 = new ColorPoint(1,1, Color.AZURE);
assertTrue(p1.equals(p2));
assertTrue(p2.equals(p1));
assertFalse(p1.equals(p3));
assertFalse(p3.equals(p1));
Point p3 = new ColorPoint(1,2, Color.AZURE);
assertSymmetry(p1, p2);
assertSymmetry(p2, p3);
}
@Test
@Order(4)
void testTransitivity() {
Point p1 = new ColorPoint(1,2,Color.CYAN);
Point p2 = new Point(1,2);
......@@ -37,6 +67,7 @@ class TestEquals {
}
@Test
@Order(5)
void testLiskovPrinciple() {
Point p1 = new ColorPoint(1,2,Color.CYAN);
Point p2 = new ColorPoint(1,2, Color.CYAN) {
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment