class AclTest < ActiveSupport::TestCase
def test_k_required
acl = create(:acl)
- assert acl.valid?
+ assert_predicate acl, :valid?
acl.k = nil
- assert !acl.valid?
+ assert_not acl.valid?
end
def test_no_account_creation_by_subnet
- assert !Acl.no_account_creation("192.168.1.1")
+ assert_not Acl.no_account_creation("192.168.1.1")
create(:acl, :address => "192.168.0.0/16", :k => "no_account_creation")
assert Acl.no_account_creation("192.168.1.1")
end
def test_no_account_creation_by_domain
- assert !Acl.no_account_creation("192.168.1.1", "example.com")
+ assert_not Acl.no_account_creation("192.168.1.1", :domain => "example.com")
+ assert_not Acl.no_account_creation("192.168.1.1", :domain => "test.example.com")
create(:acl, :domain => "example.com", :k => "no_account_creation")
- assert Acl.no_account_creation("192.168.1.1", "example.com")
+ assert Acl.no_account_creation("192.168.1.1", :domain => "example.com")
+ assert Acl.no_account_creation("192.168.1.1", :domain => "test.example.com")
+ end
+
+ def test_no_account_creation_by_mx
+ assert_not Acl.no_account_creation("192.168.1.1", :mx => "mail.example.com")
+ create(:acl, :mx => "mail.example.com", :k => "no_account_creation")
+ assert Acl.no_account_creation("192.168.1.1", :mx => "mail.example.com")
+ end
+
+ def test_allowed_account_creation
+ assert_not Acl.allow_account_creation("192.168.1.1", :domain => "example.com", :mx => "mail.example.com")
+ create(:acl, :address => "192.168.1.1", :domain => "example.com", :mx => "mail.example.com", :k => "allow_account_creation")
+
+ assert_not Acl.allow_account_creation("192.168.1.2")
+ assert Acl.allow_account_creation("192.168.1.1")
+
+ assert_not Acl.allow_account_creation("192.168.1.2", :domain => "example.com", :mx => "mail.example.com")
+ assert_not Acl.allow_account_creation("192.168.1.1", :domain => "example1.com", :mx => "mail.example.com")
+ assert_not Acl.allow_account_creation("192.168.1.1", :domain => "example.com", :mx => "mail1.example.com")
+ assert Acl.allow_account_creation("192.168.1.1", :domain => "example.com", :mx => "mail.example.com")
end
end