Commit d550c33

mokha <mokha@cisco.com>
2018-03-07 02:35:13
merge build_header and build_body.
1 parent a36ab57
Changed files (3)
lib/saml/kit/cli/report.rb
@@ -14,7 +14,7 @@ module Saml
           else
             shell.say_status :success, "Decoded #{document.send(:name)}"
           end
-          shell.print_table build_table_for(document)
+          shell.print_table document.build_table
           signature = document.signature
           if signature.present? && signature.certificate.present?
             shell.say(signature.certificate.x509.to_text)
@@ -24,19 +24,6 @@ module Saml
             shell.say_status :error, error, :red
           end
         end
-
-        private
-
-        def truncate(text, max: 50)
-          text.length >= max ? "#{text[0..max]}..." : text
-        end
-
-        def build_table_for(document)
-          table = []
-          document.build_header(table)
-          document.build_body(table)
-          table
-        end
       end
     end
   end
lib/saml/kit/core_ext/document.rb
@@ -1,31 +1,32 @@
 module Saml
   module Kit
     class Document
-      def build_header(table = [])
+      def build_table(table = [])
         table.push(['ID', id])
         table.push(['Issuer', issuer])
         table.push(['Version', version])
         table.push(['Issue Instant', issue_instant.iso8601])
-        table.push(['Type', send(:name)])
+        table.push(['Type', name])
         table.push(['Valid', valid?])
         table.push(['Signed?', signed?])
         table.push(['Trusted?', trusted?])
-        signature.build_header(table) if signature.present?
-      end
-
-      def build_body(table = [])
+        signature.build_table(table) if signature.present?
+        table
       end
     end
 
     class AuthenticationRequest
-      def build_body(table = [])
+      def build_table(table = [])
+        super(table)
         table.push(['ACS', assertion_consumer_service_url])
         table.push(['Name Id Format', name_id_format])
+        table
       end
     end
 
     class Response
-      def build_body(table = [])
+      def build_table(table = [])
+        super(table)
         table.push(['Assertion Present?', assertion.present?])
         table.push(['Issuer', assertion.issuer])
         table.push(['Name Id', assertion.name_id])
@@ -37,21 +38,24 @@ module Saml
         table.push(['Encrypted?', assertion.encrypted?])
         table.push(['Decryptable', assertion.decryptable?])
         if assertion.present?
-          assertion.signature.build_header(table) if assertion.signature.present?
+          assertion.signature.build_table(table) if assertion.signature.present?
         end
+        table
       end
     end
 
     class LogoutRequest
-      def build_body(table = [])
+      def build_table(table = [])
+        super(table)
         table.push(['Name Id', name_id])
+        table
       end
     end
 
     class Metadata
-      def build_header(table = [])
+      def build_table(table = [])
         table.push(['Entity Id', entity_id])
-        table.push(['Type', send(:name)])
+        table.push(['Type', name])
         table.push(['Valid', valid?])
         table.push(['Name Id Formats', name_id_formats.inspect])
         table.push(['Organization', organization_name])
@@ -65,15 +69,13 @@ module Saml
         certificates.each do |certificate|
           table.push(['', certificate.x509.to_text])
         end
-        signature.build_header(table) if signature.present?
-      end
-
-      def build_body(table = [])
+        signature.build_table(table) if signature.present?
+        table
       end
     end
 
     class Signature
-      def build_header(table = [])
+      def build_table(table = [])
         table.push(['Digest Value', digest_value])
         table.push(['Expected Digest Value', expected_digest_value])
         table.push(['Digest Method', digest_method])
@@ -81,6 +83,7 @@ module Saml
         table.push(['Signature Method', signature_method])
         table.push(['Canonicalization Method', canonicalization_method])
         table.push(['', certificate.x509.to_text])
+        table
       end
 
       private
saml-kit-cli.gemspec
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
   spec.require_paths = ['lib']
   spec.required_ruby_version = '~> 2.2'
 
-  spec.add_dependency 'saml-kit', '1.0.12'
+  spec.add_dependency 'saml-kit', '1.0.14'
   spec.add_dependency 'thor', '~> 0.20'
   spec.add_development_dependency 'bundler', '~> 1.16'
   spec.add_development_dependency 'bundler-audit', '~> 0.6'