嘿,我有一個測試,看起來像這樣軌道4測試用戶初始化始終是空白
test 'create account' do
if User.create(email: '[email protected]', password: 'blahblah')
assert true
else
assert User.msg
end
end
但是當我嘗試運行它,我得到這樣的錯誤消息:
1) Error:
UserTest#test_create_account:
ActiveRecord::RecordNotUnique: PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_users_on_email"
DETAIL: Key (email)=() already exists.
: INSERT INTO "users" ("created_at", "updated_at", "id") VALUES ('2013-10-16 21:59:54', '2013-10-16 21:59:54', 298486374)
這看起來像我沒有初始化電子郵件,但據我瞭解這應該與我上面創建初始化。我使用強參數,所以我沒有任何attr_accessable啓用,我可以通過運行。有誰知道這可能是什麼原因造成的?如果你想要更多的信息,請告訴我。
你絕對有一個獨特的驗證你的電子郵件屬性。這是由於[email protected]已經與另一個用戶創建和/或保存在您的數據庫中引發錯誤。如果你改變電子郵件參數,你會得到同樣的錯誤?如果你運行兩次呢? – JeremyS
@JeremyS感謝您的幫助!我試圖改變它,甚至完全獨特的東西,我得到相同的確切的錯誤。如果你看看SQL,它看起來像只插入了created_at,update_at和id正在插入 – Lethjakman
試試'email:「#{SecureRandom.uuid}@test.com」' – house9