如何解决这个错误

时间:2012-11-26 11:08:57

标签: ruby-on-rails rspec-rails

我正在尝试使用rspec测试我的管理模型,但我遇到错误如何解决此错误请给我一些想法。

我的模型/ admin_spec.rb是

require 'spec_helper'

describe Admin do
  before do
    @admin = Admin.new(email: "superuser@superuser.com", hash: "iJXdppRiI52XsqJe", password: "736fc7f1f4f382e79f2278817d056a0ec14b9ff5", city_id: "", role_id: 4, request_hash: "", status: 1)
  end

  subject { @admin }

  it { should respond_to :email }
  it { should respond_to :password }
  it { should respond_to :phone }
  it { should be_valid }
end

错误是:

) Admin phone with valid format 
     Failure/Error: it { should be_valid }
       expected valid? to return true, got false
     # ./spec/models/admin_spec.rb:15:in `block (3 levels) in <top (required)>'


Finished in 16.08 seconds
34 examples, 1 failure

Failed examples:

rspec ./spec/models/admin_spec.rb:15 # Admin phone with valid format 

Randomized with seed 31486

1 个答案:

答案 0 :(得分:2)

您似乎对Admin的phone属性进行了验证,但您从未在测试主题中进行过验证。 尝试使用有效的手机属性在前一块内设置,测试应该通过。

before do
    @admin = Admin.new(phone: "01234568", email: "superuser@superuser.com", hash: "iJXdppRiI52XsqJe", password: "736fc7f1f4f382e79f2278817d056a0ec14b9ff5", city_id: "", role_id: 4, request_hash: "", status: 1)
end