diff options
Diffstat (limited to 'features/steps/dashboard/merge_requests.rb')
-rw-r--r-- | features/steps/dashboard/merge_requests.rb | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/features/steps/dashboard/merge_requests.rb b/features/steps/dashboard/merge_requests.rb new file mode 100644 index 00000000000..62d84506c49 --- /dev/null +++ b/features/steps/dashboard/merge_requests.rb @@ -0,0 +1,74 @@ +class DashboardMergeRequests < Spinach::FeatureSteps + include SharedAuthentication + include SharedPaths + + step 'I should see merge requests assigned to me' do + should_see(assigned_merge_request) + should_not_see(authored_merge_request) + should_not_see(other_merge_request) + end + + step 'I should see merge requests authored by me' do + should_see(authored_merge_request) + should_not_see(assigned_merge_request) + should_not_see(other_merge_request) + end + + step 'I should see all merge requests' do + should_see(authored_merge_request) + should_see(assigned_merge_request) + should_see(other_merge_request) + end + + step 'I have authored merge requests' do + authored_merge_request + end + + step 'I have assigned merge requests' do + assigned_merge_request + end + + step 'I have other merge requests' do + other_merge_request + end + + step 'I click "Authored by me" link' do + within ".scope-filter" do + click_link 'Created by me' + end + end + + step 'I click "All" link' do + within ".scope-filter" do + click_link "Everyone's" + end + end + + def should_see(merge_request) + page.should have_content(merge_request.title[0..10]) + end + + def should_not_see(merge_request) + page.should_not have_content(merge_request.title[0..10]) + end + + def assigned_merge_request + @assigned_merge_request ||= create :merge_request, assignee: current_user, target_project: project + end + + def authored_merge_request + @authored_merge_request ||= create :merge_request, author: current_user, target_project: project + end + + def other_merge_request + @other_merge_request ||= create :merge_request, target_project: project + end + + def project + @project ||= begin + project =create :project + project.team << [current_user, :master] + project + end + end +end |