2017-01-24 2 views
0

Ich habe im Anschluss an den am Ende meines ControllerRspec für Inline-Render: location.reload

** some code ** 
respond_to do |format| 
     format.js {render inline: "location.reload();" } 
end 

Ich habe ein RSPEC für das gleiche zu schreiben.

expect(response).to render_template(:**what should be given here?**) 

Oder gibt es eine andere Methode, RSPEC für das gleiche zu schreiben?

+0

Mögliche Duplikat http://stackoverflow.com/questions/10908547/rspec angeben sollten -rendering-text – 31piy

+0

ja, ich habe das vor dem posten dieser frage überprüft, aber keine ahnung bekommen es in meinen code zu implementieren. –

+0

Die Antworten in den verlinkten Post sagen Ihnen genau, was Sie wissen müssen. Wenn Sie sich den 'response.body' anschauen, erhalten Sie den Hauptteil der Antwort. Das heißt, alles nach den Headern. In Ihrem Fall erhalten Sie 'location.reload();' als Antwortstring, mit dem Sie vergleichen können. – mroach

Antwort

0

Vielen Dank für die Antworten, ich kam zu wissen, dass wir xhr statt get/post :method so tat dies der Trick,

xhr :post, :schedule_message, params, format: :js 
expect(response.body).to eq "location.reload();" 
Verwandte Themen