0
0
Fork 0

Validate nodeinfo response by schema (#21395)

* add json-schema to :test in Gemfile

* Create node_info_2.0_schema.json

* test match_response_schema

* Create match_response_schema.rb

* Update nodeinfo_controller_spec.rb

* Rename spec/support/node_info_2.0_schema.json to spec/support/schema/node_info_2.0_schema.json

* Update match_response_schema.rb

* cleanup

* additionally validate the json schema itself

disable throwing errors

test the schema matcher

* rename nodeinfo schema to nodeinfo_2.0

* use Rails.root.join to construct the path

* prettify json

* sync Gemfile.lock
This commit is contained in:
Meisam 2022-12-15 15:43:05 +01:00 committed by GitHub
parent f239d31f23
commit 6cdbc345f4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 184 additions and 2 deletions

View file

@ -0,0 +1,6 @@
RSpec::Matchers.define :match_json_schema do |schema|
match do |input_json|
schema_path = Rails.root.join('spec', 'support', 'schema', "#{schema}.json").to_s
JSON::Validator.validate(schema_path, input_json, validate_schema: true)
end
end