diff --git a/pom.xml b/pom.xml index b2c4ccca9..04093e6de 100644 --- a/pom.xml +++ b/pom.xml @@ -889,7 +889,6 @@ .*.checks.whitespace.WhitespaceAroundCheck9698 - .*.filters.CSVFilter10093 .*.filters.IntMatchFilter10090 .*.filters.IntRangeFilter10090 .*.filters.SuppressElement6978 diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/filters/CSVFilter.java b/src/main/java/com/puppycrawl/tools/checkstyle/filters/CSVFilter.java index 1d74f8390..ba00fe330 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/filters/CSVFilter.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/filters/CSVFilter.java @@ -20,6 +20,8 @@ package com.puppycrawl.tools.checkstyle.filters; import com.google.common.collect.Sets; + +import java.util.Objects; import java.util.Set; import java.util.StringTokenizer; @@ -96,21 +98,19 @@ class CSVFilter implements IntFilter { } @Override - public String toString() { - return filters.toString(); + public boolean equals(Object object) { + if (this == object) { + return true; + } + if (object == null || getClass() != object.getClass()) { + return false; + } + final CSVFilter csvFilter = (CSVFilter) object; + return Objects.equals(filters, csvFilter.filters); } @Override public int hashCode() { - return filters.hashCode(); - } - - @Override - public boolean equals(Object object) { - if (object instanceof CSVFilter) { - final CSVFilter other = (CSVFilter) object; - return this.filters.equals(other.filters); - } - return false; + return Objects.hash(filters); } } diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/filters/CSVFilterTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/filters/CSVFilterTest.java index 17a3e28a7..64c4e65a7 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/filters/CSVFilterTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/filters/CSVFilterTest.java @@ -21,6 +21,8 @@ package com.puppycrawl.tools.checkstyle.filters; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; + +import nl.jqno.equalsverifier.EqualsVerifier; import org.junit.Test; /** Tests CSVFilter */ @@ -72,4 +74,9 @@ public class CSVFilterTest { assertFalse("greater than", filter.accept(Integer.valueOf(3))); assertTrue("equal 10", filter.accept(Integer.valueOf(10))); } + + @Test + public void testEqualsAndHashCode() { + EqualsVerifier.forClass(CSVFilter.class).usingGetClass().verify(); + } }