diff options
author | Mike Greiling <mike@pixelcog.com> | 2017-10-30 04:51:34 +0300 |
---|---|---|
committer | Mike Greiling <mike@pixelcog.com> | 2017-10-30 04:51:34 +0300 |
commit | 6a92dff2bc368aa362a0e239f9fcf953ad4e9e52 (patch) | |
tree | 458a7621335bf04895223cd9789729d0e3e68a13 /spec/features/issues_spec.rb | |
parent | 40ee89bc7da8b1c0500f2358d2548f2395bc2323 (diff) | |
parent | 1aae91cf24606275834d6e17279ce14c1074dade (diff) |
Merge branch 'master' into sh-headless-chrome-support
* master: (96 commits)
Fetch the merged branches at once
Merging EE doc into CE
Avoid using Rugged in Gitlab::Git::Wiki#preview_slug
Cache commits on the repository model
Remove groups_select from global namespace & simplifies the code
Change default disabled merge request widget message to "Merge is not allowed yet"
Semi-linear history merge is now available in CE.
Remove repetitive karma spec
Improve spec to check hidden component
Rename to shouldShowUsername
Add KubernetesService#default_namespace tests
Revert "Merge branch '36670-remove-edit-form' into 'master'"
Fix bitbucket login
Remove duped tests
Add path attribute to WikiFile class
Make local_branches OPT_OUT
Clarify the language around External Group membership with SAML SSO to clarify that this will NOT add users to GitLab Groups.
Added ssh fingerprint, gitlab ci and pages information in an instance configuration page
Fix the incorrect value being used to set GL_USERNAME on hooks
Resolve "Remove overzealous tooltips in projects page tabs"
...
Diffstat (limited to 'spec/features/issues_spec.rb')
-rw-r--r-- | spec/features/issues_spec.rb | 108 |
1 files changed, 101 insertions, 7 deletions
diff --git a/spec/features/issues_spec.rb b/spec/features/issues_spec.rb index cd97dd18c00..b6da66ea901 100644 --- a/spec/features/issues_spec.rb +++ b/spec/features/issues_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Issues', :js do +describe 'Issues' do include DropzoneHelper include IssueHelpers include SortingHelper @@ -24,15 +24,109 @@ describe 'Issues', :js do end before do - visit project_issue_path(project, issue) - page.within('.content .issuable-actions') do - find('.issuable-edit').click - end - find('.issue-details .content-block .js-zen-enter').click + visit edit_project_issue_path(project, issue) + find('.js-zen-enter').click end it 'opens new issue popup' do - expect(page).to have_content(issue.description) + expect(page).to have_content("Issue ##{issue.iid}") + end + end + + describe 'Editing issue assignee' do + let!(:issue) do + create(:issue, + author: user, + assignees: [user], + project: project) + end + + it 'allows user to select unassigned', :js do + visit edit_project_issue_path(project, issue) + + expect(page).to have_content "Assignee #{user.name}" + + first('.js-user-search').click + click_link 'Unassigned' + + click_button 'Save changes' + + page.within('.assignee') do + expect(page).to have_content 'No assignee - assign yourself' + end + + expect(issue.reload.assignees).to be_empty + end + end + + describe 'due date', :js do + context 'on new form' do + before do + visit new_project_issue_path(project) + end + + it 'saves with due date' do + date = Date.today.at_beginning_of_month + + fill_in 'issue_title', with: 'bug 345' + fill_in 'issue_description', with: 'bug description' + find('#issuable-due-date').click + + page.within '.pika-single' do + click_button date.day + end + + expect(find('#issuable-due-date').value).to eq date.to_s + + click_button 'Submit issue' + + page.within '.issuable-sidebar' do + expect(page).to have_content date.to_s(:medium) + end + end + end + + context 'on edit form' do + let(:issue) { create(:issue, author: user, project: project, due_date: Date.today.at_beginning_of_month.to_s) } + + before do + visit edit_project_issue_path(project, issue) + end + + it 'saves with due date' do + date = Date.today.at_beginning_of_month + + expect(find('#issuable-due-date').value).to eq date.to_s + + date = date.tomorrow + + fill_in 'issue_title', with: 'bug 345' + fill_in 'issue_description', with: 'bug description' + find('#issuable-due-date').click + + page.within '.pika-single' do + click_button date.day + end + + expect(find('#issuable-due-date').value).to eq date.to_s + + click_button 'Save changes' + + page.within '.issuable-sidebar' do + expect(page).to have_content date.to_s(:medium) + end + end + + it 'warns about version conflict' do + issue.update(title: "New title") + + fill_in 'issue_title', with: 'bug 345' + fill_in 'issue_description', with: 'bug description' + + click_button 'Save changes' + + expect(page).to have_content 'Someone edited the issue the same time you did' + end end end |