Sha256: ca40ee5879892abc17c9f04fedce0617e325573a9300b2feb81ca4f143a5d17d

Contents?: true

Size: 765 Bytes

Versions: 8

Compression:

Stored size: 765 Bytes

Contents

# frozen_string_literal: true

module Saml
  module Kit
    # This module is responsible for validating
    # xml documents against the SAML XSD's
    module XsdValidatable
      PROTOCOL_XSD = File.expand_path(
        '../xsd/saml-schema-protocol-2.0.xsd', File.dirname(__FILE__)
      ).freeze

      METADATA_XSD = File.expand_path(
        '../xsd/saml-schema-metadata-2.0.xsd', File.dirname(__FILE__)
      ).freeze

      # @!visibility private
      def matches_xsd?(xsd)
        return unless to_nokogiri.present?

        Dir.chdir(File.dirname(xsd)) do
          xsd = Nokogiri::XML::Schema(IO.read(xsd))
          xsd.validate(to_nokogiri).each do |error|
            errors[:base] << error.message
          end
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
saml-kit-1.0.23 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.22 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.21 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.20 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.19 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.18 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.17 lib/saml/kit/concerns/xsd_validatable.rb
saml-kit-1.0.16 lib/saml/kit/concerns/xsd_validatable.rb