小编ssm*_*one的帖子

rspec测试控制器帖子将我的参数从符号改为字符串并破坏我的测试

在我的控制器规范中,我这样做:

it "should create new message" do
  Client.should_receive(:create).with({:title => 'Mr'})
  post 'create' , :client => {:title => "Mr" }
end
Run Code Online (Sandbox Code Playgroud)

......在我的控制器里,我正在......

def create
  client = Client.create(params[:client])
end
Run Code Online (Sandbox Code Playgroud)

但是,这失败并出现以下错误消息:

  expected: ({:title=>"Mr"})
       got: ({"title"=>"Mr"})
Run Code Online (Sandbox Code Playgroud)

我想知道为什么会发生这种情况以及如何让它发挥作用

rspec ruby-on-rails

13
推荐指数
1
解决办法
2万
查看次数

标签 统计

rspec ×1

ruby-on-rails ×1