refactor User#validate_sock_puppet to disable for tests

This commit is contained in:
r888888888 2018-01-02 14:32:38 -08:00
parent ed948ad655
commit 4a80d6c337
18 changed files with 9 additions and 28 deletions

View File

@ -76,7 +76,7 @@ class User < ApplicationRecord
validates_presence_of :email, :if => lambda {|rec| rec.new_record? && Danbooru.config.enable_email_verification?}
validates_presence_of :comment_threshold
validate :validate_ip_addr_is_not_banned, :on => :create
validate :validate_sock_puppets, :on => :create
validate :validate_sock_puppets, :on => :create, :if => lambda { Danbooru.config.enable_sock_puppet_validation? }
before_validation :normalize_blacklisted_tags
before_validation :set_per_page
before_validation :normalize_email

View File

@ -563,6 +563,11 @@ module Danbooru
false
end
# disable this for tests
def enable_sock_puppet_validation?
true
end
# reportbooru options - see https://github.com/r888888888/reportbooru
def reportbooru_server
end

View File

@ -95,7 +95,7 @@ class UsersControllerTest < ActionController::TestCase
end
should "not allow registering multiple accounts with the same IP" do
User.any_instance.unstub(:validate_sock_puppets)
Danbooru.config.unstub(:enable_sock_puppet_validation?)
request.env["REMOTE_ADDR"] = "1.2.3.4"
CurrentUser.user = nil

View File

@ -4,8 +4,6 @@ class DmailFilterTest < ActiveSupport::TestCase
def setup
super
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@receiver = FactoryGirl.create(:user)
@sender = FactoryGirl.create(:user)
end

View File

@ -31,6 +31,7 @@ class ActiveSupport::TestCase
mock_popular_search_service!
mock_missed_search_service!
WebMock.allow_net_connect!
Danbooru.config.stubs(:enable_sock_puppet_validation?).returns(false)
end
teardown do
@ -53,7 +54,7 @@ class ActionController::TestCase
def setup
super
User.any_instance.stubs(:validate_sock_puppets).returns(true)
Danbooru.config.stubs(:enable_sock_puppet_validation?).returns(false)
end
def teardown

View File

@ -15,8 +15,6 @@ class ArtistTest < ActiveSupport::TestCase
context "An artist" do
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
user = Timecop.travel(1.month.ago) {FactoryGirl.create(:user)}
CurrentUser.user = user
CurrentUser.ip_addr = "127.0.0.1"

View File

@ -3,7 +3,6 @@ require 'test_helper'
class ArtistUrlTest < ActiveSupport::TestCase
context "An artist url" do
setup do
User.any_instance.stubs(:validate_sock_puppets)
CurrentUser.user = FactoryGirl.create(:user)
CurrentUser.ip_addr = "127.0.0.1"
end

View File

@ -1,11 +1,6 @@
require 'test_helper'
class BanTest < ActiveSupport::TestCase
def setup
super
User.any_instance.stubs(:validate_sock_puppets).returns(true)
end
context "A ban" do
context "created by an admin" do
setup do

View File

@ -2,7 +2,6 @@ require 'test_helper'
class CurrentUserTest < ActiveSupport::TestCase
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
CurrentUser.user = nil
CurrentUser.ip_addr = nil
end

View File

@ -3,7 +3,6 @@ require 'test_helper'
class DmailTest < ActiveSupport::TestCase
context "A dmail" do
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@user = FactoryGirl.create(:user)
CurrentUser.user = @user
CurrentUser.ip_addr = "1.2.3.4"

View File

@ -3,7 +3,6 @@ require 'test_helper'
class JanitorTrialTest < ActiveSupport::TestCase
context "A janitor trial" do
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@admin = FactoryGirl.create(:admin_user)
@user = FactoryGirl.create(:user)
CurrentUser.user = @admin

View File

@ -1,11 +1,6 @@
require 'test_helper'
class PostDisapprovalTest < ActiveSupport::TestCase
def setup
super
User.any_instance.stubs(:validate_sock_puppets).returns(true)
end
context "In all cases" do
setup do
@alice = FactoryGirl.create(:moderator_user)

View File

@ -16,7 +16,6 @@ class PostTest < ActiveSupport::TestCase
super
Timecop.travel(2.weeks.ago) do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@user = FactoryGirl.create(:user)
end
CurrentUser.user = @user

View File

@ -4,7 +4,6 @@ class PostVoteTest < ActiveSupport::TestCase
def setup
super
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@supervoter = FactoryGirl.create(:user, is_super_voter: true)
@user = FactoryGirl.create(:user)
CurrentUser.user = @user

View File

@ -2,7 +2,6 @@ require 'test_helper'
class RelatedTagQueryTest < ActiveSupport::TestCase
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
user = FactoryGirl.create(:user)
CurrentUser.user = user
CurrentUser.ip_addr = "127.0.0.1"

View File

@ -6,7 +6,6 @@ class SavedSearchTest < ActiveSupport::TestCase
def setup
super
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@user = FactoryGirl.create(:user)
CurrentUser.user = @user
CurrentUser.ip_addr = "127.0.0.1"

View File

@ -3,7 +3,6 @@ require 'test_helper'
class UserNameChangeRequestTest < ActiveSupport::TestCase
context "in all cases" do
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@admin = FactoryGirl.create(:admin_user)
@requester = FactoryGirl.create(:user)
CurrentUser.user = @requester

View File

@ -3,8 +3,6 @@ require 'test_helper'
class UserRevertTest < ActiveSupport::TestCase
context "Reverting a user's changes" do
setup do
User.any_instance.stubs(:validate_sock_puppets).returns(true)
@creator = FactoryGirl.create(:user)
@user = FactoryGirl.create(:user)
CurrentUser.user = @user