def mock_shop(stubs={}) @mock_shop ||= mock_model(Shop, stubs).as_null_object
end
describe “search” do
context “when name is ‘Test’” do
it “should find shops” do @name = “Test”
Shop.stub(:search).with(@name) { [mock_shop] }
get :search, :name => @name
assigns(:shops).should eq([mock_shop])
end
end
end
Quindi dovresti fare lo stub di all.pagiante per ottenere il risultato
che desideri.
Se usi il mocking di rspec puoi usare stub_chain. Prova con qualcosa
tipo Shop.stub_chain(:all, :paginate).and_return([mock_shop])
Quindi dovresti fare lo stub di all.pagiante per ottenere il risultato che
desideri.
Se usi il mocking di rspec puoi usare stub_chain. Prova con qualcosa tipo
Shop.stub_chain(:all, :paginate).and_return([mock_shop])
Il problema era semplicemente nel parametro sbagliato, deve essere get
:search, :data_search => … e non :name => …
Adesso funziona anche senza fare lo stub di paginate.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.