Commit 9d28faa

mo <mo@mokhan.ca>
2018-09-18 18:00:33
validate a raw response.
1 parent 7588e0b
Changed files (2)
spec/saml/kit/assertion_spec.rb
@@ -243,7 +243,7 @@ RSpec.describe Saml::Kit::Assertion do
 
   describe '.new' do
     let(:user) { instance_double(User, name_id_for: SecureRandom.uuid, assertion_attributes_for: {}) }
-    let(:saml_request) { double(id: Xml::Kit::Id.generate, issuer: configuration.entity_id) }
+    let(:saml_request) { instance_double(Saml::Kit::AuthenticationRequest, id: Xml::Kit::Id.generate, issuer: configuration.entity_id) }
     let(:registry) { instance_double(Saml::Kit::DefaultRegistry) }
     let(:configuration) do
       Saml::Kit::Configuration.new do |x|
@@ -260,8 +260,7 @@ RSpec.describe Saml::Kit::Assertion do
 
     it 'parses a raw xml assertion' do
       saml = described_class.build(user, saml_request, true, configuration: configuration)
-      subject = described_class.new(saml.to_xml, configuration: configuration)
-      expect(subject).to be_valid
+      expect(described_class.new(saml.to_xml, configuration: configuration)).to be_valid
     end
   end
 end
spec/saml/kit/response_spec.rb
@@ -595,4 +595,24 @@ RSpec.describe Saml::Kit::Response do
       expect(result.attributes).to be_empty
     end
   end
+
+  describe ".new" do
+    let(:registry) { instance_double(Saml::Kit::DefaultRegistry) }
+    let(:metadata) { instance_double(Saml::Kit::IdentityProviderMetadata) }
+    let(:configuration) do
+      Saml::Kit::Configuration.new do |config|
+        config.entity_id = request.issuer
+        config.registry = registry
+        config.generate_key_pair_for(use: :signing)
+      end
+    end
+
+    it 'parses a raw response' do
+      allow(registry).to receive(:metadata_for).and_return(metadata)
+      allow(metadata).to receive(:matches?).and_return(true)
+
+      saml = described_class.build(user, request, configuration: configuration)
+      expect(described_class.new(saml.to_xml, configuration: configuration)).to be_valid
+    end
+  end
 end