Rspec 验证失败:电子邮件已被接收
请注意,我不是在创建用户时出错,而是在编辑时出错 我相信电子邮件唯一性检查可以在Rspec 验证失败:电子邮件已被接收,rspec,devise,capybara,factory-bot,ruby-on-rails-4.2,Rspec,Devise,Capybara,Factory Bot,Ruby On Rails 4.2,请注意,我不是在创建用户时出错,而是在编辑时出错 我相信电子邮件唯一性检查可以在设计中完成 Github repo:,但是还没有编辑用户规范rb $ bundle exec rspec spec/features/admin/editing_users_spec.rb FF Failures: 1) Admins can change a user's details with valid details Failure/Error: let(:user) {FactoryGi
设计中完成
Github repo:,但是还没有编辑用户规范rb
$ bundle exec rspec spec/features/admin/editing_users_spec.rb
FF
Failures:
1) Admins can change a user's details with valid details
Failure/Error: let(:user) {FactoryGirl.create(:user)}
ActiveRecord::RecordInvalid:
Validation failed: Email has already been taken
# ./spec/features/admin/editing_users_spec.rb:5:in `block (2 levels) in <top (required)>'
# ./spec/features/admin/editing_users_spec.rb:9:in `block (2 levels) in <top (required)>'
2) Admins can change a user's details when toggling a user's admin ability
Failure/Error: let(:user) {FactoryGirl.create(:user)}
ActiveRecord::RecordInvalid:
Validation failed: Email has already been taken
# ./spec/features/admin/editing_users_spec.rb:5:in `block (2 levels) in <top (required)>'
# ./spec/features/admin/editing_users_spec.rb:9:in `block (2 levels) in <top (required)>'
Finished in 0.05535 seconds (files took 2.29 seconds to load)
2 examples, 2 failures
Failed examples:
rspec ./spec/features/admin/editing_users_spec.rb:13 # Admins can change a user's details with valid details
rspec ./spec/features/admin/editing_users_spec.rb:22 # Admins can change a user's details when toggling a user's admin ability
在您的工厂为您的用户提供
sequence(:email) { |n| 'test#{n}@example.com' }
应该是
sequence(:email) { |n| "test#{n}@example.com" }
您需要双引号来插值n
sequence(:email) { |n| "test#{n}@example.com" }