|
|
|
@ -3,16 +3,18 @@
|
|
|
|
|
require 'rails_helper'
|
|
|
|
|
|
|
|
|
|
describe DomainAllow do
|
|
|
|
|
describe 'scopes' do
|
|
|
|
|
describe 'matches_domain' do
|
|
|
|
|
let(:domain) { Fabricate(:domain_allow, domain: 'example.com') }
|
|
|
|
|
let(:other_domain) { Fabricate(:domain_allow, domain: 'example.biz') }
|
|
|
|
|
|
|
|
|
|
it 'returns the correct records' do
|
|
|
|
|
results = described_class.matches_domain('example.com')
|
|
|
|
|
describe 'Validations' do
|
|
|
|
|
it 'is invalid without a domain' do
|
|
|
|
|
domain_allow = Fabricate.build(:domain_allow, domain: nil)
|
|
|
|
|
domain_allow.valid?
|
|
|
|
|
expect(domain_allow).to model_have_error_on_field(:domain)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
expect(results).to eq([domain])
|
|
|
|
|
end
|
|
|
|
|
it 'is invalid if the same normalized domain already exists' do
|
|
|
|
|
_domain_allow = Fabricate(:domain_allow, domain: 'にゃん')
|
|
|
|
|
domain_allow_with_normalized_value = Fabricate.build(:domain_allow, domain: 'xn--r9j5b5b')
|
|
|
|
|
domain_allow_with_normalized_value.valid?
|
|
|
|
|
expect(domain_allow_with_normalized_value).to model_have_error_on_field(:domain)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|