summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilipa Lacerda <filipa@gitlab.com>2018-04-20 07:47:08 +0000
committerFilipa Lacerda <filipa@gitlab.com>2018-04-20 10:59:15 +0100
commitb603a5af6bf202e7d5629356c13efc374a1265ec (patch)
treeb97e769980fdb030f743facfbec8366053695f77
parent996dd2297ddecbb96f01c672d5a43a85b89a4f00 (diff)
downloadgitlab-ce-b603a5af6bf202e7d5629356c13efc374a1265ec.tar.gz
Merge branch '45514-resolved-table' into 'master'
Resolve "Text from the diff is showing within a table header inside the discussion after the discussion is resolved" Closes #45514 See merge request gitlab-org/gitlab-ce!18492
-rw-r--r--app/assets/javascripts/notes.js2
-rw-r--r--spec/features/merge_request/user_resolves_diff_notes_and_discussions_resolve_spec.rb11
2 files changed, 11 insertions, 2 deletions
diff --git a/app/assets/javascripts/notes.js b/app/assets/javascripts/notes.js
index 2121907dff0..96f2b3eac98 100644
--- a/app/assets/javascripts/notes.js
+++ b/app/assets/javascripts/notes.js
@@ -1427,7 +1427,7 @@ export default class Notes {
const { discussion_html } = data;
const lines = $(discussion_html).find('.line_holder');
lines.addClass('fade-in');
- $container.find('tbody').prepend(lines);
+ $container.find('.diff-content > table > tbody').prepend(lines);
const fileHolder = $container.find('.file-holder');
$container.find('.line-holder-placeholder').remove();
syntaxHighlight(fileHolder);
diff --git a/spec/features/merge_request/user_resolves_diff_notes_and_discussions_resolve_spec.rb b/spec/features/merge_request/user_resolves_diff_notes_and_discussions_resolve_spec.rb
index b4ad4b64d8e..0fd2840c426 100644
--- a/spec/features/merge_request/user_resolves_diff_notes_and_discussions_resolve_spec.rb
+++ b/spec/features/merge_request/user_resolves_diff_notes_and_discussions_resolve_spec.rb
@@ -5,7 +5,7 @@ describe 'Merge request > User resolves diff notes and discussions', :js do
let(:user) { project.creator }
let(:guest) { create(:user) }
let(:merge_request) { create(:merge_request_with_diffs, source_project: project, author: user, title: "Bug NS-04") }
- let!(:note) { create(:diff_note_on_merge_request, project: project, noteable: merge_request) }
+ let!(:note) { create(:diff_note_on_merge_request, project: project, noteable: merge_request, note: "| Markdown | Table |\n|-------|---------|\n| first | second |") }
let(:path) { "files/ruby/popen.rb" }
let(:position) do
Gitlab::Diff::Position.new(
@@ -111,6 +111,15 @@ describe 'Merge request > User resolves diff notes and discussions', :js do
expect(page.find(".line-holder-placeholder")).to be_visible
expect(page.find(".timeline-content #note_#{note.id}")).to be_visible
end
+
+ it 'renders tables in lazy-loaded resolved diff dicussions' do
+ find(".timeline-content .discussion[data-discussion-id='#{note.discussion_id}'] .discussion-toggle-button").click
+
+ wait_for_requests
+
+ expect(page.find(".timeline-content #note_#{note.id}")).not_to have_css(".line_holder")
+ expect(page.find(".timeline-content #note_#{note.id}")).to have_css("tr", count: 2)
+ end
end
describe 'side-by-side view' do