diff options
author | Stan Hu <stanhu@gmail.com> | 2015-08-01 23:33:33 -0700 |
---|---|---|
committer | Stan Hu <stanhu@gmail.com> | 2015-08-01 23:33:33 -0700 |
commit | 208e07fe6f4f5954f01462be6d5b595ec8d2fedf (patch) | |
tree | 3ff00259736ecaf6b5a07df7ec2119b4eafdba2c /spec | |
parent | bdb4288ab82bab14619fe817020e90e48a97e1d4 (diff) | |
download | gitlab-ce-208e07fe6f4f5954f01462be6d5b595ec8d2fedf.tar.gz |
Fix errors deleting and creating branches with encoded slashes
Closes #1804
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/branches_controller_spec.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/controllers/branches_controller_spec.rb b/spec/controllers/branches_controller_spec.rb index bd4c946b64b..8e06d4bdc77 100644 --- a/spec/controllers/branches_controller_spec.rb +++ b/spec/controllers/branches_controller_spec.rb @@ -54,6 +54,13 @@ describe Projects::BranchesController do let(:ref) { "<script>alert('ref');</script>" } it { is_expected.to render_template('new') } end + + context "valid branch name with encoded slashes" do + let(:branch) { "feature%2Ftest" } + let(:ref) { "<script>alert('ref');</script>" } + it { is_expected.to render_template('new') } + it { project.repository.branch_names.include?('feature/test')} + end end describe "POST destroy" do @@ -74,6 +81,19 @@ describe Projects::BranchesController do it { expect(subject).to render_template('destroy') } end + context "valid branch name with unencoded slashes" do + let(:branch) { "improve/awesome" } + + it { expect(response.status).to eq(200) } + it { expect(subject).to render_template('destroy') } + end + + context "valid branch name with encoded slashes" do + let(:branch) { "improve%2Fawesome" } + + it { expect(response.status).to eq(200) } + it { expect(subject).to render_template('destroy') } + end context "invalid branch name, valid ref" do let(:branch) { "no-branch" } |