Andrew Grant 3 сар өмнө
parent
commit
0bc13999ba

+ 32 - 0
src/main/java/scot/carricksoftware/grantswriter/data/TimeLineDateComparator.java

@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
+ *
+ */
+
+package scot.carricksoftware.grantswriter.data;
+
+import java.util.Comparator;
+
+public class TimeLineDateComparator implements Comparator<String> {
+
+    @SuppressWarnings("ComparatorMethodParameterNotUsed")
+    @Override
+    public int compare(String a, String b) {
+        String[] aParts = a.split("/");
+        String[] bParts = b.split("/");
+
+        if (Integer.parseInt(aParts[2]) > Integer.parseInt(bParts[2])) {
+            return 1;
+        }
+
+        if (Integer.parseInt(aParts[1]) > Integer.parseInt(bParts[1])) {
+            return 1;
+        }
+
+        if (Integer.parseInt(aParts[0]) > Integer.parseInt(bParts[0])) {
+            return 1;
+        }
+
+        return 0;
+    }
+}

+ 26 - 0
src/test/java/scot/carricksoftware/grantswriter/data/TimeLineDateComparatorTest.java

@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
+ *
+ */
+
+package scot.carricksoftware.grantswriter.data;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
+class TimeLineDateComparatorTest {
+
+    private TimeLineDateComparator comparator;
+
+    @BeforeEach
+    void setUp() {
+        comparator = new TimeLineDateComparator();
+    }
+
+    @Test
+    void constructorTest() {
+        assertNotNull(comparator);
+    }
+}