Title: [1061] trunk/jopenssl: Add support for PKCS7_content_new
Revision
1061
Author
olabini
Date
2008-07-21 14:41:25 -0400 (Mon, 21 Jul 2008)

Log Message

Add support for PKCS7_content_new

Modified Paths


Diff

Modified: trunk/jopenssl/src/java/org/jruby/ext/openssl/impl/PKCS7.java (1060 => 1061)


--- trunk/jopenssl/src/java/org/jruby/ext/openssl/impl/PKCS7.java	2008-07-21 18:41:22 UTC (rev 1060)
+++ trunk/jopenssl/src/java/org/jruby/ext/openssl/impl/PKCS7.java	2008-07-21 18:41:25 UTC (rev 1061)
@@ -142,6 +142,15 @@
         return ri;
     }
 
+    /** c: PKCS7_content_new
+     *
+     */
+    public void contentNew(int nid) {
+        PKCS7 ret = new PKCS7();
+        ret.setType(nid);
+        this.setContent(ret);
+    }
+
     /** c: PKCS7_add_signer
      *
      */

Modified: trunk/jopenssl/test/test_java_pkcs7.rb (1060 => 1061)


--- trunk/jopenssl/test/test_java_pkcs7.rb	2008-07-21 18:41:22 UTC (rev 1060)
+++ trunk/jopenssl/test/test_java_pkcs7.rb	2008-07-21 18:41:25 UTC (rev 1061)
@@ -682,6 +682,58 @@
         p7.type = PKCS7::NID_pkcs7_signedAndEnveloped
         assert_equal p7.get_signed_and_enveloped.signer_info.object_id, p7.signer_info.object_id
       end
+      
+      def test_content_new_on_data_raises_exception
+        p7 = PKCS7.new
+        p7.type = PKCS7::NID_pkcs7_data
+        assert_raises NativeException do 
+          p7.content_new(PKCS7::NID_pkcs7_data)
+        end
+      end
+
+      def test_content_new_on_encrypted_raises_exception
+        p7 = PKCS7.new
+        p7.type = PKCS7::NID_pkcs7_encrypted
+        assert_raises NativeException do 
+          p7.content_new(PKCS7::NID_pkcs7_data)
+        end
+      end
+
+      def test_content_new_on_enveloped_raises_exception
+        p7 = PKCS7.new
+        p7.type = PKCS7::NID_pkcs7_enveloped
+        assert_raises NativeException do 
+          p7.content_new(PKCS7::NID_pkcs7_data)
+        end
+      end
+
+      def test_content_new_on_signedAndEnveloped_raises_exception
+        p7 = PKCS7.new
+        p7.type = PKCS7::NID_pkcs7_signedAndEnveloped
+        assert_raises NativeException do 
+          p7.content_new(PKCS7::NID_pkcs7_data)
+        end
+      end
+      
+      def test_content_new_on_digest_creates_new_content
+        p7 = PKCS7.new
+        p7.type = PKCS7::NID_pkcs7_digest
+        p7.content_new(PKCS7::NID_pkcs7_signedAndEnveloped)
+        assert p7.get_digest.contents.signed_and_enveloped?
+        
+        p7.content_new(PKCS7::NID_pkcs7_encrypted)
+        assert p7.get_digest.contents.encrypted?
+      end
+
+      def test_content_new_on_signed_creates_new_content
+        p7 = PKCS7.new
+        p7.type = PKCS7::NID_pkcs7_signed
+        p7.content_new(PKCS7::NID_pkcs7_signedAndEnveloped)
+        assert p7.get_sign.contents.signed_and_enveloped?
+        
+        p7.content_new(PKCS7::NID_pkcs7_encrypted)
+        assert p7.get_sign.contents.encrypted?
+      end
     end
   end
 end
_______________________________________________
Jruby-extras-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/jruby-extras-devel

Reply via email to