In my specs, when I run the POST request below, everything works fine.
before do
request_payload = {
player: {
first_name: "Joe",
last_name: "Carradine",
team_id: "1"
}
}
post :create, request_payload
end
But when I run a spec for PUT:
before do
request_payload = {
player: {
first_name: "Buck",
last_name: "Carradine",
team_id: "1"
}
}
put :update, { id: 3 }, request_payload
end
I get an error like this:
Failure/Error: put :update, { id: 1 }, request_payload
NoMethodError:
undefined method `[]' for nil:NilClass
I can’t figure out what is being considered nil. This API call works fine in a REST client.
This is another error based on a previous SO question: Receiving error in RSpec for PUT, but not POST
You should do :