summaryrefslogtreecommitdiffstats
path: root/pki/base/util/test/com/netscape/security/util/JSSUtil.java
diff options
context:
space:
mode:
authorEndi Sukma Dewata <edewata@redhat.com>2011-12-13 14:10:03 -0600
committerAdam Young <ayoung@redhat.com>2011-12-19 10:38:34 -0500
commit6e4b6268b40d5994eb43dd1b5702c5465c974ca1 (patch)
tree49cc61e2b8ff949bd61e98f4aead9d75e290efd4 /pki/base/util/test/com/netscape/security/util/JSSUtil.java
parent171aaece4f23709d33d180cf36eb3af5e454b0c9 (diff)
downloadpki-6e4b6268b40d5994eb43dd1b5702c5465c974ca1.tar.gz
pki-6e4b6268b40d5994eb43dd1b5702c5465c974ca1.tar.xz
pki-6e4b6268b40d5994eb43dd1b5702c5465c974ca1.zip
Added unit tests for pki-util.
New unit tests have been added to test string converters indirectly. This is to allow replacing the converters with charset encoder and decoder without changing the test cases. The TestRunner has been moved into a separate package such that it can be reused by other packages. Ticket #3
Diffstat (limited to 'pki/base/util/test/com/netscape/security/util/JSSUtil.java')
-rw-r--r--pki/base/util/test/com/netscape/security/util/JSSUtil.java43
1 files changed, 43 insertions, 0 deletions
diff --git a/pki/base/util/test/com/netscape/security/util/JSSUtil.java b/pki/base/util/test/com/netscape/security/util/JSSUtil.java
new file mode 100644
index 00000000..abaab427
--- /dev/null
+++ b/pki/base/util/test/com/netscape/security/util/JSSUtil.java
@@ -0,0 +1,43 @@
+package com.netscape.security.util;
+
+import netscape.security.util.DerValue;
+
+import org.mozilla.jss.asn1.ASN1Util;
+import org.mozilla.jss.asn1.ASN1Value;
+import org.mozilla.jss.asn1.BMPString;
+import org.mozilla.jss.asn1.IA5String;
+import org.mozilla.jss.asn1.PrintableString;
+import org.mozilla.jss.asn1.TeletexString;
+import org.mozilla.jss.asn1.UTF8String;
+import org.mozilla.jss.asn1.UniversalString;
+
+public class JSSUtil {
+
+ public static byte[] encode(byte tag, String string) throws Exception {
+ ASN1Value value;
+
+ switch (tag) {
+ case DerValue.tag_BMPString:
+ value = new BMPString(string);
+ break;
+ case DerValue.tag_IA5String:
+ value = new IA5String(string);
+ break;
+ case DerValue.tag_PrintableString:
+ value = new PrintableString(string);
+ break;
+ case DerValue.tag_T61String:
+ value = new TeletexString(string);
+ break;
+ case DerValue.tag_UniversalString:
+ value = new UniversalString(string);
+ break;
+ case DerValue.tag_UTF8String:
+ value = new UTF8String(string);
+ break;
+ default:
+ throw new Exception("Unsupported tag: "+tag);
+ }
+ return ASN1Util.encode(value);
+ }
+}