diff options
author | Vitaliy @blackst0ne Klachkov <blackst0ne.ru@gmail.com> | 2017-11-15 07:23:09 +0300 |
---|---|---|
committer | Vitaliy @blackst0ne Klachkov <blackst0ne.ru@gmail.com> | 2017-11-15 07:23:09 +0300 |
commit | 0d75ea3a83a2f95e1710bdca981410746e3e11a7 (patch) | |
tree | 2b021857f5ff3faa134caed7a4d72b4e5534bd45 | |
parent | 09abd9a185f21666401c338d52754544eb75a59f (diff) |
Spec init refactoring
-rw-r--r-- | spec/features/issues/user_creates_branch_and_merge_request_spec.rb (renamed from spec/features/issues/create_branch_merge_request_spec.rb) | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/spec/features/issues/create_branch_merge_request_spec.rb b/spec/features/issues/user_creates_branch_and_merge_request_spec.rb index edea95c6699..0e200b952c4 100644 --- a/spec/features/issues/create_branch_merge_request_spec.rb +++ b/spec/features/issues/user_creates_branch_and_merge_request_spec.rb @@ -1,13 +1,24 @@ require 'rails_helper' -feature 'Create Branch/Merge Request Dropdown on issue page', :feature, :js do +describe 'User creates branch and merge request on issue page', :js do let(:user) { create(:user) } let!(:project) { create(:project, :repository) } let(:issue) { create(:issue, project: project, title: 'Cherry-Coloured Funk') } - context 'for team members' do + context 'when signed out' do before do - project.team << [user, :developer] + visit project_issue_path(project, issue) + end + + it "doesn't show 'Create merge request' button" do + expect(page).not_to have_selector('.create-mr-dropdown-wrap') + end + end + + context 'when signed in' do + before do + project.add_developer(user) + sign_in(user) end @@ -72,15 +83,15 @@ feature 'Create Branch/Merge Request Dropdown on issue page', :feature, :js do end it 'shows only create branch button' do - expect(page).not_to have_button('Create a merge request') - expect(page).to have_button('Create a branch') + expect(page).not_to have_button('Create merge request') + expect(page).to have_button('Create branch') end end context 'when issue is confidential' do - it 'disables the create branch button' do - issue = create(:issue, :confidential, project: project) + let(:issue) { create(:issue, :confidential, project: project) } + it 'disables the create branch button' do visit project_issue_path(project, issue) expect(page).not_to have_css('.create-mr-dropdown-wrap') @@ -88,16 +99,6 @@ feature 'Create Branch/Merge Request Dropdown on issue page', :feature, :js do end end - context 'for visitors' do - before do - visit project_issue_path(project, issue) - end - - it 'shows no buttons' do - expect(page).not_to have_selector('.create-mr-dropdown-wrap') - end - end - def select_dropdown_option(option) find('.create-mr-dropdown-wrap .dropdown-toggle').click find("li[data-value='#{option}']").click |