Sha256: fac535f7b4df6925a86891f0337f8c125d8a2a7b3cfe024f9bc59c37dd1b3d7b

Contents?: true

Size: 758 Bytes

Versions: 5

Compression:

Stored size: 758 Bytes

Contents

require 'spec_helper'

describe Xmldsig::Transforms::EnvelopedSignature do
  let(:unsigned_xml) { File.read('spec/fixtures/unsigned_nested_signature.xml') }
  let(:unsigned_document) { Xmldsig::SignedDocument.new(unsigned_xml) }

  it 'only removes the outer most signature element' do
    node_with_nested_signature = unsigned_document.signatures.first.references.first.referenced_node

    described_class.new(node_with_nested_signature, nil).transform

    remaining_signatures = node_with_nested_signature.xpath('descendant::ds:Signature', Xmldsig::NAMESPACES)
    expect(remaining_signatures.count).to eq(1)
    signature = Xmldsig::Signature.new(remaining_signatures.first)

    expect(signature.references.first.reference_uri).to eq('#baz')
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
xmldsig-0.7.0 spec/lib/xmldsig/transforms/enveloped_signature_spec.rb
xmldsig-0.6.6 spec/lib/xmldsig/transforms/enveloped_signature_spec.rb
xmldsig-0.6.5 spec/lib/xmldsig/transforms/enveloped_signature_spec.rb
xmldsig-0.6.4 spec/lib/xmldsig/transforms/enveloped_signature_spec.rb
xmldsig-0.6.3 spec/lib/xmldsig/transforms/enveloped_signature_spec.rb