Commit 50c9a63

mo <mo.khan@gmail.com>
2017-11-12 22:02:08
build instance of logout request.
1 parent 9e6196d
Changed files (2)
lib/saml/kit/logout_request.rb
@@ -1,6 +1,14 @@
 module Saml
   module Kit
     class LogoutRequest
+      def initialize(xml)
+        @xml = xml
+      end
+
+      def to_xml
+        @xml
+      end
+
       class Builder
         attr_accessor :id, :destination, :issuer, :name_id_format, :now
         attr_accessor :sign
@@ -26,6 +34,10 @@ module Saml
           end
         end
 
+        def build
+          Saml::Kit::LogoutRequest.new(to_xml)
+        end
+
         private
 
         def logout_request_options
spec/saml/logout_request_spec.rb
@@ -27,18 +27,21 @@ RSpec.describe Saml::Kit::LogoutRequest do
     end
 
     it 'includes a signature by default' do
-      travel_to 1.second.from_now
       xml_hash = Hash.from_xml(subject.to_xml)
-
       expect(xml_hash['LogoutRequest']['Signature']).to be_present
     end
 
     it 'excludes a signature' do
-      travel_to 1.second.from_now
       subject.sign = false
       xml_hash = Hash.from_xml(subject.to_xml)
-
       expect(xml_hash['LogoutRequest']['Signature']).to be_nil
     end
+
+    it 'builds a LogoutRequest' do
+      travel_to 1.second.from_now
+      result = subject.build
+      expect(result).to be_instance_of(Saml::Kit::LogoutRequest)
+      expect(result.to_xml).to eql(subject.to_xml)
+    end
   end
 end