Index: trunk/src/org/openstreetmap/josm/data/validation/Test.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/Test.java	(revision 15461)
+++ trunk/src/org/openstreetmap/josm/data/validation/Test.java	(revision 15463)
@@ -8,5 +8,4 @@
 import java.util.Collection;
 import java.util.List;
-import java.util.Objects;
 import java.util.Optional;
 import java.util.function.Predicate;
@@ -39,5 +38,5 @@
  * @author frsantos
  */
-public class Test implements OsmPrimitiveVisitor, Comparable<Test> {
+public class Test implements OsmPrimitiveVisitor {
 
     protected static final Predicate<OsmPrimitive> IN_DOWNLOADED_AREA = new NotOutsideDataSourceArea();
@@ -365,23 +364,4 @@
     }
 
-    @Override
-    public int hashCode() {
-        return Objects.hash(name, description);
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) return true;
-        if (obj == null || getClass() != obj.getClass()) return false;
-        Test test = (Test) obj;
-        return Objects.equals(name, test.name) &&
-               Objects.equals(description, test.description);
-    }
-
-    @Override
-    public int compareTo(Test t) {
-        return name.compareTo(t.name);
-    }
-
     /**
      * Free resources.
Index: trunk/src/org/openstreetmap/josm/data/validation/tests/MapCSSTagChecker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/MapCSSTagChecker.java	(revision 15461)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/MapCSSTagChecker.java	(revision 15463)
@@ -682,16 +682,4 @@
 
         @Override
-        public synchronized boolean equals(Object obj) {
-            return super.equals(obj)
-                    || (obj instanceof TagCheck && rule.equals(((TagCheck) obj).rule))
-                    || (obj instanceof GroupedMapCSSRule && rule.equals(obj));
-        }
-
-        @Override
-        public synchronized int hashCode() {
-            return Objects.hash(super.hashCode(), rule);
-        }
-
-        @Override
         public String toString() {
             return "MapCSSTagCheckerAndRule [rule=" + rule + ']';
@@ -930,6 +918,6 @@
                 final Collection<TestError> pErrors = getErrorsForPrimitive(p, true, checksToRun);
                 Logging.debug("- Errors: {0}", pErrors);
-                @SuppressWarnings({"EqualsBetweenInconvertibleTypes", "EqualsIncompatibleType"})
-                final boolean isError = pErrors.stream().anyMatch(e -> e.getTester().equals(check.rule));
+                final boolean isError = pErrors.stream().anyMatch(e -> e.getTester() instanceof MapCSSTagCheckerAndRule
+                        && ((MapCSSTagCheckerAndRule) e.getTester()).rule.equals(check.rule));
                 if (isError != i.getValue()) {
                     assertionErrors.add(MessageFormat.format("Expecting test ''{0}'' (i.e., {1}) to {2} {3} (i.e., {4})",
@@ -957,18 +945,4 @@
         }
         ds.addPrimitive(p);
-    }
-
-    @Override
-    public synchronized int hashCode() {
-        return Objects.hash(super.hashCode(), checks);
-    }
-
-    @Override
-    public synchronized boolean equals(Object obj) {
-        if (this == obj) return true;
-        if (obj == null || getClass() != obj.getClass()) return false;
-        if (!super.equals(obj)) return false;
-        MapCSSTagChecker that = (MapCSSTagChecker) obj;
-        return Objects.equals(checks, that.checks);
     }
 
Index: trunk/src/org/openstreetmap/josm/data/validation/tests/SharpAngles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/SharpAngles.java	(revision 15461)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/SharpAngles.java	(revision 15463)
@@ -6,5 +6,4 @@
 import java.util.Arrays;
 import java.util.Collection;
-import java.util.Objects;
 import java.util.TreeSet;
 
@@ -152,19 +151,3 @@
     }
 
-    @Override
-    public int hashCode() {
-        return 31 * super.hashCode() + Objects.hash(ignoreHighways, maxAngle, maxLength);
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj)
-            return true;
-        if (!super.equals(obj) || getClass() != obj.getClass())
-            return false;
-        SharpAngles other = (SharpAngles) obj;
-        return Objects.equals(ignoreHighways, other.ignoreHighways)
-                && Double.doubleToLongBits(maxAngle) == Double.doubleToLongBits(other.maxAngle)
-                && Double.doubleToLongBits(maxLength) == Double.doubleToLongBits(other.maxLength);
-    }
 }
