Add coverage for .required_permissions, make unique

pull/32516/head
Matt Jankowski 2024-10-12 17:09:03 -04:00
parent bca7d9302b
commit 961afb47e8
2 changed files with 19 additions and 1 deletions

View File

@ -53,7 +53,9 @@ class Webhook < ApplicationRecord
end
def required_permissions
events.map { |event| Webhook.permission_for_event(event) }
events
.map { |event| Webhook.permission_for_event(event) }
.uniq
end
def self.permission_for_event(event)

View File

@ -71,6 +71,22 @@ RSpec.describe Webhook do
end
end
describe '#required_permissions' do
subject { described_class.new(events:).required_permissions }
context 'with empty events' do
let(:events) { [] }
it { is_expected.to eq([]) }
end
context 'with multiple event types' do
let(:events) { %w(account.created account.updated status.created) }
it { is_expected.to eq %i(manage_users view_devops) }
end
end
describe '#rotate_secret!' do
it 'changes the secret' do
expect { webhook.rotate_secret! }