summaryrefslogtreecommitdiff
path: root/features
diff options
context:
space:
mode:
Diffstat (limited to 'features')
-rw-r--r--features/group/members.feature12
-rw-r--r--features/group/milestones.feature48
-rw-r--r--features/steps/group/members.rb15
-rw-r--r--features/steps/group/milestones.rb135
-rw-r--r--features/support/env.rb7
5 files changed, 4 insertions, 213 deletions
diff --git a/features/group/members.feature b/features/group/members.feature
deleted file mode 100644
index 49a44f57cbb..00000000000
--- a/features/group/members.feature
+++ /dev/null
@@ -1,12 +0,0 @@
-Feature: Group Members
- Background:
- Given I sign in as "John Doe"
- And "John Doe" is owner of group "Owned"
- And "John Doe" is guest of group "Guest"
-
- Scenario: Search member by name
- Given "Mary Jane" is guest of group "Guest"
- And I visit group "Guest" members page
- When I search for 'Mary' member
- Then I should see user "Mary Jane" in team list
- Then I should not see user "John Doe" in team list
diff --git a/features/group/milestones.feature b/features/group/milestones.feature
deleted file mode 100644
index 2211acfee20..00000000000
--- a/features/group/milestones.feature
+++ /dev/null
@@ -1,48 +0,0 @@
-Feature: Group Milestones
- Background:
- Given I sign in as "John Doe"
- And "John Doe" is owner of group "Owned"
-
- Scenario: I should see group "Owned" milestone index page with no milestones
- When I visit group "Owned" page
- And I click on group milestones
- Then I should see group milestones index page has no milestones
-
- Scenario: I should see group "Owned" milestone index page with milestones
- Given Group has projects with milestones
- When I visit group "Owned" page
- And I click on group milestones
- Then I should see group milestones index page with milestones
-
- Scenario: I should see group "Owned" milestone show page
- Given Group has projects with milestones
- When I visit group "Owned" page
- And I click on group milestones
- And I click on one group milestone
- Then I should see group milestone with descriptions and expiry date
- And I should see group milestone with all issues and MRs assigned to that milestone
-
- Scenario: Create group milestones
- Given I visit group "Owned" milestones page
- And I click new milestone button
- And I fill milestone name
- When I press create mileston button
- Then group milestone should be created
-
- Scenario: I should see Issues listed with labels
- Given Group has projects with milestones
- When I visit group "Owned" page
- And I click on group milestones
- And I click on one group milestone
- Then I should see the "bug" label
- And I should see the "feature" label
- And I should see the project name in the Issue row
-
- @javascript
- Scenario: I should see the Labels tab
- Given Group has projects with milestones
- When I visit group "Owned" page
- And I click on group milestones
- And I click on one group milestone
- And I click on the "Labels" tab
- Then I should see the list of labels
diff --git a/features/steps/group/members.rb b/features/steps/group/members.rb
index 0ab1012660c..97bcca7730b 100644
--- a/features/steps/group/members.rb
+++ b/features/steps/group/members.rb
@@ -9,14 +9,6 @@ class Spinach::Features::GroupMembers < Spinach::FeatureSteps
expect(group_members_list).to have_content("John Doe")
end
- step 'I should not see user "John Doe" in team list' do
- expect(group_members_list).not_to have_content("John Doe")
- end
-
- step 'I should see user "Mary Jane" in team list' do
- expect(group_members_list).to have_content("Mary Jane")
- end
-
step 'I should not see user "Mary Jane" in team list' do
expect(group_members_list).not_to have_content("Mary Jane")
end
@@ -41,13 +33,6 @@ class Spinach::Features::GroupMembers < Spinach::FeatureSteps
# poltergeist always confirms popups.
end
- step 'I search for \'Mary\' member' do
- page.within '.member-search-form' do
- fill_in 'search', with: 'Mary'
- find('.member-search-btn').click
- end
- end
-
step 'I change the "Mary Jane" role to "Developer"' do
member = mary_jane_member
diff --git a/features/steps/group/milestones.rb b/features/steps/group/milestones.rb
deleted file mode 100644
index 818bbb50d0e..00000000000
--- a/features/steps/group/milestones.rb
+++ /dev/null
@@ -1,135 +0,0 @@
-class Spinach::Features::GroupMilestones < Spinach::FeatureSteps
- include WaitForRequests
- include SharedAuthentication
- include SharedPaths
- include SharedGroup
- include SharedUser
-
- step 'I click on group milestones' do
- visit group_milestones_path('owned')
- end
-
- step 'I should see group milestones index page has no milestones' do
- expect(page).to have_content('No milestones to show')
- end
-
- step 'Group has projects with milestones' do
- group_milestone
- end
-
- step 'I should see group milestones index page with milestones' do
- expect(page).to have_content('Version 7.2')
- expect(page).to have_content('GL-113')
- expect(page).to have_link('3 Issues', href: issues_group_path("owned", milestone_title: "Version 7.2"))
- expect(page).to have_link('0 Merge Requests', href: merge_requests_group_path("owned", milestone_title: "GL-113"))
- end
-
- step 'I click on one group milestone' do
- milestones = Milestone.where(title: 'GL-113')
- @global_milestone = GlobalMilestone.new('GL-113', milestones)
-
- click_link 'GL-113'
- end
-
- step 'I should see group milestone with descriptions and expiry date' do
- expect(page).to have_content('expires on Aug 20, 2114')
- end
-
- step 'I should see group milestone with all issues and MRs assigned to that milestone' do
- expect(page).to have_content('Milestone GL-113')
- expect(page).to have_content('Issues 3 Open: 3 Closed: 0')
- issue = Milestone.find_by(name: 'GL-113').issues.first
- expect(page).to have_link(issue.title, href: project_issue_path(issue.project, issue))
- end
-
- step 'I fill milestone name' do
- fill_in 'milestone_title', with: 'v2.9.0'
- end
-
- step 'I click new milestone button' do
- page.within('.nav-controls') do
- click_link "New milestone"
- end
- end
-
- step 'I press create mileston button' do
- click_button "Create milestone"
- end
-
- step 'group milestone should be created' do
- group = Group.find_by(name: 'Owned')
- expect(page).to have_content group.milestones.find_by_title('v2.9.0').title
- end
-
- step 'I should see the "bug" label' do
- page.within('#tab-issues') do
- expect(page).to have_content 'bug'
- end
- end
-
- step 'I should see the "feature" label' do
- page.within('#tab-issues') do
- expect(page).to have_content 'bug'
- end
- end
-
- step 'I should see the project name in the Issue row' do
- page.within('#tab-issues') do
- @global_milestone.projects.each do |project|
- expect(page).to have_content project.name
- end
- end
- end
-
- step 'I click on the "Labels" tab' do
- page.within('.content .nav-links') do
- page.find(:xpath, "//a[@href='#tab-labels']").click
- end
- end
-
- step 'I should see the list of labels' do
- wait_for_requests
-
- page.within('#tab-labels') do
- expect(page).to have_content 'bug'
- expect(page).to have_content 'feature'
- end
- end
-
- private
-
- def group_milestone
- group = owned_group
-
- %w(gitlabhq gitlab-ci cookbook-gitlab).each do |path|
- project = create(:project, path: path, group: group)
- milestone = create :milestone, title: "Version 7.2", project: project
-
- create(:label, project: project, title: 'bug')
- create(:label, project: project, title: 'feature')
-
- create :issue,
- project: project,
- assignees: [current_user],
- author: current_user,
- milestone: milestone
-
- milestone = create :milestone,
- title: "GL-113",
- project: project,
- due_date: '2114-08-20',
- description: 'Lorem Ipsum is simply dummy text'
-
- issue = create :issue,
- project: project,
- assignees: [current_user],
- author: current_user,
- milestone: milestone
-
- issue.labels << project.labels.find_by(title: 'bug')
- issue.labels << project.labels.find_by(title: 'feature')
- end
-
- current_user.refresh_authorized_projects
- end
-end
diff --git a/features/support/env.rb b/features/support/env.rb
index 7f5b4c1c11b..15211995918 100644
--- a/features/support/env.rb
+++ b/features/support/env.rb
@@ -20,15 +20,16 @@ Dir["#{Rails.root}/features/steps/shared/*.rb"].each { |file| require file }
Spinach.hooks.before_run do
include RSpec::Mocks::ExampleMethods
+ include ActiveJob::TestHelper
+ include FactoryBot::Syntax::Methods
+ include GitlabRoutingHelper
+
RSpec::Mocks.setup
TestEnv.init(mailer: false)
# skip pre-receive hook check so we can use
# web editor and merge
TestEnv.disable_pre_receive
-
- include FactoryBot::Syntax::Methods
- include GitlabRoutingHelper
end
Spinach.hooks.after_scenario do |scenario_data, step_definitions|