From 156b3074d92b7e600854bffe63a448a1d00e8dea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciar=C3=A1n=20Mooney?= Date: Thu, 30 Apr 2026 20:23:52 +0100 Subject: [PATCH] Added tests for WholeDiffFilter --- .../filter/WholeDiffFilterTest.java | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 diff-checkstyle/src/test/java/io/github/yangziwen/checkstyle/filter/WholeDiffFilterTest.java diff --git a/diff-checkstyle/src/test/java/io/github/yangziwen/checkstyle/filter/WholeDiffFilterTest.java b/diff-checkstyle/src/test/java/io/github/yangziwen/checkstyle/filter/WholeDiffFilterTest.java new file mode 100644 index 0000000..257dba9 --- /dev/null +++ b/diff-checkstyle/src/test/java/io/github/yangziwen/checkstyle/filter/WholeDiffFilterTest.java @@ -0,0 +1,70 @@ +package io.github.yangziwen.checkstyle.filter; + +import com.puppycrawl.tools.checkstyle.api.AuditEvent; +import com.puppycrawl.tools.checkstyle.api.Filter; +import com.puppycrawl.tools.checkstyle.api.Violation; +import org.junit.Test; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +public class WholeDiffFilterTest { + + @Test + public void acceptEmptyList() { + Filter filter = new WholeDiffFilter(Collections.emptyList()); + AuditEvent event = buildAuditEvent(); + boolean result = filter.accept(event); + assertFalse(result); + } + + @Test + public void acceptUnmatched() { + List checks = Collections.singletonList("something"); + Filter filter = new WholeDiffFilter(checks); + AuditEvent event = buildAuditEvent(); + boolean result = filter.accept(event); + assertFalse(result); + } + + @Test + public void acceptMatchOne() { + List checks = new ArrayList<>(); + checks.add("something"); + checks.add("java.lang.Object"); + Filter filter = new WholeDiffFilter(checks); + AuditEvent event = buildAuditEvent(); + boolean result = filter.accept(event); + assertTrue(result); + } + + @Test + public void acceptPartialMatch() { + List checks = Collections.singletonList("Object"); + Filter filter = new WholeDiffFilter(checks); + AuditEvent event = buildAuditEvent(); + boolean result = filter.accept(event); + assertTrue(result); + } + + + @Test + public void acceptSingleMatch() { + List checks = Collections.singletonList("java.lang.Object"); + Filter filter = new WholeDiffFilter(checks); + AuditEvent event = buildAuditEvent(); + boolean result = filter.accept(event); + assertTrue(result); + } + + private static AuditEvent buildAuditEvent() { + Object source = new Object(); + Class sourceClass = Object.class; + Violation violation = new Violation(0, "", "", null, "", sourceClass, ""); + return new AuditEvent(source, "", violation); + } +} \ No newline at end of file