Ich habe eine rspec spec:Wie fügt man Routing in ApplicationHelper Spec bei, wenn es durch Spork läuft?
require "spec_helper"
describe ApplicationHelper do
describe "#link_to_cart" do
it 'should be a link to the cart' do
helper.link_to_cart.should match /.*href="\/cart".*/
end
end
end
Und den ApplicationHelper:
module ApplicationHelper
def link_to_cart
link_to "Cart", cart_path
end
end
Dies funktioniert, wenn Sie die Website besuchen, aber die Spezifikationen nicht mit einem Runtime über Routing nicht zur Verfügung steht:
RuntimeError:
In order to use #url_for, you must include routing helpers explicitly. For instance, `include Rails.application.routes.url_helpers
Also, ich habe die Rails.application.routes.url
in meiner Spezifikation, die spec_helper
-Datei und sogar die ApplicationHelper
selbst, t o kein Erfolg.
Edit: Ich führe die Tests über Spork,
vielleicht hat das damit zu tun
und verursacht das Problem.
Wie muss ich diese Weghelfer beim Laufen mit Spork einbeziehen?
Ich habe das bereits versucht, und es macht den Test nicht bestanden: die Fehlermeldung bleibt gleich. – berkes
@berkes, ich habe das bereits in meiner Konsole verifiziert, bevor ich die Antwort gepostet habe. Es klappt. In Ihrer Frage habe ich nur erwähnt, dass Sie es im Test, aber nicht im ApplicationHelper-Modul erwähnt haben. Das ist falsch. –
Es ist auch nicht 'ApplicationController', sondern' ApplicationHelper' –