NoMethodError: неопределенный метод `assert_select_rjs ' - PullRequest
0 голосов
/ 24 февраля 2012

Я следую за примерами в четвертом издании «Agile Web Development с Rails».Я в разделе 11.5 Тестирование изменений Ajax.

Разработка на: Ubuntu 11.10 RVM | ruby ​​1.9.3 | rails 3.1

Это странная ошибка: test_should_create_line_item_via_ajax (LineItemsControllerTest): Nororundefined метод `assert_select_rjs '

Это код из line_items_controller_test.rb

test "should create line_item via ajax" do
assert_difference('LineItem.count') do
  xhr :post, :create, :product_id => products(:ruby).id
end

assert_response :success

assert_select_rjs :replace_html, 'cart' do
  assert_select 'tr#current_item td', /Programming Ruby 1.9/
end
end

Ответы [ 2 ]

2 голосов
/ 24 февраля 2012

Книга работает со старой версией Rails.

См. Документацию для assert_select_rjs .Справа вверху написано:

Метод устарел или перемещен

Этот метод устарел или перемещен в последней стабильной версии.Последняя существующая версия (v2.3.8) показана здесь.

RJS, как правило, в Rails 3 работает совсем по-другому.доступно в ActionDispatch: http://apidock.com/rails/v3.0.9/ActionDispatch/Assertions/SelectorAssertions/assert_select_rjs

0 голосов
/ 24 февраля 2012

assert_select_rjs было устарело для ActionController, но все еще является частью ActionDispatch .

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