diff options
Diffstat (limited to 'spec/controllers/projects/tree_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/tree_controller_spec.rb | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/spec/controllers/projects/tree_controller_spec.rb b/spec/controllers/projects/tree_controller_spec.rb index 8e4e275bdbe..143516e4712 100644 --- a/spec/controllers/projects/tree_controller_spec.rb +++ b/spec/controllers/projects/tree_controller_spec.rb @@ -3,8 +3,9 @@ require 'spec_helper' RSpec.describe Projects::TreeController do - let(:project) { create(:project, :repository) } - let(:user) { create(:user) } + let(:project) { create(:project, :repository, previous_default_branch: previous_default_branch) } + let(:previous_default_branch) { nil } + let(:user) { create(:user) } before do sign_in(user) @@ -55,6 +56,20 @@ RSpec.describe Projects::TreeController do it { is_expected.to respond_with(:not_found) } end + context "renamed default branch, valid file" do + let(:id) { 'old-default-branch/encoding/' } + let(:previous_default_branch) { 'old-default-branch' } + + it { is_expected.to redirect_to("/#{project.full_path}/-/tree/#{project.default_branch}/encoding/") } + end + + context "renamed default branch, invalid file" do + let(:id) { 'old-default-branch/invalid-path/' } + let(:previous_default_branch) { 'old-default-branch' } + + it { is_expected.to redirect_to("/#{project.full_path}/-/tree/#{project.default_branch}/invalid-path/") } + end + context "valid empty branch, invalid path" do let(:id) { 'empty-branch/invalid-path/' } |