Commit ab1c5ed

mo <mo@mokhan.ca>
2017-12-19 21:16:56
add specs to make sure idp metadata is valid.
1 parent 7f8a86a
Changed files (2)
spec/saml/builders/metadata_spec.rb
@@ -54,18 +54,21 @@ RSpec.describe Saml::Kit::Builders::Metadata do
 
     it 'generates signed idp and sp metadata' do
       configuration = Saml::Kit::Configuration.new do |config|
-        config.generate_key_pair_for(use: :signing)
+        3.times { config.generate_key_pair_for(use: :signing) }
       end
       metadata = Saml::Kit::Metadata.build(configuration: configuration) do |builder|
         builder.entity_id = FFaker::Internet.uri("https")
         builder.build_identity_provider do |x|
           x.embed_signature = true
+          x.add_single_sign_on_service(url, binding: :http_post)
         end
         builder.build_service_provider do |x|
           x.embed_signature = true
+          x.add_assertion_consumer_service(url, binding: :http_post)
         end
       end
       expect(metadata).to be_present
+      expect(metadata).to be_valid
     end
   end
 end
spec/saml/xml_spec.rb
@@ -45,5 +45,16 @@ RSpec.describe Saml::Kit::Xml do
       expect(subject).to_not be_valid
       expect(subject.errors[:signature]).to be_present
     end
+
+    it 'is valid' do
+      configuration = Saml::Kit::Configuration.new do |config|
+        5.times { config.generate_key_pair_for(use: :signing) }
+      end
+      signed_xml = Saml::Kit::Metadata.build_xml(configuration: configuration) do |builder|
+        builder.build_identity_provider
+        builder.build_service_provider
+      end
+      expect(described_class.new(signed_xml)).to be_valid
+    end
   end
 end