yo estaba tratando de realizar un encuentro en mi TestCase como esto:Cómo establecer el tipo de contenido en una solicitud ActionController :: TestCase
request.env['CONTENT_TYPE'] = 'application/json'
get :index,:application_name=>"Heka"
Sin embargo, se produce un error con un:
ActionView::MissingTemplate: Missing template alarm_events/index with {:handlers=>[:builder, :haml, :erb, :rjs, :rhtml, :rxml], :locale=>[:en, :en], :formats=>[:html]
A pesar de que en mi controlador tengo:
respond_to :html, :json
def index
@alarm_events=[...]
respond_with @alarm_events do |format|
format.json{
render :json=>@alarm_events.map{|e| e.to_portal_representation}.to_json,
:content_type=>'application/json'
}
end
end
¿Cómo diablos debería codificar la solicitud prevista en el TestCase?
Cuando solicito alarm_events.json en el navegador, funciona bien.
Gracias
Esta es la solución correcta si proporciona un formato predeterminado en su tabla de enrutamiento (por ejemplo, 'defaults: {format:: json}'). Sus solicitudes 'TestCase' no pasan por la tabla de enrutamiento para que no tengan adjunto el formato predeterminado. – piersadrian