diff options
Diffstat (limited to 'base/util/test/com/netscape/security/x509/PrintableConverterTest.java')
-rw-r--r-- | base/util/test/com/netscape/security/x509/PrintableConverterTest.java | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/base/util/test/com/netscape/security/x509/PrintableConverterTest.java b/base/util/test/com/netscape/security/x509/PrintableConverterTest.java new file mode 100644 index 000000000..a7acc9c90 --- /dev/null +++ b/base/util/test/com/netscape/security/x509/PrintableConverterTest.java @@ -0,0 +1,103 @@ +package com.netscape.security.x509; + +import org.junit.Test; +import org.junit.Assert; + +import com.netscape.security.util.JSSUtil; +import com.netscape.security.util.StringTestUtil; + +import netscape.security.util.DerValue; +import netscape.security.x509.PrintableConverter; + +public class PrintableConverterTest { + + @Test + public void testEmptyString() throws Exception { + + String string = ""; + System.out.println("Converting: [" + string + "]"); + + byte[] expected = JSSUtil.encode(DerValue.tag_PrintableString, string); + System.out.println(" - expected: " + StringTestUtil.toString(expected)); + + byte[] actual = ConverterTestUtil.convert(new PrintableConverter(), string); + System.out.println(" - actual : " + StringTestUtil.toString(actual)); + + Assert.assertArrayEquals(expected, actual); + } + + @Test + public void testNullCharacters() throws Exception { + + String string = StringTestUtil.NULL_CHARS; + System.out.println("Converting: [" + StringTestUtil.toString(string.getBytes()) + "]"); + + System.out.println(" - expected: IllegalArgumentException"); + + try { + byte[] actual = ConverterTestUtil.convert(new PrintableConverter(), string); + System.out.println(" - actual : " + StringTestUtil.toString(actual)); + + Assert.fail(); + + } catch (Exception e) { + System.out.println(" - actual : " + e.getClass().getSimpleName()); + Assert.assertTrue(e instanceof IllegalArgumentException); + } + } + + @Test + public void testPrintableCharacters() throws Exception { + + String string = StringTestUtil.PRINTABLE_CHARS; + System.out.println("Converting: [" + string + "]"); + + byte[] expected = JSSUtil.encode(DerValue.tag_PrintableString, string); + System.out.println(" - expected: " + StringTestUtil.toString(expected)); + + byte[] actual = ConverterTestUtil.convert(new PrintableConverter(), string); + System.out.println(" - actual : " + StringTestUtil.toString(actual)); + + Assert.assertArrayEquals(expected, actual); + } + + @Test + public void testControlCharacters() throws Exception { + + String string = StringTestUtil.CONTROL_CHARS; + System.out.println("Converting: [" + StringTestUtil.toString(string.getBytes()) + "]"); + + System.out.println(" - expected: IllegalArgumentException"); + + try { + byte[] actual = ConverterTestUtil.convert(new PrintableConverter(), string); + System.out.println(" - actual : " + StringTestUtil.toString(actual)); + + Assert.fail(); + + } catch (Exception e) { + System.out.println(" - actual : " + e.getClass().getSimpleName()); + Assert.assertTrue(e instanceof IllegalArgumentException); + } + } + + @Test + public void testMultibyteCharacters() throws Exception { + + String string = StringTestUtil.MULTIBYTE_CHARS; + System.out.println("Converting: [" + string + "]"); + + System.out.println(" - expected: IllegalArgumentException"); + + try { + byte[] actual = ConverterTestUtil.convert(new PrintableConverter(), string); + System.out.println(" - actual : " + StringTestUtil.toString(actual)); + + Assert.fail(); + + } catch (Exception e) { + System.out.println(" - actual : " + e.getClass().getSimpleName()); + Assert.assertTrue(e instanceof IllegalArgumentException); + } + } +} |