summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormokha <mokha@cisco.com>2018-03-06 15:04:04 -0700
committermokha <mokha@cisco.com>2018-03-06 15:04:04 -0700
commit1aa8285fffe65d32269d918a962f7fbe35b95948 (patch)
tree460aec04720d9e7a2dda8d9a4e3e02d43b66e1a2
parent5546d3683bce5c74d465a3ce64a6d1f0cf90ca77 (diff)
add spec for logout response and invalid document.
-rw-r--r--lib/saml/kit/core_ext/document.rb3
-rw-r--r--spec/saml/kit/cli/commands/decode_spec.rb18
2 files changed, 21 insertions, 0 deletions
diff --git a/lib/saml/kit/core_ext/document.rb b/lib/saml/kit/core_ext/document.rb
index e354467..b297e51 100644
--- a/lib/saml/kit/core_ext/document.rb
+++ b/lib/saml/kit/core_ext/document.rb
@@ -12,6 +12,9 @@ module Saml
table.push(['Trusted?', trusted?])
signature.build_header(table) if signature.present?
end
+
+ def build_body(table = [])
+ end
end
class AuthenticationRequest
diff --git a/spec/saml/kit/cli/commands/decode_spec.rb b/spec/saml/kit/cli/commands/decode_spec.rb
index 8718f78..d1a33e6 100644
--- a/spec/saml/kit/cli/commands/decode_spec.rb
+++ b/spec/saml/kit/cli/commands/decode_spec.rb
@@ -49,6 +49,24 @@ RSpec.describe Saml::Kit::Cli::Commands::Decode do
specify { expect(output).to include("Decoded #{document.send(:name)}") }
specify { expect(output).to include(user.name_id_for) }
end
+
+ context "when the document is a LogoutResponse" do
+ let(:command) { "decode post #{post_binding.serialize(builder)[1]['SAMLResponse']}" }
+ let(:builder) { Saml::Kit::LogoutResponse.builder(request) }
+ let(:request) { double(id: Xml::Kit::Id.generate) }
+ let(:document) { builder.build }
+
+ specify { expect(status).to be_success }
+ specify { expect(output).to include(document.to_xml(pretty: true)) }
+ specify { expect(output).to include("Decoded #{document.send(:name)}") }
+ end
+
+ context "when the document is Invalid" do
+ let(:command) { "decode post #{Base64.encode64('INVALID')}" }
+
+ specify { expect(status).to be_success }
+ specify { expect(output).to include("error Decoded InvalidDocument") }
+ end
end
describe '#raw' do