在设计中测试被破坏的用户
Testing for destroyed users in devise
我目前在测试销毁使用 devise 生成的用户时遇到问题。
require 'test_helper'
class UserTest < ActiveSupport::TestCase
# test "the truth" do
# assert true
# end
def setup
@user = User.new(email: "user@example.com")
end
test "Should delete User"do
@user.save
assert_difference 'User.count', -1 do
@user.destroy
end
end
end
当前测试
失败并显示差异为 0。我想知道如何测试它(即使我知道 user.destroy 当我在 rails 控制台中 运行 它时有效)。
祝一切顺利
D
我认为,保存用户有问题@user.save
。这是由于验证错误。默认 Devise
s User
有一个 password
作为必填字段。
尝试更改:
def setup
@user = User.new(email: "user@example.com")
end
至:
def setup
@user = User.new(email: "user@example.com",
password: "SuperS3cret")
end
@user
要妥善保存,使@user.destroy
有效,assert_difference
通过
祝你好运!
我目前在测试销毁使用 devise 生成的用户时遇到问题。
require 'test_helper'
class UserTest < ActiveSupport::TestCase
# test "the truth" do
# assert true
# end
def setup
@user = User.new(email: "user@example.com")
end
test "Should delete User"do
@user.save
assert_difference 'User.count', -1 do
@user.destroy
end
end
end
当前测试 失败并显示差异为 0。我想知道如何测试它(即使我知道 user.destroy 当我在 rails 控制台中 运行 它时有效)。
祝一切顺利 D
我认为,保存用户有问题@user.save
。这是由于验证错误。默认 Devise
s User
有一个 password
作为必填字段。
尝试更改:
def setup
@user = User.new(email: "user@example.com")
end
至:
def setup
@user = User.new(email: "user@example.com",
password: "SuperS3cret")
end
@user
要妥善保存,使@user.destroy
有效,assert_difference
通过
祝你好运!