diff options
author | Phil Hughes <me@iamphill.com> | 2016-07-19 10:05:38 +0100 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2016-07-20 10:48:02 +0100 |
commit | 47d8fb84d80d23432c9afea055da4c56ea749206 (patch) | |
tree | 27ae6c31b70e823a3a99a682190bb047e38f1537 /spec/features/issues/form_spec.rb | |
parent | c54d2a030ca9753282640e8247e4df6c250477fa (diff) | |
download | gitlab-ce-47d8fb84d80d23432c9afea055da4c56ea749206.tar.gz |
Uses the selected values from the controller not the params
Added tests for new merge requests from forked project & owned project
Diffstat (limited to 'spec/features/issues/form_spec.rb')
-rw-r--r-- | spec/features/issues/form_spec.rb | 90 |
1 files changed, 62 insertions, 28 deletions
diff --git a/spec/features/issues/form_spec.rb b/spec/features/issues/form_spec.rb index 6c14dff6a37..2d0dae6f150 100644 --- a/spec/features/issues/form_spec.rb +++ b/spec/features/issues/form_spec.rb @@ -23,34 +23,49 @@ describe 'New/edit issue', feature: true, js: true do fill_in 'issue_description', with: 'title' click_button 'Assignee' - click_link user.name - - page.find '.js-assignee-search' do + page.within '.dropdown-menu-user' do + click_link user.name + end + expect(find('input[name="issue[assignee_id]"]', visible: false).value).to match(user.id.to_s) + page.within '.js-assignee-search' do expect(page).to have_content user.name end click_button 'Milestone' - click_link milestone.title - - page.find '.js-milestone-select' do + page.within '.issue-milestone' do + click_link milestone.title + end + expect(find('input[name="issue[milestone_id]"]', visible: false).value).to match(milestone.id.to_s) + page.within '.js-milestone-select' do expect(page).to have_content milestone.title end click_button 'Labels' - click_link label.title - click_link label2.title - - page.find '.js-label-select' do - expect(page).to have_content label2.title + page.within '.dropdown-menu-labels' do + click_link label.title + click_link label2.title + end + page.within '.js-label-select' do + expect(page).to have_content label.title end + expect(page.all('input[name="issue[label_ids][]"]', visible: false)[1].value).to match(label.id.to_s) + expect(page.all('input[name="issue[label_ids][]"]', visible: false)[2].value).to match(label2.id.to_s) click_button 'Submit issue' - page.find '.issuable-sidebar' do - expect(page).to have_content user.name - expect(page).to have_content milestone.title - expect(page).to have_content label.title - expect(page).to have_content label2.title + page.within '.issuable-sidebar' do + page.within '.assignee' do + expect(page).to have_content user.name + end + + page.within '.milestone' do + expect(page).to have_content milestone.title + end + + page.within '.labels' do + expect(page).to have_content label.title + expect(page).to have_content label2.title + end end end end @@ -61,24 +76,43 @@ describe 'New/edit issue', feature: true, js: true do end it 'should allow user to update issue' do - expect(page).to have_content user.name - expect(page).to have_content milestone.title + expect(find('input[name="issue[assignee_id]"]', visible: false).value).to match(user.id.to_s) + expect(find('input[name="issue[milestone_id]"]', visible: false).value).to match(milestone.id.to_s) - click_button 'Labels' - click_link label.title - click_link label2.title + page.within '.js-user-search' do + expect(page).to have_content user.name + end - page.find '.js-label-select' do - expect(page).to have_content label2.title + page.within '.js-milestone-select' do + expect(page).to have_content milestone.title end + click_button 'Labels' + page.within '.dropdown-menu-labels' do + click_link label.title + click_link label2.title + end + page.within '.js-label-select' do + expect(page).to have_content label.title + end + expect(page.all('input[name="issue[label_ids][]"]', visible: false)[1].value).to match(label.id.to_s) + expect(page.all('input[name="issue[label_ids][]"]', visible: false)[2].value).to match(label2.id.to_s) + click_button 'Save changes' - page.find '.issuable-sidebar' do - expect(page).to have_content user.name - expect(page).to have_content milestone.title - expect(page).to have_content label.title - expect(page).to have_content label2.title + page.within '.issuable-sidebar' do + page.within '.assignee' do + expect(page).to have_content user.name + end + + page.within '.milestone' do + expect(page).to have_content milestone.title + end + + page.within '.labels' do + expect(page).to have_content label.title + expect(page).to have_content label2.title + end end end end |