match-json-schema
match_json_schema compliant with JSON Schema Draft 4.
Usage
RSpec.describe UsersController, type: :controller do
describe 'GET #show' do
let(:user) { User.create!(name: :kurou) }
specify do
get :show, params: {id: user.id, format: :json}
schema = {
type: :object,
required: %i(id name created_at updated_at),
properties: {
id: {type: :integer},
name: {type: :string},
created_at: {type: :string},
updated_at: {type: :string}
}
}
expect(response).to match_json_schema(schema)
end
end
end