diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-07-21 12:09:35 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-07-21 12:09:35 +0000 |
commit | 7e5b78ee035a9cb43c65c029e4305ff7357b07d2 (patch) | |
tree | b6d57d9674d97eb1fa22110a855b32682de22ef3 /spec/controllers/projects/environments_controller_spec.rb | |
parent | ea53c9c3c316a6eeb33da670e1e5bcbc39c6c79c (diff) | |
download | gitlab-ce-7e5b78ee035a9cb43c65c029e4305ff7357b07d2.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/controllers/projects/environments_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/environments_controller_spec.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/controllers/projects/environments_controller_spec.rb b/spec/controllers/projects/environments_controller_spec.rb index 4cb90edb742..fc7bb63bd11 100644 --- a/spec/controllers/projects/environments_controller_spec.rb +++ b/spec/controllers/projects/environments_controller_spec.rb @@ -786,6 +786,31 @@ RSpec.describe Projects::EnvironmentsController do end end + describe 'POST #create' do + subject { post :create, params: params } + + context "when environment params are valid" do + let(:params) { { namespace_id: project.namespace, project_id: project, environment: { name: 'foo', external_url: 'https://foo.example.com' } } } + + it 'returns ok and the path to the newly created environment' do + subject + + expect(response).to have_gitlab_http_status(:ok) + expect(json_response['path']).to eq("/#{project.full_path}/-/environments/#{json_response['environment']['id']}") + end + end + + context "when environment params are invalid" do + let(:params) { { namespace_id: project.namespace, project_id: project, environment: { name: 'foo/', external_url: '/foo.example.com' } } } + + it 'returns bad request' do + subject + + expect(response).to have_gitlab_http_status(:bad_request) + end + end + end + def environment_params(opts = {}) opts.reverse_merge(namespace_id: project.namespace, project_id: project, |