diff options
author | Z.J. van de Weg <git@zjvandeweg.nl> | 2017-08-01 14:34:11 +0200 |
---|---|---|
committer | Z.J. van de Weg <git@zjvandeweg.nl> | 2017-08-01 14:36:42 +0200 |
commit | 3baf3dc955dfaad2961bba548dab940b55dfa68e (patch) | |
tree | da2800408de827b68899e402495f4020bc6b4e40 /spec | |
parent | a853d3e944abb7a6d60ea24381028020166760d1 (diff) | |
download | gitlab-ce-3baf3dc955dfaad2961bba548dab940b55dfa68e.tar.gz |
Rename GitLabProjectImporterService and misc fixes
First round of review, main changes:
- templates.title is human readable, #name will be passed around
- GitLabProjectImporterService has been renamed
Diffstat (limited to 'spec')
-rw-r--r-- | spec/features/projects_spec.rb | 6 | ||||
-rw-r--r-- | spec/lib/gitlab/project_template_spec.rb | 19 | ||||
-rw-r--r-- | spec/services/projects/create_from_template_service_spec.rb | 2 |
3 files changed, 21 insertions, 6 deletions
diff --git a/spec/features/projects_spec.rb b/spec/features/projects_spec.rb index ab5042490ae..9385778e0cb 100644 --- a/spec/features/projects_spec.rb +++ b/spec/features/projects_spec.rb @@ -10,15 +10,15 @@ feature 'Project', feature: true do visit new_project_path end - it "allows creation from the #{template.name} template" do - fill_in("project_template_title", with: template.title) + it "allows creation from templates" do + fill_in("project_template_name", with: template.title) fill_in("project_path", with: template.name) page.within '#content-body' do click_button "Create project" end - expect(page).to have_content 'Import' + expect(page).to have_content 'Import in progress' end end diff --git a/spec/lib/gitlab/project_template_spec.rb b/spec/lib/gitlab/project_template_spec.rb index d95dab748fe..0f68e87a41a 100644 --- a/spec/lib/gitlab/project_template_spec.rb +++ b/spec/lib/gitlab/project_template_spec.rb @@ -35,13 +35,28 @@ describe Gitlab::ProjectTemplate do end describe 'validate all templates' do + set(:admin) { create(:admin) } + described_class.all.each do |template| it "#{template.name} has a valid archive" do archive = template.archive_path - logo = Rails.root.join("app/assets/images/#{template.logo_path}") expect(File.exist?(archive)).to be(true) - expect(File.exist?(logo)).to be(true) + end + + context 'with valid parameters' do + it 'can be imported' do + params = { + template_name: template.name, + namespace_id: admin.namespace.id, + path: template.name + } + + project = Projects::CreateFromTemplateService.new(admin, params).execute + + expect(project).to be_valid + expect(project).to be_persisted + end end end end diff --git a/spec/services/projects/create_from_template_service_spec.rb b/spec/services/projects/create_from_template_service_spec.rb index 81e88c0862d..9125b5bf161 100644 --- a/spec/services/projects/create_from_template_service_spec.rb +++ b/spec/services/projects/create_from_template_service_spec.rb @@ -12,7 +12,7 @@ describe Projects::CreateFromTemplateService do subject { described_class.new(user, project_params) } it 'calls the importer service' do - expect_any_instance_of(Projects::GitlabProjectsImporterService).to receive(:execute) + expect_any_instance_of(Projects::GitlabProjectsImportService).to receive(:execute) subject.execute end |