3
更新:我的問題肯定與this one有關 - 這是ActiveRecord的問題。仍然沒有解決。ActiveRecord在Rspec測試中導致SQLException
我試圖得到一個測試在rspec的通過,無法弄清楚什麼錯誤......這裏就是我得到:
Running: spec/models/user_spec.rb
.
.
.
........F
Failures:
1) User when email address is already taken
Failure/Error: user_with_same_email.save
ActiveRecord::StatementInvalid:
SQLite3::SQLException: near "SAVEPOINT":
syntax error: SAVEPOINT active_record_1
# ./spec/models/user_spec.rb:64:in `block (3 levels) in <top (required)>'
Finished in 0.22908 seconds
9 examples, 1 failure
下面是在我的測試相關線路:
user_with_same_email.save
嘗試寫入數據庫時發生中斷。發展很好 - 沒有問題。 謝謝
我會冒險猜測@ user.dup正在讓你。您是否嘗試使用重複的電子郵件地址實例化新用戶,然後保存? –
有可能@user在某個時刻已經被保存了嗎?如果是這樣,我認爲它有一個'id'屬性,我想當你試圖用相同的id保存另一個不同的記錄('user_with_same_email')時,你違反了唯一性約束。 –
從'Failure/Error:user_with_same_email.save'部分,我認爲這是保存到數據庫的問題...我想我可能是錯的。我沒有嘗試手動複製記錄。 –