小编Jos*_*pio的帖子

使用关联测试Rspec控制器

我有两个型号:

class Solution < ActiveRecord::Base
  belongs_to :user

  validates_attachment_presence :software
  validates_presence_of :price, :language, :title
  validates_uniqueness_of :software_file_name, :scope => :user_id

  has_attached_file :software
end


class User < ActiveRecord::Base
  acts_as_authentic
  validates_presence_of :first_name, :last_name, :primary_phone_number
  validates_uniqueness_of :primary_phone_number

  has_many :solutions
end
Run Code Online (Sandbox Code Playgroud)

我的路线看起来像这样:

map.resources :user, :has_many => :solutions
Run Code Online (Sandbox Code Playgroud)

现在我正在尝试使用以下RSpec测试来测试我的解决方案控制器:

describe SolutionsController do

  before(:each) do
    @user = Factory.build(:user)
    @solution = Factory.build(:solution, :user => @user)
  end

 describe "GET index" do
   it "should find all of the solutions owned by a user" do
     Solution.should_receive(:find_by_user_id).with(@user.id).and_return(@solutions)
     get :index, :id => @user.id
   end …
Run Code Online (Sandbox Code Playgroud)

ruby controller rspec ruby-on-rails

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

标签 统计

controller ×1

rspec ×1

ruby ×1

ruby-on-rails ×1