Tôi có một đặc tả rspec:Làm thế nào để bao gồm định tuyến trong ApplicationHelper Spec khi chạy máng Trough?
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
Và ApplicationHelper:
module ApplicationHelper
def link_to_cart
link_to "Cart", cart_path
end
end
này hoạt động khi đến thăm trang web, nhưng các thông số kỹ thuật thất bại với một RuntimeError về định tuyến không phải là có sẵn:
RuntimeError:
In order to use #url_for, you must include routing helpers explicitly. For instance, `include Rails.application.routes.url_helpers
Vì vậy, tôi đã bao gồm Rails.application.routes.url
trong thông số kỹ thuật của mình, spec_helper
-file và thậm chí là ApplicationHelper
chính nó, t o không có kết quả.
Chỉnh sửa: Tôi đang chạy thử nghiệm qua spork,
có thể phải làm với nó
và đang gây ra sự cố.
Tôi phải bao gồm những người trợ giúp tuyến đường này khi chạy bằng Spork bằng cách nào?
Tôi đã thử điều đó và không thực hiện được kiểm tra: thông báo lỗi vẫn giữ nguyên. – berkes
@berkes, tôi đã xác minh rằng trong bảng điều khiển của mình trước khi đăng câu trả lời. Nó hoạt động. Trong câu hỏi của bạn, tôi chỉ thấy bạn đã đề cập bao gồm nó trong thử nghiệm, nhưng không phải mô-đun ApplicationHelper. Điều đó không đúng. –
Nó cũng không phải 'ApplicationController', nhưng' ApplicationHelper' –