モデル毎に、validates が仕様通りかなどをテストします。
例:
setup do
@category = categories(:one)
@step = steps(:one)
end
test "valid with title" do
book = Book.new(
enabled: true,
name: "Rails Guide",
isbn: "978-4109999999",
category: @category,
step: @step
)
assert book.valid?
end
test "invalid with title" do
book = Book.new(
enabled: true,
name: nil,
isbn: "978-4109999999",
category: @category,
step: @step
)
assert book.invalid?
end
1つ目のテストで正しいデータを入れ、
book.valid? で実際に正しいかを確かめます。
2つ目のテストで不正なデータ (name: nil) を入れて、
book.invalid? で実際に不正かを確かめます。
参考リポジトリ: https://github.com/Bonv-dev/book_mgmt/commit/2c24b64