Fix discussion entity for legacy diff notes
This commit is contained in:
parent
c82b57789d
commit
d66bbf82b3
2 changed files with 20 additions and 1 deletions
|
@ -3,7 +3,7 @@ class DiscussionEntity < Grape::Entity
|
||||||
include NotesHelper
|
include NotesHelper
|
||||||
|
|
||||||
expose :id, :reply_id
|
expose :id, :reply_id
|
||||||
expose :position, if: -> (d, _) { d.diff_discussion? }
|
expose :position, if: -> (d, _) { d.diff_discussion? && !d.legacy_diff_discussion?}
|
||||||
expose :line_code, if: -> (d, _) { d.diff_discussion? }
|
expose :line_code, if: -> (d, _) { d.diff_discussion? }
|
||||||
expose :expanded?, as: :expanded
|
expose :expanded?, as: :expanded
|
||||||
expose :active?, as: :active, if: -> (d, _) { d.diff_discussion? }
|
expose :active?, as: :active, if: -> (d, _) { d.diff_discussion? }
|
||||||
|
|
|
@ -36,6 +36,25 @@ describe DiscussionEntity do
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context 'when is LegacyDiffDiscussion' do
|
||||||
|
let(:project) { create(:project) }
|
||||||
|
let(:merge_request) { create(:merge_request, source_project: project) }
|
||||||
|
let(:discussion) { create(:legacy_diff_note_on_merge_request, noteable: merge_request, project: project).to_discussion }
|
||||||
|
|
||||||
|
it 'exposes correct attributes' do
|
||||||
|
expect(subject.keys.sort).to include(
|
||||||
|
:diff_discussion,
|
||||||
|
:expanded,
|
||||||
|
:id,
|
||||||
|
:individual_note,
|
||||||
|
:notes,
|
||||||
|
:discussion_path,
|
||||||
|
:for_commit,
|
||||||
|
:commit_id
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
context 'when diff file is present' do
|
context 'when diff file is present' do
|
||||||
let(:note) { create(:diff_note_on_merge_request) }
|
let(:note) { create(:diff_note_on_merge_request) }
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue