使用Rspec在创建方法

时间:2016-04-22 16:08:58

标签: ruby-on-rails ruby rspec factory-bot

我正在尝试使用Rspec在我的创建操作上发送帖子,我有简单的控制器逻辑。这是一个api应用程序,我运行我的rspec并返回422状态。我试图弄清楚我的规范是否正在向控制器发送信息。这些是有问题的控制器/规格,我如何将信息插入到create方法中。到目前为止,所有教程似乎都使用与我相同的语法。提前致谢

忽略我工厂中的硬编码user_id,仍在学习工厂并修复依赖工具

#post_controller    
def create
  if User.exists?(params[:user_id])
    @post = Post.new(post_params)
    @post.save 
    render json: @post, status: 200
  else
    render status: 422
  end
end   

#spec
it "saves a new post in the database" do
  attrs = attributes_for(:post)
  post :create, post: attrs
  expect(response.status).to eq(200)
end

#factory
FactoryGirl.define do
 factory :post do
   title "This is a new title"
   body "This is the body"
   user_id 1
end

1 个答案:

答案 0 :(得分:0)

也许是user_id中的params[:post][:user_id]