From 189c676fe08f4d5fb2b0daf167d0934d39c4c135 Mon Sep 17 00:00:00 2001 From: Steve Azzopardi Date: Mon, 29 Oct 2018 18:18:42 +0100 Subject: Add JSON schema for EnvironmentsController::index Add missing JSON schema validation in spec. --- .../projects/environments_controller_spec.rb | 4 ++++ spec/fixtures/api/schemas/environments.json | 23 ++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 spec/fixtures/api/schemas/environments.json diff --git a/spec/controllers/projects/environments_controller_spec.rb b/spec/controllers/projects/environments_controller_spec.rb index b86029a4baf..d389dbb50e5 100644 --- a/spec/controllers/projects/environments_controller_spec.rb +++ b/spec/controllers/projects/environments_controller_spec.rb @@ -69,6 +69,10 @@ describe Projects::EnvironmentsController do expect(response).to have_gitlab_http_status(:ok) expect(response.headers['Poll-Interval']).to eq("3000") end + + it 'matches json schema' do + expect(response).to match_response_schema('environments') + end end context 'when requesting stopped environments scope' do diff --git a/spec/fixtures/api/schemas/environments.json b/spec/fixtures/api/schemas/environments.json new file mode 100644 index 00000000000..29a5d23b219 --- /dev/null +++ b/spec/fixtures/api/schemas/environments.json @@ -0,0 +1,23 @@ +{ + "types": "object", + "required": [ + "environments", + "available_count", + "stopped_count" + ], + "properties": { + "environments": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { "type": "string" }, + "size": { "type": "integer"}, + "latest": { "$ref": "environment.json"} + } + } + }, + "available_count": { "type": "integer" }, + "stopped_count": { "type": "integer" } + } +} -- cgit v1.2.1