Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/services/projects/create_service_spec.rb')
-rw-r--r--spec/services/projects/create_service_spec.rb26
1 files changed, 20 insertions, 6 deletions
diff --git a/spec/services/projects/create_service_spec.rb b/spec/services/projects/create_service_spec.rb
index cd1e629e1d2..59dee209ff9 100644
--- a/spec/services/projects/create_service_spec.rb
+++ b/spec/services/projects/create_service_spec.rb
@@ -152,6 +152,20 @@ RSpec.describe Projects::CreateService, '#execute' do
create_project(user, opts)
end
+
+ it 'publishes a ProjectCreatedEvent' do
+ group = create(:group, :nested).tap do |group|
+ group.add_owner(user)
+ end
+
+ expect { create_project(user, name: 'Project', path: 'project', namespace_id: group.id) }
+ .to publish_event(Projects::ProjectCreatedEvent)
+ .with(
+ project_id: kind_of(Numeric),
+ namespace_id: group.id,
+ root_namespace_id: group.parent_id
+ )
+ end
end
context "admin creates project with other user's namespace_id" do
@@ -543,15 +557,15 @@ RSpec.describe Projects::CreateService, '#execute' do
end
context 'with legacy storage' do
- let(:fake_repo_path) { File.join(TestEnv.repos_path, user.namespace.full_path, 'existing.git') }
+ let(:raw_fake_repo) { Gitlab::Git::Repository.new('default', File.join(user.namespace.full_path, 'existing.git'), nil, nil) }
before do
stub_application_setting(hashed_storage_enabled: false)
- TestEnv.create_bare_repository(fake_repo_path)
+ raw_fake_repo.create_repository
end
after do
- FileUtils.rm_rf(fake_repo_path)
+ raw_fake_repo.remove
end
it 'does not allow to create a project when path matches existing repository on disk' do
@@ -578,15 +592,15 @@ RSpec.describe Projects::CreateService, '#execute' do
context 'with hashed storage' do
let(:hash) { '6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b' }
let(:hashed_path) { '@hashed/6b/86/6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b' }
- let(:fake_repo_path) { File.join(TestEnv.repos_path, "#{hashed_path}.git") }
+ let(:raw_fake_repo) { Gitlab::Git::Repository.new('default', "#{hashed_path}.git", nil, nil) }
before do
allow(Digest::SHA2).to receive(:hexdigest) { hash }
- TestEnv.create_bare_repository(fake_repo_path)
+ raw_fake_repo.create_repository
end
after do
- FileUtils.rm_rf(fake_repo_path)
+ raw_fake_repo.remove
end
it 'does not allow to create a project when path matches existing repository on disk' do