diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-21 15:07:56 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-21 15:07:56 +0000 |
commit | 73edea02d353e8ed503922650a35f4a4e93fffdf (patch) | |
tree | 77b491d539ee14e6f49f25a41aa6c0f5acabaea5 /spec/features/task_lists_spec.rb | |
parent | ab72cfc3b323f2a34bd4426b9a42c13cd345b284 (diff) | |
download | gitlab-ce-73edea02d353e8ed503922650a35f4a4e93fffdf.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/features/task_lists_spec.rb')
-rw-r--r-- | spec/features/task_lists_spec.rb | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/spec/features/task_lists_spec.rb b/spec/features/task_lists_spec.rb index 11429f16f42..bcd894a0d20 100644 --- a/spec/features/task_lists_spec.rb +++ b/spec/features/task_lists_spec.rb @@ -51,6 +51,27 @@ describe 'Task Lists' do EOT end + let(:commented_tasks_markdown) do + <<-EOT.strip_heredoc + <!-- + - [ ] a + --> + + - [ ] b + EOT + end + + let(:summary_no_blank_line_markdown) do + <<-EOT.strip_heredoc + <details> + <summary>No blank line after summary element breaks task list</summary> + 1. [ ] People Ops: do such and such + </details> + + * [ ] Task 1 + EOT + end + before do Warden.test_mode! @@ -291,4 +312,52 @@ describe 'Task Lists' do end end end + + describe 'markdown task edge cases' do + describe 'commented tasks', :js do + let!(:issue) { create(:issue, description: commented_tasks_markdown, author: user, project: project) } + + it 'renders' do + visit_issue(project, issue) + wait_for_requests + + expect(page).to have_selector('ul.task-list', count: 1) + expect(page).to have_selector('li.task-list-item', count: 1) + expect(page).to have_selector('ul input[checked]', count: 0) + + find('.task-list-item-checkbox').click + wait_for_requests + + visit_issue(project, issue) + wait_for_requests + + expect(page).to have_selector('ul.task-list', count: 1) + expect(page).to have_selector('li.task-list-item', count: 1) + expect(page).to have_selector('ul input[checked]', count: 1) + end + end + + describe 'summary with no blank line', :js do + let!(:issue) { create(:issue, description: summary_no_blank_line_markdown, author: user, project: project) } + + it 'renders' do + visit_issue(project, issue) + wait_for_requests + + expect(page).to have_selector('ul.task-list', count: 1) + expect(page).to have_selector('li.task-list-item', count: 1) + expect(page).to have_selector('ul input[checked]', count: 0) + + find('.task-list-item-checkbox').click + wait_for_requests + + visit_issue(project, issue) + wait_for_requests + + expect(page).to have_selector('ul.task-list', count: 1) + expect(page).to have_selector('li.task-list-item', count: 1) + expect(page).to have_selector('ul input[checked]', count: 1) + end + end + end end |