discourse/plugins/chat/spec/support/api_schema_matcher.rb
Roman Rizzi 0a5f548635
DEV: Move discourse-chat to the core repo. (#18776)
As part of this move, we are also renaming `discourse-chat` to `chat`.
2022-11-02 10:41:30 -03:00

17 lines
474 B
Ruby

# frozen_string_literal: true
RSpec::Matchers.define :match_response_schema do |schema|
match do |object|
schema_directory = "#{Dir.pwd}/plugins/chat/spec/support/api/schemas"
schema_path = "#{schema_directory}/#{schema}.json"
begin
JSON::Validator.validate!(schema_path, object, strict: true)
rescue JSON::Schema::ValidationError => e
puts "-- Printing response body after validation error\n"
pp object
raise e
end
end
end