diff --git a/src/api/app/views/webui/subscriptions/_subscriptions_form.html.haml b/src/api/app/views/webui/subscriptions/_subscriptions_form.html.haml index 25ee2a87bba..6cd655def52 100644 --- a/src/api/app/views/webui/subscriptions/_subscriptions_form.html.haml +++ b/src/api/app/views/webui/subscriptions/_subscriptions_form.html.haml @@ -7,7 +7,7 @@ = fields_for "subscriptions[#{i}]", subscription do |f| %li = f.label :receive, subscription.receiver_role - = f.select :channel, EventSubscription.channels.keys + = f.select :channel, EventSubscription.channels.keys, {}, { data: { eventtype: subscription.eventtype, receiver_role: subscription.receiver_role } } = f.hidden_field :eventtype = f.hidden_field :receiver_role - i += 1 diff --git a/src/api/spec/features/webui/notifications_spec.rb b/src/api/spec/features/webui/notifications_spec.rb index a1eeb7b39e4..1aacdd828bb 100644 --- a/src/api/spec/features/webui/notifications_spec.rb +++ b/src/api/spec/features/webui/notifications_spec.rb @@ -8,12 +8,13 @@ expect(page).to have_content('Events to get email for') - %w(subscriptions_8_channel - subscriptions_7_channel - subscriptions_14_channel - subscriptions_15_channel - ).each do |select_id| - select('instant_email', from: select_id) + [ + ['Event::CommentForPackage', 'commenter'], + ['Event::CommentForProject', 'maintainer'], + ['Event::CommentForRequest', 'reviewer'], + ['Event::BuildFail', 'maintainer'] + ].each do |eventtype, receiver_role| + find("select[data-eventtype='#{eventtype}'][data-receiver-role='#{receiver_role}']").find(:option, 'instant_email').select_option end click_button 'Update' diff --git a/src/api/test/models/event_test.rb b/src/api/test/models/event_test.rb index 0c7276894b3..38dd02cd787 100644 --- a/src/api/test/models/event_test.rb +++ b/src/api/test/models/event_test.rb @@ -27,10 +27,6 @@ def setup assert_equal [], e.receiver_roles end - test 'receive roles for build failure' do - assert_equal %i(maintainer bugowner reader), events(:build_fails_with_deleted_user_and_request).receiver_roles - end - def users_for_event(e) users = EventSubscription::FindForEvent.new(e).subscriptions.map(&:subscriber) User.where(id: users).pluck(:login).sort