gpt4 book ai didi

ruby-on-rails - Rspec Rails - 名称应该是有效的 - 一些说明

转载 作者:行者123 更新时间:2023-12-04 07:37:41 25 4
gpt4 key购买 nike

这些天我很喜欢 rspec,试图让我的模型更加精确和准确。关于 rspec 的某些事情对我来说仍然有点奇怪,所以我认为如果有人能澄清一下会很好。

假设我有一个 User 模型。这个有一个:name。名称应该在 4..15 个字符之间(这是次要目标,首先它必须存在)。所以现在我在想:以确保这会发生的方式来测试它的最佳方法是什么。为了测试用户是否必须有一个名字,我写了这样的东西:

describe User do
let(:user) { User.new(:name => 'lele') }

it "is not valid without a name" do
user.name.should == 'lele'
end
end

现在,我不太确定这是否完全符合我的要求。在我看来,我实际上是在用这个来测试 Rails。此外,如果我想检查名称不能超过 15 个字符且少于 4 个字符,如何集成?

编辑:

也许这更好?
describe User do
let(:user) { User.new(:name => 'lele') }

it "is not valid without a name" do
user.name.should_not be_empty
end

end

最佳答案

您可能正在寻找 be_valid匹配器:

describe User do
let(:user) { User.new(:name => 'lele') }

it "is valid with a name" do
user.should be_valid
end

it "is not valid without a name" do
user.name = nil
user.should_not be_valid
end
end

关于ruby-on-rails - Rspec Rails - 名称应该是有效的 - 一些说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5084116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com