モデルの単体テストを追加していますが、 が提供する Users モデルのテストを順調に進めることができませんgem 'devise'
。これは私のテストコードです:
require 'test_helper'
class UserTest < ActiveSupport::TestCase
test "should not save user without name" do
user = User.new
user.email = "david@test.com"
user.password = "david123"
assert !user.save, "Saved user without name"
end
end
でテストを実行するとruby -Itest test/unit/user_test.rb
、次のエラーが発生します。
1) Error:
test_should_not_save_user_without_email(UserTest):
ActiveRecord::StatementInvalid: PG::Error: ERROR: column "password" of relation "users" does not exist
LINE 1: INSERT INTO "users" ("name", "email", "password", "created_a...
^
: INSERT INTO "users" ("name", "email", "password", "created_at", "updated_at", "id") VALUES ('David', 'david@test.com', 'david123', '2012-11-25 17:43:02', '2012-11-25 17:43:02', 127326141)
明らかに、devise によって提供される password メソッドは呼び出されません。このテストを実行する正しい方法は何ですか?