mirror of
https://github.com/discourse/discourse.git
synced 2025-05-28 13:51:18 +08:00
FEATURE: new 'maximum new user accounts per registration IP' site setting
This commit is contained in:
27
spec/components/spam_handler_spec.rb
Normal file
27
spec/components/spam_handler_spec.rb
Normal file
@ -0,0 +1,27 @@
|
||||
require "spec_helper"
|
||||
require "spam_handler"
|
||||
|
||||
describe SpamHandler do
|
||||
|
||||
describe "#should_prevent_registration_from_ip?" do
|
||||
|
||||
it "works" do
|
||||
# max_new_accounts_per_registration_ip = 0 disables the check
|
||||
SiteSetting.stubs(:max_new_accounts_per_registration_ip).returns(0)
|
||||
|
||||
Fabricate(:user, ip_address: "42.42.42.42", trust_level: TrustLevel[1])
|
||||
Fabricate(:user, ip_address: "42.42.42.42", trust_level: TrustLevel[0])
|
||||
|
||||
# only prevents registration for TL0
|
||||
SiteSetting.stubs(:max_new_accounts_per_registration_ip).returns(2)
|
||||
|
||||
Fabricate(:user, ip_address: "42.42.42.42", trust_level: TrustLevel[1])
|
||||
Fabricate(:user, ip_address: "42.42.42.42", trust_level: TrustLevel[0])
|
||||
|
||||
Fabricate(:user, ip_address: "42.42.42.42", trust_level: TrustLevel[1])
|
||||
-> { Fabricate(:user, ip_address: "42.42.42.42", trust_level: TrustLevel[0]) }.should raise_error(ActiveRecord::RecordInvalid)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
Reference in New Issue
Block a user