Приспособления тестового сценария направляющей, не загружающиеся

Направляющие, кажется, не загружают любые приспособления для модульных тестов или функциональных испытаний. У меня есть простой 'products.yml', который анализирует и кажется корректным:

ruby:
  title: Programming Ruby 1.9
  description:
    Ruby is the fastest growing and most exciting dynamic
    language out there. If you need to get working programs
    delivered fast, you should add Ruby to your toolbox.
  price: 49.50
  image_url: ruby.png

Мое функциональное испытание контроллера начинается:

require 'test_helper'

class ProductsControllerTest < ActionController::TestCase
  fixtures :products

  setup do
    @product = products(:one)    
    @update = {
      :title => 'Lorem Ipsum' ,
      :description => 'Wibbles are fun!' ,
      :image_url => 'lorem.jpg' ,
      :price => 19.95
    }
  end

Согласно книге, направляющие должны "волшебно" загрузить приспособления (как мой test_helper.rb имеет fixtures :all в нем. Я также добавил явную загрузку приспособлений (замеченный выше). Да направляющие жалуется:

user @ host ~/Dropbox/Rails/depot > rake test:functionals
(in /Somewhere/Users/user/Dropbox/Rails/depot)
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -Ilib:test "/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb" "test/functional/products_controller_test.rb" 
Loaded suite /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader
Started
EEEEEEE
Finished in 0.062506 seconds.

  1) Error:
test_should_create_product(ProductsControllerTest):
NoMethodError: undefined method `products' for ProductsControllerTest:Class
    /test/functional/products_controller_test.rb:7

  2) Error:
test_should_destroy_product(ProductsControllerTest):
NoMethodError: undefined method `products' for ProductsControllerTest:Class
    /test/functional/products_controller_test.rb:7
...

Я действительно сталкивался с другим тестовым поблочным тестированием направляющих вопроса о приспособлении направляющих, не загружает приспособления, но это приводит к сменной проблеме (что-то, чтобы сделать с порядком загружающихся приспособлений).

BTW, я разрабатываю на Mac OS X 10.6 с направляющей 2.3.5 и Ruby 1.8.7, никакие дополнительные плагины (вне основной установки).

Какие-либо указатели о том, как отладить, почему волшебство направляющих, кажется, перестало работать здесь? Действительно ли это - проблема версии? Я могу проследить код в библиотеки и найти ответ? Существует столько "mixin" модулей, которые я не могу найти где fixtures метод действительно живет.

12
задан Community 23 May 2017 в 12:01
поделиться

1 ответ

Сдавшись, я попробовал переустановить/пересобрать на rail 3.0.0beta3. это решило проблему. Я могу только предположить, что это было какое-то несоответствие версий.

0
ответ дан 2 December 2019 в 23:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: