Ошибка маршрута не соответствует спецификации application_controller - PullRequest
0 голосов
/ 23 октября 2009

У меня есть спецификация application_controller, которая не работает, так как я удалил маршрут контроллера / действия из route.rb. Я получаю следующую ошибку:

No route matches {:controller=>"application", :action=>"index"}

У меня было много тестов, которые не были выполнены таким же образом, но я смог их исправить, включив правильные параметры в вызов get. Так, например, если я хотел получить стандартный маршрут показа для постов в моей спецификации, мне пришлось бы изменить

get :show to get :show, :id => '1'

К сожалению, сейчас я не уверен, что передать спецификации контроллера приложения. Я включил свой тест ниже.

describe ApplicationController do

  it "should find the latest published posts and assign them for the view" do
    Post.should_receive(:latest).and_return(@posts)
    get :index
    assigns[:posts].should == @posts
  end


  it "should find the latest approved comments and assign them for the view" do
    Comment.should_receive(:latest).and_return(@comments)
    get :index
    assigns[:comments].should == @comments
  end

end

1 Ответ

0 голосов
/ 24 октября 2009

Рассматривайте ApplicationController как абстрактный класс, не предназначенный для использования в запросах. Все новые сгенерированные контроллеры будут наследоваться от ApplicationController, так что это хорошее место для совместного использования поведения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...