aboutsummaryrefslogtreecommitdiff
path: root/src/test/model/x501/NameTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/model/x501/NameTest.java')
-rw-r--r--src/test/model/x501/NameTest.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/test/model/x501/NameTest.java b/src/test/model/x501/NameTest.java
index 22307f2..435ed71 100644
--- a/src/test/model/x501/NameTest.java
+++ b/src/test/model/x501/NameTest.java
@@ -164,4 +164,38 @@ public class NameTest {
assertEquals("CN=yuuta,OU=users,C=CA", TestConstants.NAME_1.toString());
assertEquals("SN=Qwq,O=IT,C=CN", TestConstants.NAME_2.toString());
}
+
+ private static void assertParseString(String dn) throws ParseException {
+ assertEquals(dn, Name.parseString(dn).toString());
+ }
+
+ @Test
+ void testParseStringSuccess() throws ParseException {
+ assertParseString("CN=a");
+ assertParseString("CN=a+L=b");
+ assertParseString("CN=a+L=b,OU=c");
+ assertParseString("CN=a+L=b,OU=c+CN=d");
+ assertParseString("CN=a+L=b,OU=c+CN=d,C=e");
+ assertParseString("CN=Web,OU=Computers,O=IT");
+ assertParseString("CN=Web,OU=Computers,O=IT\\,Meow\\+qwq,C=CN");
+ }
+
+ @Test
+ void testParseStringFail() {
+ assertThrows(ParseException.class, () -> Name.parseString(""));
+ assertThrows(ParseException.class, () -> Name.parseString("C"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN="));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a+"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=+"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=,"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C="));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,="));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C=,"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C+"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C=b,OOO"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C=b,OOO="));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C=b,OU=+"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C=b,OU,"));
+ assertThrows(ParseException.class, () -> Name.parseString("CN=a,C=b=c"));
+ }
}