summaryrefslogtreecommitdiff
path: root/spec/models/environment_spec.rb
diff options
context:
space:
mode:
authorStan Hu <stanhu@gmail.com>2017-10-23 03:57:51 +0300
committerStan Hu <stanhu@gmail.com>2017-10-23 04:15:26 +0300
commit3bff85a4f659438edbbc486a0b3c32ff589ab299 (patch)
tree8132af0cb2f83ffea9b37a8d841cc1e35ae789b7 /spec/models/environment_spec.rb
parent40ded704cc9b535bee9afd45512d52173c3fc0e7 (diff)
downloadgitlab-ce-sh-fix-environment-write-ref.tar.gz
Fix the writing of invalid environment refssh-fix-environment-write-ref
Environment names that contained a space would cause an error in GitLab 10.1 because a new guard clause was introduced in Repository#write_ref to prevent such references from existing. Use the slug instead to ensure that the name is valid. Closes #39182
Diffstat (limited to 'spec/models/environment_spec.rb')
-rw-r--r--spec/models/environment_spec.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/spec/models/environment_spec.rb b/spec/models/environment_spec.rb
index 25e5d155894..e1be23541e8 100644
--- a/spec/models/environment_spec.rb
+++ b/spec/models/environment_spec.rb
@@ -575,6 +575,16 @@ describe Environment do
end
end
+ describe '#ref_path' do
+ subject(:environment) do
+ create(:environment, name: 'staging / review-1')
+ end
+
+ it 'returns a path that uses the slug and does not have spaces' do
+ expect(environment.ref_path).to start_with('refs/environments/staging-review-1-')
+ end
+ end
+
describe '#external_url_for' do
let(:source_path) { 'source/file.html' }
let(:sha) { RepoHelpers.sample_commit.id }