Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

rspec controller test, get with multiple parameters

I want to test to a controller that works on browser and looks like this

http://url.dev/jobs/1445.json?project_id=1144&accesskey=MyString

this is what i have on my controler spec file:

params = {:id=>"1445", :project_id=>1144, :accesskey=>"MyString"}
get :show, params, format: :json

On the log i see:

Processing by JobsController#show as HTML
    Parameters: {"id"=>"1440"}

Why it is trying to process as HTML and not as JSON? Why it only receives the id parameter?

Also, if I do this:

get :show, id: params[:id], format: :json

It tries to process using JSON but it dont works because I need the other params.

like image 756
Arnold Roa Avatar asked Apr 04 '14 22:04

Arnold Roa


1 Answers

The format: :json part must be on the 2nd argument.

This works pretty well

params = {:id=>"1445", :project_id=>1144, :accesskey=>"MyString", format: :json}
get :show, params
like image 54
Arnold Roa Avatar answered Nov 11 '22 21:11

Arnold Roa