Sha256: a373e759bb930dab85b5821c74efffd4456438ad66d6610a80567a8d9d9b2061
Contents?: true
Size: 753 Bytes
Versions: 4
Compression:
Stored size: 753 Bytes
Contents
require "json-schema" require "json_matchers/payload" module JsonMatchers class Validator def initialize(options:, response:, schema_path:) @options = options.dup @payload = Payload.new(response).to_s @schema_path = schema_path.to_s end def validate! if recording_errors? validate_recording_errors else validate end end private attr_reader :options, :payload, :schema_path def recording_errors? options.fetch(:record_errors, false) end def validate_recording_errors JSON::Validator.fully_validate(schema_path, payload, options) end def validate JSON::Validator.validate!(schema_path, payload, options) [] end end end
Version data entries
4 entries across 4 versions & 1 rubygems