diff options
author | Kamil Trzcinski <ayufan@ayufan.eu> | 2015-12-18 14:40:34 +0300 |
---|---|---|
committer | James Edwards-Jones <jedwardsjones@gitlab.com> | 2017-02-01 01:53:56 +0300 |
commit | 2c2447771f098f7c8d692e7318d8f822df468b48 (patch) | |
tree | 30bc13a97c0862377626cb62a240a8408bae328b /spec/lib/gitlab/project_transfer_spec.rb | |
parent | 4afab3d4b64bf4aac228306636bb1b477debe8ce (diff) |
Rename pages namespace or project path when changed
- Move UploadsTransfer to ProjectTransfer and inherit from this to UploadsTransfer and PagesTransfer
Diffstat (limited to 'spec/lib/gitlab/project_transfer_spec.rb')
-rw-r--r-- | spec/lib/gitlab/project_transfer_spec.rb | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/spec/lib/gitlab/project_transfer_spec.rb b/spec/lib/gitlab/project_transfer_spec.rb new file mode 100644 index 00000000000..e2d6b1b9ab7 --- /dev/null +++ b/spec/lib/gitlab/project_transfer_spec.rb @@ -0,0 +1,51 @@ +require 'spec_helper' + +describe Gitlab::ProjectTransfer, lib: true do + before do + @root_dir = File.join(Rails.root, "public", "uploads") + @project_transfer = Gitlab::ProjectTransfer.new + allow(@project_transfer).to receive(:root_dir).and_return(@root_dir) + + @project_path_was = "test_project_was" + @project_path = "test_project" + @namespace_path_was = "test_namespace_was" + @namespace_path = "test_namespace" + end + + after do + FileUtils.rm_rf([ + File.join(@root_dir, @namespace_path), + File.join(@root_dir, @namespace_path_was) + ]) + end + + describe '#move_project' do + it "moves project upload to another namespace" do + FileUtils.mkdir_p(File.join(@root_dir, @namespace_path_was, @project_path)) + @project_transfer.move_project(@project_path, @namespace_path_was, @namespace_path) + + expected_path = File.join(@root_dir, @namespace_path, @project_path) + expect(Dir.exist?(expected_path)).to be_truthy + end + end + + describe '#rename_project' do + it "renames project" do + FileUtils.mkdir_p(File.join(@root_dir, @namespace_path, @project_path_was)) + @project_transfer.rename_project(@project_path_was, @project_path, @namespace_path) + + expected_path = File.join(@root_dir, @namespace_path, @project_path) + expect(Dir.exist?(expected_path)).to be_truthy + end + end + + describe '#rename_namespace' do + it "renames namespace" do + FileUtils.mkdir_p(File.join(@root_dir, @namespace_path_was, @project_path)) + @project_transfer.rename_namespace(@namespace_path_was, @namespace_path) + + expected_path = File.join(@root_dir, @namespace_path, @project_path) + expect(Dir.exist?(expected_path)).to be_truthy + end + end +end |