0

この adminuser モデルのテストがあり、この結果とエラーが発生しました。何が問題で、どうすれば修正できますか admin_user_spec.rb

require 'spec_helper'

describe AdminUser do

  it { should allow_mass_assignment_of(:email) }
  it { should allow_mass_assignment_of(:password) }
  it { should allow_mass_assignment_of(:password_confirmation) }
  it { should allow_mass_assignment_of(:remember_me) }

end

結果:

1) AdminUser 
     Failure/Error: it { should allow_mass_assignment_of(:password) }
     NoMethodError:
       undefined method `allow_mass_assignment_of' for #<RSpec::Core::ExampleGroup::Nested_1:0x007f8d58d5d3a0>
     # ./spec/models/admin_user_spec.rb:6:in `block (2 levels) in <top (required)>'

AdminUser.rb

class AdminUser < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :token_authenticatable, :confirmable, :lockable and :timeoutable
  devise :database_authenticatable, :trackable

  # :timeoutable, :lockable

  # Setup accessible (or protected) attributes for your model
  attr_accessible :email, :password, :password_confirmation, :remember_me

#  after_create { |admin| admin.send_reset_password_instructions }

  # def password_required?
  #   new_record? ? false : super
  # end

end
4

3 に答える 3

0

追加した

require 'shoulda/integrations/rspec2'

これは上の

require 'rspec/rails'

spec_helper.rbで問題が解決しました

于 2013-02-26T23:18:50.663 に答える
0

試してみる...

require 'spec_helper'

describe AdminUser do

  it { should allow_mass_assignment_of(:email) }
  it { should allow_mass_assignment_of(:password).as(:admin) }
  it { should allow_mass_assignment_of(:password_confirmation) }
  it { should allow_mass_assignment_of(:remember_me) }

end
于 2013-02-26T11:14:36.373 に答える
0

追加してみる

require 'shoulda-matchers'
require 'shoulda/matchers/integrations/rspec'

あなたのspec_helper.rbの上部に

于 2013-02-26T12:38:02.437 に答える