Sha256: 5fe74a55731613ff917432e16cefa6ae723c22ef2b7b94af771efa45b63b2b1f

Contents?: true

Size: 1.15 KB

Versions: 3

Compression:

Stored size: 1.15 KB

Contents

require 'spec_helper'

describe "encryption and decryption:" do
  subject do
    Nokogiri::XML(fixture('sign2-doc.xml'))
  end

  [ 'aes128-cbc', 'aes192-cbc', 'aes256-cbc', 'tripledes-cbc' ].each do |block_encryption|
    [ 'rsa-1_5', 'rsa-oaep-mgf1p' ].each do |key_transport|
      describe "encrypting with an RSA public key with #{block_encryption} #{key_transport}" do
        before do
          @original = subject.to_s
          subject.encrypt!(
            key: fixture('rsa.pub'), name: 'test',
            block_encryption: block_encryption, key_transport: key_transport)
        end

        # it generates a new key every time so will never match the fixture
        specify { expect(subject.to_s == @original).to be_falsey }
        specify { expect(subject.to_s =~ /Hello.*World/i).to be_falsey }
        # specify { subject.to_s.should == fixture('encrypt2-result.xml') }

        describe 'decrypting with the RSA private key' do
          before do
            subject.decrypt! key: fixture('rsa.pem'), name: 'test'
          end

          specify { expect(subject.to_s == fixture('sign2-doc.xml')).to be_truthy }
        end
      end
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
nokogiri-xmlsec-me-harder-0.9.2 spec/lib/nokogiri/xml/document/encryption_and_decryption_spec.rb
nokogiri-xmlsec-me-harder-0.9.1 spec/lib/nokogiri/xml/document/encryption_and_decryption_spec.rb
nokogiri-xmlsec-me-harder-0.9.0 spec/lib/nokogiri/xml/document/encryption_and_decryption_spec.rb