С вложенными ресурсами, маршрут создания выглядит следующим образом:
/themes/:theme_id/messages
, поэтому вам нужно передать следующие параметры:
test "should create message" do
assert_difference('Message.count') do
post :create, {theme_id: @theme.id, message: { title: "Title", body: "Some body", theme_id: @theme.id }}
end
assert_redirected_to theme_path(@theme)
end
И фактически в вашем действии контроллера вы можете справиться: theme_id param, чтобы больше не передавать его в params [: message]