diff options
author | Bob Van Landuyt <bob@vanlanduyt.co> | 2018-10-25 18:12:12 +0200 |
---|---|---|
committer | Bob Van Landuyt <bob@vanlanduyt.co> | 2018-10-25 18:20:23 +0200 |
commit | 7a525004a7c9fa7b5a4d11ec5f8bf7854519178c (patch) | |
tree | 5d5110d96c7cf1fb3e1fce6de63b6066e31b4528 /spec | |
parent | 9e6098a6db3fd99f1c156b81598476b9df286f60 (diff) | |
download | gitlab-ce-7a525004a7c9fa7b5a4d11ec5f8bf7854519178c.tar.gz |
Preload user status for label events
This makes sure the user_status for the user of a label event is
preloaded. Otherwise it would not be rendered in the fake system note.
Diffstat (limited to 'spec')
-rw-r--r-- | spec/features/issues/resource_label_events_spec.rb | 7 | ||||
-rw-r--r-- | spec/services/resource_events/merge_into_notes_service_spec.rb | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/spec/features/issues/resource_label_events_spec.rb b/spec/features/issues/resource_label_events_spec.rb index 40c452c991a..b0764db7751 100644 --- a/spec/features/issues/resource_label_events_spec.rb +++ b/spec/features/issues/resource_label_events_spec.rb @@ -7,6 +7,7 @@ describe 'List issue resource label events', :js do let(:project) { create(:project, :public) } let(:issue) { create(:issue, project: project, author: user) } let!(:label) { create(:label, project: project, title: 'foo') } + let!(:user_status) { create(:user_status, user: user) } context 'when user displays the issue' do let!(:note) { create(:note_on_issue, author: user, project: project, noteable: issue, note: 'some note') } @@ -23,6 +24,12 @@ describe 'List issue resource label events', :js do expect(find("#note_#{event.discussion_id}")).to have_content 'added foo label' end end + + it 'shows the user status on the system note for the label' do + page.within("#note_#{event.discussion_id}") do + expect(page).to show_user_status user_status + end + end end context 'when user adds label to the issue' do diff --git a/spec/services/resource_events/merge_into_notes_service_spec.rb b/spec/services/resource_events/merge_into_notes_service_spec.rb index 0d333d541c9..c76f6e6f77e 100644 --- a/spec/services/resource_events/merge_into_notes_service_spec.rb +++ b/spec/services/resource_events/merge_into_notes_service_spec.rb @@ -66,5 +66,14 @@ describe ResourceEvents::MergeIntoNotesService do expect(notes.count).to eq 1 expect(notes.first.discussion_id).to eq event.discussion_id end + + it "preloads the note author's status" do + event = create_event(created_at: time) + create(:user_status, user: event.user) + + notes = described_class.new(resource, user).execute + + expect(notes.first.author.association(:status)).to be_loaded + end end end |