✅ Add test for CheckReport next
authorDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Thu, 27 Nov 2025 15:49:18 +0000 (16:49 +0100)
committerDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Thu, 27 Nov 2025 15:49:18 +0000 (16:49 +0100)
src/test/java/de/todesbaum/jsite/application/validation/CheckReportTest.java [new file with mode: 0644]

diff --git a/src/test/java/de/todesbaum/jsite/application/validation/CheckReportTest.java b/src/test/java/de/todesbaum/jsite/application/validation/CheckReportTest.java
new file mode 100644 (file)
index 0000000..a0bf748
--- /dev/null
@@ -0,0 +1,51 @@
+package de.todesbaum.jsite.application.validation;
+
+import org.junit.Test;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.contains;
+import static org.hamcrest.Matchers.emptyIterable;
+import static org.hamcrest.Matchers.equalTo;
+
+public class CheckReportTest {
+
+       @Test
+       public void newCheckReportIsEmpty() {
+               assertThat(new CheckReport(), emptyIterable());
+       }
+
+       @Test
+       public void newCheckReportSaysItsEmpty() {
+               assertThat(new CheckReport().isEmpty(), equalTo(true));
+       }
+
+       @Test
+       public void checkReportWithIssueAddedIsNotEmpty() {
+               CheckReport checkReport = new CheckReport();
+               checkReport.addIssue("error-key", true, "param1", "param2");
+               assertThat(checkReport.isEmpty(), equalTo(false));
+       }
+
+       @Test
+       public void checkReportWithIssuesAddedReturnsIssues() {
+               CheckReport checkReport = new CheckReport();
+               checkReport.addIssue("error-1", true, "param1", "param2");
+               checkReport.addIssue("error-2", false, "param3", "param4");
+               assertThat(checkReport.getIssues(), contains(
+                               new Issue("error-1", true, "param1", "param2"),
+                               new Issue("error-2", false, "param3", "param4")
+               ));
+       }
+
+       @Test
+       public void checkReportWithIssuesAddedCanBeIteratedOver() {
+               CheckReport checkReport = new CheckReport();
+               checkReport.addIssue("error-1", true, "param1", "param2");
+               checkReport.addIssue("error-2", false, "param3", "param4");
+               assertThat(checkReport, contains(
+                               new Issue("error-1", true, "param1", "param2"),
+                               new Issue("error-2", false, "param3", "param4")
+               ));
+       }
+
+}