Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/namespace_setting_spec.rb')
-rw-r--r--spec/models/namespace_setting_spec.rb68
1 files changed, 67 insertions, 1 deletions
diff --git a/spec/models/namespace_setting_spec.rb b/spec/models/namespace_setting_spec.rb
index 257d78dfa2c..c6e8d5b129c 100644
--- a/spec/models/namespace_setting_spec.rb
+++ b/spec/models/namespace_setting_spec.rb
@@ -3,5 +3,71 @@
require 'spec_helper'
RSpec.describe NamespaceSetting, type: :model do
- it { is_expected.to belong_to(:namespace) }
+ # Relationships
+ #
+ describe "Associations" do
+ it { is_expected.to belong_to(:namespace) }
+ end
+
+ describe "validations" do
+ describe "#default_branch_name_content" do
+ let_it_be(:group) { create(:group) }
+
+ let(:namespace_settings) { group.namespace_settings }
+
+ shared_examples "doesn't return an error" do
+ it "doesn't return an error" do
+ expect(namespace_settings.valid?).to be_truthy
+ expect(namespace_settings.errors.full_messages).to be_empty
+ end
+ end
+
+ context "when not set" do
+ it_behaves_like "doesn't return an error"
+ end
+
+ context "when set" do
+ before do
+ namespace_settings.default_branch_name = "example_branch_name"
+ end
+
+ it_behaves_like "doesn't return an error"
+ end
+
+ context "when an empty string" do
+ before do
+ namespace_settings.default_branch_name = ''
+ end
+
+ it "returns an error" do
+ expect(namespace_settings.valid?).to be_falsey
+ expect(namespace_settings.errors.full_messages).not_to be_empty
+ end
+ end
+ end
+
+ describe '#allow_mfa_for_group' do
+ let(:settings) { group.namespace_settings }
+
+ context 'group is top-level group' do
+ let(:group) { create(:group) }
+
+ it 'is valid' do
+ settings.allow_mfa_for_subgroups = false
+
+ expect(settings).to be_valid
+ end
+ end
+
+ context 'group is a subgroup' do
+ let(:group) { create(:group, parent: create(:group)) }
+
+ it 'is invalid' do
+ settings.allow_mfa_for_subgroups = false
+
+ expect(settings).to be_invalid
+ end
+ end
+ end
+ end
end