diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-10-09 12:06:19 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-10-09 12:06:19 +0300 |
commit | 3744bcc0d10d24104e39985b6833a0ec51791c0a (patch) | |
tree | ecad3a8435a74bd618acd591762906429f88bfd4 /spec | |
parent | 78adf0c5cc2534908e3f16a9b8abf06509444cf3 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/profiles_controller_spec.rb | 4 | ||||
-rw-r--r-- | spec/lib/gitlab/bare_repository_import/importer_spec.rb | 8 | ||||
-rw-r--r-- | spec/lib/gitlab/shell_spec.rb | 24 | ||||
-rw-r--r-- | spec/models/namespace_spec.rb | 4 | ||||
-rw-r--r-- | spec/models/project_spec.rb | 21 | ||||
-rw-r--r-- | spec/services/groups/destroy_service_spec.rb | 4 | ||||
-rw-r--r-- | spec/services/projects/destroy_service_spec.rb | 4 | ||||
-rw-r--r-- | spec/services/projects/hashed_storage/migrate_repository_service_spec.rb | 8 | ||||
-rw-r--r-- | spec/services/projects/hashed_storage/rollback_repository_service_spec.rb | 8 | ||||
-rw-r--r-- | spec/services/projects/transfer_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/users/destroy_service_spec.rb | 4 |
11 files changed, 63 insertions, 28 deletions
diff --git a/spec/controllers/profiles_controller_spec.rb b/spec/controllers/profiles_controller_spec.rb index 08681c0341a..eb479d9a0aa 100644 --- a/spec/controllers/profiles_controller_spec.rb +++ b/spec/controllers/profiles_controller_spec.rb @@ -153,7 +153,7 @@ describe ProfilesController, :request_store do user.reload expect(response.status).to eq(302) - expect(gitlab_shell.exists?(project.repository_storage, "#{new_username}/#{project.path}.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_username}/#{project.path}.git")).to be_truthy end end @@ -171,7 +171,7 @@ describe ProfilesController, :request_store do user.reload expect(response.status).to eq(302) - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be_truthy expect(before_disk_path).to eq(project.disk_path) end end diff --git a/spec/lib/gitlab/bare_repository_import/importer_spec.rb b/spec/lib/gitlab/bare_repository_import/importer_spec.rb index 0c1eedad7f4..2fb9f1a0a08 100644 --- a/spec/lib/gitlab/bare_repository_import/importer_spec.rb +++ b/spec/lib/gitlab/bare_repository_import/importer_spec.rb @@ -89,7 +89,7 @@ describe Gitlab::BareRepositoryImport::Importer, :seed_helper do repo_path = "#{project.disk_path}.git" hook_path = File.join(repo_path, 'hooks') - expect(gitlab_shell.exists?(project.repository_storage, repo_path)).to be(true) + expect(gitlab_shell.repository_exists?(project.repository_storage, repo_path)).to be(true) expect(gitlab_shell.exists?(project.repository_storage, hook_path)).to be(true) end @@ -145,8 +145,8 @@ describe Gitlab::BareRepositoryImport::Importer, :seed_helper do project = Project.find_by_full_path("#{admin.full_path}/#{project_path}") - expect(gitlab_shell.exists?(project.repository_storage, project.disk_path + '.git')).to be(true) - expect(gitlab_shell.exists?(project.repository_storage, project.disk_path + '.wiki.git')).to be(true) + expect(gitlab_shell.repository_exists?(project.repository_storage, project.disk_path + '.git')).to be(true) + expect(gitlab_shell.repository_exists?(project.repository_storage, project.disk_path + '.wiki.git')).to be(true) end context 'with a repository already on disk' do @@ -186,7 +186,7 @@ describe Gitlab::BareRepositoryImport::Importer, :seed_helper do project = Project.find_by_full_path(project_path) - expect(gitlab_shell.exists?(project.repository_storage, project.disk_path + '.wiki.git')).to be(true) + expect(gitlab_shell.repository_exists?(project.repository_storage, project.disk_path + '.wiki.git')).to be(true) end end diff --git a/spec/lib/gitlab/shell_spec.rb b/spec/lib/gitlab/shell_spec.rb index 55d8bac6c03..ff9e31ec346 100644 --- a/spec/lib/gitlab/shell_spec.rb +++ b/spec/lib/gitlab/shell_spec.rb @@ -422,6 +422,30 @@ describe Gitlab::Shell do end end + describe '#repository_exists?' do + context 'when the storage path does not exist' do + subject { described_class.new.repository_exists?(storage, "non-existing.git") } + + it { is_expected.to be_falsey } + end + + context 'when the repository does not exist' do + let(:project) { create(:project, :repository, :legacy_storage) } + + subject { described_class.new.repository_exists?(storage, "#{project.repository.disk_path}-some-other-repo.git") } + + it { is_expected.to be_falsey } + end + + context 'when the repository exists' do + let(:project) { create(:project, :repository, :legacy_storage) } + + subject { described_class.new.repository_exists?(storage, "#{project.repository.disk_path}.git") } + + it { is_expected.to be_truthy } + end + end + describe '#remove' do it 'removes the namespace' do subject.add_namespace(storage, "mepmep") diff --git a/spec/models/namespace_spec.rb b/spec/models/namespace_spec.rb index 93ad6008aec..1e06d0fd7b9 100644 --- a/spec/models/namespace_spec.rb +++ b/spec/models/namespace_spec.rb @@ -250,7 +250,7 @@ describe Namespace do it "moves dir if path changed" do namespace.update(path: namespace.full_path + '_new') - expect(gitlab_shell.exists?(project.repository_storage, "#{namespace.path}/#{project.path}.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{namespace.path}/#{project.path}.git")).to be_truthy end context 'when #write_projects_repository_config raises an error' do @@ -358,7 +358,7 @@ describe Namespace do namespace.update(path: namespace.full_path + '_new') expect(before_disk_path).to eq(project.disk_path) - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be_truthy end end diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb index d9936a62191..2870c55c7c6 100644 --- a/spec/models/project_spec.rb +++ b/spec/models/project_spec.rb @@ -4192,13 +4192,24 @@ describe Project do end describe '#check_repository_path_availability' do - let(:project) { build(:project) } + let(:project) { build(:project, :repository, :legacy_storage) } + subject { project.check_repository_path_availability } + + context 'when the repository already exists' do + let(:project) { create(:project, :repository, :legacy_storage) } - it 'skips gitlab-shell exists?' do - project.skip_disk_validation = true + it { is_expected.to be_falsey } + end - expect(project.gitlab_shell).not_to receive(:exists?) - expect(project.check_repository_path_availability).to be_truthy + context 'when the repository does not exist' do + it { is_expected.to be_truthy } + + it 'skips gitlab-shell exists?' do + project.skip_disk_validation = true + + expect(project.gitlab_shell).not_to receive(:repository_exists?) + is_expected.to be_truthy + end end end diff --git a/spec/services/groups/destroy_service_spec.rb b/spec/services/groups/destroy_service_spec.rb index b50a2db8bbe..d13739cefd9 100644 --- a/spec/services/groups/destroy_service_spec.rb +++ b/spec/services/groups/destroy_service_spec.rb @@ -119,7 +119,7 @@ describe Groups::DestroyService do let!(:project) { create(:project, :legacy_storage, :empty_repo, namespace: group) } it 'removes repository' do - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey end end @@ -127,7 +127,7 @@ describe Groups::DestroyService do let!(:project) { create(:project, :empty_repo, namespace: group) } it 'removes repository' do - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey end end end diff --git a/spec/services/projects/destroy_service_spec.rb b/spec/services/projects/destroy_service_spec.rb index 9a6f64b825a..2331281bd8e 100644 --- a/spec/services/projects/destroy_service_spec.rb +++ b/spec/services/projects/destroy_service_spec.rb @@ -24,8 +24,8 @@ describe Projects::DestroyService do it 'deletes the project' do expect(Project.unscoped.all).not_to include(project) - expect(project.gitlab_shell.exists?(project.repository_storage, path + '.git')).to be_falsey - expect(project.gitlab_shell.exists?(project.repository_storage, remove_path + '.git')).to be_falsey + expect(project.gitlab_shell.repository_exists?(project.repository_storage, path + '.git')).to be_falsey + expect(project.gitlab_shell.repository_exists?(project.repository_storage, remove_path + '.git')).to be_falsey end end diff --git a/spec/services/projects/hashed_storage/migrate_repository_service_spec.rb b/spec/services/projects/hashed_storage/migrate_repository_service_spec.rb index 5b778f16b5a..f81d9af01ea 100644 --- a/spec/services/projects/hashed_storage/migrate_repository_service_spec.rb +++ b/spec/services/projects/hashed_storage/migrate_repository_service_spec.rb @@ -48,8 +48,8 @@ describe Projects::HashedStorage::MigrateRepositoryService do it 'renames project and wiki repositories' do service.execute - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.git")).to be_truthy - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_truthy end it 'updates project to be hashed and not read-only' do @@ -84,8 +84,8 @@ describe Projects::HashedStorage::MigrateRepositoryService do service.execute - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.git")).to be_falsey - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_falsey expect(project.repository_read_only?).to be_falsey end diff --git a/spec/services/projects/hashed_storage/rollback_repository_service_spec.rb b/spec/services/projects/hashed_storage/rollback_repository_service_spec.rb index bd4354a7df3..48302e7a81b 100644 --- a/spec/services/projects/hashed_storage/rollback_repository_service_spec.rb +++ b/spec/services/projects/hashed_storage/rollback_repository_service_spec.rb @@ -48,8 +48,8 @@ describe Projects::HashedStorage::RollbackRepositoryService, :clean_gitlab_redis it 'renames project and wiki repositories' do service.execute - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.git")).to be_truthy - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.git")).to be_truthy + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_truthy end it 'updates project to be legacy and not read-only' do @@ -84,8 +84,8 @@ describe Projects::HashedStorage::RollbackRepositoryService, :clean_gitlab_redis service.execute - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.git")).to be_falsey - expect(gitlab_shell.exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{new_disk_path}.wiki.git")).to be_falsey expect(project.repository_read_only?).to be_falsey end diff --git a/spec/services/projects/transfer_service_spec.rb b/spec/services/projects/transfer_service_spec.rb index 6b906f9372c..26d8ac9b479 100644 --- a/spec/services/projects/transfer_service_spec.rb +++ b/spec/services/projects/transfer_service_spec.rb @@ -103,7 +103,7 @@ describe Projects::TransferService do it 'rolls back repo location' do attempt_project_transfer - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be(true) + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be(true) expect(original_path).to eq current_path end diff --git a/spec/services/users/destroy_service_spec.rb b/spec/services/users/destroy_service_spec.rb index 4a5f4509a7b..23a0c71175e 100644 --- a/spec/services/users/destroy_service_spec.rb +++ b/spec/services/users/destroy_service_spec.rb @@ -183,7 +183,7 @@ describe Users::DestroyService do let!(:project) { create(:project, :empty_repo, :legacy_storage, namespace: user.namespace) } it 'removes repository' do - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey end end @@ -191,7 +191,7 @@ describe Users::DestroyService do let!(:project) { create(:project, :empty_repo, namespace: user.namespace) } it 'removes repository' do - expect(gitlab_shell.exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey + expect(gitlab_shell.repository_exists?(project.repository_storage, "#{project.disk_path}.git")).to be_falsey end end end |