diff options
author | Chris Wilson <chris@chrisjwilson.com> | 2017-05-08 12:00:30 +1000 |
---|---|---|
committer | Chris Wilson <chris@chrisjwilson.com> | 2017-05-08 15:55:02 +1000 |
commit | 52c8651a6caf5236ff173555164b676958540b9e (patch) | |
tree | a881b4466c0303f4b0d0e659041980452929b6c8 | |
parent | 8b9cd3c072768ca810d2b33009e35d93a05e417f (diff) | |
download | gitlab-ce-mrchrisw-fix-slack-notify.tar.gz |
Fix notify_only_default_branch check for Slack servicemrchrisw-fix-slack-notify
The notify_only_default_branch property is using boolean_accessor
this means we need to check it using a question methods.
Also add specs for disabling this option.
3 files changed, 18 insertions, 2 deletions
diff --git a/app/models/project_services/chat_notification_service.rb b/app/models/project_services/chat_notification_service.rb index fa782c6fbb7..6464bf3f4a4 100644 --- a/app/models/project_services/chat_notification_service.rb +++ b/app/models/project_services/chat_notification_service.rb @@ -150,7 +150,7 @@ class ChatNotificationService < Service def notify_for_ref?(data) return true if data[:object_attributes][:tag] - return true unless notify_only_default_branch + return true unless notify_only_default_branch? data[:object_attributes][:ref] == project.default_branch end diff --git a/changelogs/unreleased/mrchrisw-fix-slack-notify.yml b/changelogs/unreleased/mrchrisw-fix-slack-notify.yml new file mode 100644 index 00000000000..bb45a117be6 --- /dev/null +++ b/changelogs/unreleased/mrchrisw-fix-slack-notify.yml @@ -0,0 +1,4 @@ +--- +title: Fix notify_only_default_branch check for Slack service +merge_request: +author: diff --git a/spec/support/slack_mattermost_notifications_shared_examples.rb b/spec/support/slack_mattermost_notifications_shared_examples.rb index b902fe90707..7e35ebb6c97 100644 --- a/spec/support/slack_mattermost_notifications_shared_examples.rb +++ b/spec/support/slack_mattermost_notifications_shared_examples.rb @@ -328,7 +328,7 @@ RSpec.shared_examples 'slack or mattermost notifications' do context 'only notify for the default branch' do context 'when enabled' do let(:pipeline) do - create(:ci_pipeline, project: project, status: 'failed', ref: 'not-the-default-branch') + create(:ci_pipeline, :failed, project: project, ref: 'not-the-default-branch') end before do @@ -342,6 +342,18 @@ RSpec.shared_examples 'slack or mattermost notifications' do expect(result).to be_falsy end end + + context 'when disabled' do + let(:pipeline) do + create(:ci_pipeline, :failed, project: project, ref: 'not-the-default-branch') + end + + before do + chat_service.notify_only_default_branch = false + end + + it_behaves_like 'call Slack/Mattermost API' + end end end end |