diff options
author | Patricio Cano <suprnova32@gmail.com> | 2016-07-14 21:19:40 +0300 |
---|---|---|
committer | Patricio Cano <suprnova32@gmail.com> | 2016-07-19 01:52:29 +0300 |
commit | defb8660c08a904a385b584280f72fc6a5a94c6e (patch) | |
tree | 1a93c424e4ad3ffb3d18350fdaaaa6c43879bad1 /spec/models/application_setting_spec.rb | |
parent | 777a080892f710915c8f4d62864813ef388a1873 (diff) |
Added the ability to block sign ups using a domain blacklist.
Diffstat (limited to 'spec/models/application_setting_spec.rb')
-rw-r--r-- | spec/models/application_setting_spec.rb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/models/application_setting_spec.rb b/spec/models/application_setting_spec.rb index 2ea1320267c..582d9a8d8cd 100644 --- a/spec/models/application_setting_spec.rb +++ b/spec/models/application_setting_spec.rb @@ -73,4 +73,31 @@ describe ApplicationSetting, models: true do expect(setting.restricted_signup_domains).to eq(['example.com', '*.example.com']) end end + + context 'blacklisted signup domains' do + it 'set single domain' do + setting.domain_blacklist_raw = 'example.com' + expect(setting.domain_blacklist).to eq(['example.com']) + end + + it 'set multiple domains with spaces' do + setting.domain_blacklist_raw = 'example.com *.example.com' + expect(setting.domain_blacklist).to eq(['example.com', '*.example.com']) + end + + it 'set multiple domains with newlines and a space' do + setting.domain_blacklist_raw = "example.com\n *.example.com" + expect(setting.domain_blacklist).to eq(['example.com', '*.example.com']) + end + + it 'set multiple domains with commas' do + setting.domain_blacklist_raw = "example.com, *.example.com" + expect(setting.domain_blacklist).to eq(['example.com', '*.example.com']) + end + + it 'set multiple domain with file' do + setting.domain_blacklist_file = File.open(Rails.root.join('spec/fixtures/', 'blacklist.txt')) + expect(setting.domain_blacklist).to eq(%w(example.com test.com foo.bar)) + end + end end |