]> WPIA git - gigi.git/blobdiff - tests/club/wpia/gigi/dbObjects/TestSerialNormalization.java
add: serial normalization
[gigi.git] / tests / club / wpia / gigi / dbObjects / TestSerialNormalization.java
diff --git a/tests/club/wpia/gigi/dbObjects/TestSerialNormalization.java b/tests/club/wpia/gigi/dbObjects/TestSerialNormalization.java
new file mode 100644 (file)
index 0000000..f2b9a94
--- /dev/null
@@ -0,0 +1,76 @@
+package club.wpia.gigi.dbObjects;
+
+import static org.junit.Assert.*;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
+
+import club.wpia.gigi.GigiApiException;
+
+@RunWith(Parameterized.class)
+public class TestSerialNormalization {
+
+    private final String input;
+
+    private final String normalized;
+
+    @Parameters
+    public static List<String[]> params() {
+        return Arrays.asList(new String[] {
+                "dead00beef", "dead00beef"
+        }, new String[] {
+                "Dead00beef", "dead00beef"
+        }, new String[] {
+                "DEAD00BEEF", "dead00beef"
+        }, new String[] {
+                "00DEAD00BEEF", "dead00beef"
+        }, new String[] {
+                " 00dead00beef", "dead00beef"
+        }, new String[] {
+                "00dead00beef ", "dead00beef"
+        }, new String[] {
+                " 00dead00beef ", "dead00beef"
+        }, new String[] {
+                " 00dead 00beef ", "dead00beef"
+        }, new String[] {
+                " 00d ead 00beef ", "dead00beef"
+        }, new String[] {
+                "de:ad:00:be:ef", "dead00beef"
+        }, new String[] {
+                "00:de:ad:03:be:ef", "dead03beef"
+        }, new String[] {
+                "08:15:47:11", "8154711"
+        }, new String[] {
+                " 00:de:Ad:43:be:ef ", "dead43beef"
+        }, new String[] {
+                "00:de:ad:43:beef", null
+        }, new String[] {
+                "g", null
+        }, new String[] {
+                ".", null
+        });
+    }
+
+    public TestSerialNormalization(String input, String normalized) {
+        this.input = input;
+        this.normalized = normalized;
+    }
+
+    @Test
+    public void testNormalize() throws GigiApiException {
+        if (normalized == null) {
+            try {
+                Certificate.normalizeSerial(input);
+                fail("malformed serial accepted");
+            } catch (GigiApiException e) {
+                return;
+            }
+        }
+        assertEquals(normalized, Certificate.normalizeSerial(input));
+    }
+}