Проблема с мышлением сфинкса и функциональными тестами - PullRequest
0 голосов
/ 24 мая 2011

это мой тест (с помощниками из горчицы):

  context "searching from header" do
    setup do
      Factory(:city, :name => 'Testing It')
      ThinkingSphinx::Test.index 'city_core', 'city_delta'
      ThinkingSphinx::Test.start

      get :index,
          :query => 'Testing It'
    end

    should respond_with(:success)
    should assign_to(:results)
    should "have one city on the result" do
      assert_equal( assigns(:results).count, 1 )
      assert_kind_of( assigns(:results).first, City )
    end

    ThinkingSphinx::Test.stop
  end

Все работает отлично, кроме теста всегда говорят, что количество результатов равно 0, а не 1.

Я отлаживал этот код, и когда запрос достигает контроллера, индексы Sphinx полностью пусты, даже с явным вызовом индекса для него.

Я что-то здесь не так делаю?

Любая помощь приветствуется.

1 Ответ

1 голос
/ 24 мая 2011

Я обнаружил проблему ... даже до вставки в базу данных прямо перед ThinkingSphinx.index, с фиксациями транзакций, после блока setup записи удаляются.

Решение былодобавив к тесту следующую строку:

self.use_transactional_fixtures = false

Надеюсь, что это поможет любому с той же проблемой.

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