X509NameTest.java
上传用户:lior1029
上传日期:2013-05-07
资源大小:209k
文件大小:3k
源码类别:

CA认证

开发平台:

Java

  1. package org.bouncycastle.asn1.test;
  2. import java.io.*;
  3. import java.util.*;
  4. import org.bouncycastle.util.encoders.*;
  5. import org.bouncycastle.util.test.*;
  6. import org.bouncycastle.asn1.*;
  7. import org.bouncycastle.asn1.x509.*;
  8. public class X509NameTest
  9. implements Test
  10. {
  11. public String getName()
  12. {
  13. return "X509Name";
  14. }
  15. public TestResult perform()
  16. {
  17.         Hashtable                   attrs = new Hashtable();
  18.         attrs.put(X509Name.C, "AU");
  19.         attrs.put(X509Name.O, "The Legion of the Bouncy Castle");
  20.         attrs.put(X509Name.L, "Melbourne");
  21.         attrs.put(X509Name.ST, "Victoria");
  22.         attrs.put(X509Name.E, "feedback-crypto@bouncycastle.org");
  23.         X509Name    name1 = new X509Name(attrs);
  24.         if (!name1.equals(name1))
  25.         {
  26.             return new SimpleTestResult(false, getName() + ": Failed same object test");
  27.         }
  28.         X509Name    name2 = new X509Name(attrs);
  29.         if (!name1.equals(name2))
  30.         {
  31.             return new SimpleTestResult(false, getName() + ": Failed same name test");
  32.         }
  33.         Vector  ord1 = new Vector();
  34.         ord1.addElement(X509Name.C);
  35.         ord1.addElement(X509Name.O);
  36.         ord1.addElement(X509Name.L);
  37.         ord1.addElement(X509Name.ST);
  38.         ord1.addElement(X509Name.E);
  39.         Vector  ord2 = new Vector();
  40.         ord2.addElement(X509Name.E);
  41.         ord2.addElement(X509Name.ST);
  42.         ord2.addElement(X509Name.L);
  43.         ord2.addElement(X509Name.O);
  44.         ord2.addElement(X509Name.C);
  45.         name1 = new X509Name(ord1, attrs);
  46.         name2 = new X509Name(ord2, attrs);
  47.         if (!name1.equals(name2))
  48.         {
  49.             return new SimpleTestResult(false, getName() + ": Failed reverse name test");
  50.         }
  51.         ord2 = new Vector();
  52.         ord2.addElement(X509Name.ST);
  53.         ord2.addElement(X509Name.ST);
  54.         ord2.addElement(X509Name.L);
  55.         ord2.addElement(X509Name.O);
  56.         ord2.addElement(X509Name.C);
  57.         name1 = new X509Name(ord1, attrs);
  58.         name2 = new X509Name(ord2, attrs);
  59.         if (name1.equals(name2))
  60.         {
  61.             return new SimpleTestResult(false, getName() + ": Failed different name test");
  62.         }
  63.         ord2 = new Vector();
  64.         ord2.addElement(X509Name.ST);
  65.         ord2.addElement(X509Name.L);
  66.         ord2.addElement(X509Name.O);
  67.         ord2.addElement(X509Name.C);
  68.         name1 = new X509Name(ord1, attrs);
  69.         name2 = new X509Name(ord2, attrs);
  70.         if (name1.equals(name2))
  71.         {
  72.             return new SimpleTestResult(false, getName() + ": Failed subset name test");
  73.         }
  74.         return new SimpleTestResult(true, getName() + ": Okay");
  75.     }
  76.     public static void main(
  77.         String[]    args)
  78.     {
  79.         Test    test = new X509NameTest();
  80.         TestResult  result = test.perform();
  81.         System.out.println(result);
  82.     }
  83. }