summaryrefslogtreecommitdiff
path: root/spec/controllers/projects/environments_controller_spec.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-07-21 12:09:35 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2021-07-21 12:09:35 +0000
commit7e5b78ee035a9cb43c65c029e4305ff7357b07d2 (patch)
treeb6d57d9674d97eb1fa22110a855b32682de22ef3 /spec/controllers/projects/environments_controller_spec.rb
parentea53c9c3c316a6eeb33da670e1e5bcbc39c6c79c (diff)
downloadgitlab-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.rb25
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,