summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorblackst0ne <blackst0ne.ru@gmail.com>2017-06-21 21:45:43 +1100
committerblackst0ne <blackst0ne.ru@gmail.com>2017-06-21 21:45:43 +1100
commit665fea379bbf9f31598d237335bc8d6e54ac8947 (patch)
tree5264965523d2cec5ef89218bbb60feb6b9bc9299
parent4b0b2f1525be5feac0ae0953eb573ff24cc7b9c5 (diff)
downloadgitlab-ce-665fea379bbf9f31598d237335bc8d6e54ac8947.tar.gz
Replace 'create.feature' spinach test with an rspec analog
-rw-r--r--changelogs/unreleased/replase_spinach_spec_create-feature.yml4
-rw-r--r--features/project/create.feature14
-rw-r--r--spec/features/projects/user_creates_project_spec.rb27
3 files changed, 31 insertions, 14 deletions
diff --git a/changelogs/unreleased/replase_spinach_spec_create-feature.yml b/changelogs/unreleased/replase_spinach_spec_create-feature.yml
new file mode 100644
index 00000000000..0613d195d56
--- /dev/null
+++ b/changelogs/unreleased/replase_spinach_spec_create-feature.yml
@@ -0,0 +1,4 @@
+---
+title: Replace 'create.feature' spinach test with an rspec analog
+merge_request: 12343
+author: @blackst0ne
diff --git a/features/project/create.feature b/features/project/create.feature
deleted file mode 100644
index 67336d73bf7..00000000000
--- a/features/project/create.feature
+++ /dev/null
@@ -1,14 +0,0 @@
-@project-create
-Feature: Project Create
- In order to get access to project sections
- A user with ability to create a project
- Should be able to create a new one
-
- @javascript
- Scenario: User create a project
- Given I sign in as a user
- And I have an ssh key
- When I visit new project page
- And fill project form with valid data
- Then I should see project page
- And I should see empty project instructions
diff --git a/spec/features/projects/user_creates_project_spec.rb b/spec/features/projects/user_creates_project_spec.rb
new file mode 100644
index 00000000000..29f1eb8d73e
--- /dev/null
+++ b/spec/features/projects/user_creates_project_spec.rb
@@ -0,0 +1,27 @@
+require 'spec_helper'
+
+feature 'User creates a project', js: true do
+ let(:user) { create(:user) }
+
+ before do
+ sign_in(user)
+ create(:personal_key, user: user)
+ visit(new_project_path)
+ end
+
+ it 'creates a new project' do
+ fill_in(:project_path, with: 'Empty')
+
+ page.within('#content-body') do
+ click_button('Create project')
+ end
+
+ project = Project.last
+
+ expect(current_path).to eq(namespace_project_path(project.namespace, project))
+ expect(page).to have_content('Empty')
+ expect(page).to have_content('git init')
+ expect(page).to have_content('git remote')
+ expect(page).to have_content(project.url_to_repo)
+ end
+end