diff --git a/spec/policies/project_policy_spec.rb b/spec/policies/project_policy_spec.rb index 48244ac599041139b3058c0c2ca40a44162c16fc..15ef821060340a8df711b829523288b64a34b792 100644 --- a/spec/policies/project_policy_spec.rb +++ b/spec/policies/project_policy_spec.rb @@ -330,6 +330,30 @@ def set_access_level(access_level) end end + context 'manage_trigger' do + using RSpec::Parameterized::TableSyntax + + where(:role, :allowed) do + :owner | true + :maintainer | true + :developer | false + :reporter | false + :guest | false + end + + with_them do + let(:current_user) { public_send(role) } + + it 'grants manage_trigger permission based on admin_build permission' do + if allowed + expect_allowed(:manage_trigger) + else + expect_disallowed(:manage_trigger) + end + end + end + end + context 'builds feature' do context 'when builds are disabled' do let(:current_user) { owner }