diff options
Diffstat (limited to 'spec/models/namespace_setting_spec.rb')
-rw-r--r-- | spec/models/namespace_setting_spec.rb | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/models/namespace_setting_spec.rb b/spec/models/namespace_setting_spec.rb index 59b7510051f..14d28be8d43 100644 --- a/spec/models/namespace_setting_spec.rb +++ b/spec/models/namespace_setting_spec.rb @@ -66,5 +66,36 @@ RSpec.describe NamespaceSetting, type: :model do end end end + + describe '#allow_resource_access_token_creation_for_group' do + let(:settings) { group.namespace_settings } + + context 'group is top-level group' do + let(:group) { create(:group) } + + it 'is valid' do + settings.resource_access_token_creation_allowed = false + + expect(settings).to be_valid + end + end + + context 'group is a subgroup' do + let(:group) { create(:group, parent: create(:group)) } + + it 'is invalid when resource access token creation is not enabled' do + settings.resource_access_token_creation_allowed = false + + expect(settings).to be_invalid + expect(group.namespace_settings.errors.messages[:resource_access_token_creation_allowed]).to include("is not allowed since the group is not top-level group.") + end + + it 'is valid when resource access tokens are enabled' do + settings.resource_access_token_creation_allowed = true + + expect(settings).to be_valid + end + end + end end end |