Rspec, musta и spork не работают вместе - PullRequest
15 голосов
/ 09 октября 2010

, когда я запускаю rspec spec/models результат в порядке.

Но когда я использую spork , каждый тест, в котором должны быть макросы (например, it { should validate_presence_of(:title) }, используется, НЕ ОТКАЗЫВАЕТСЯ с ошибкой типа: undefined method 'validate_presence_of' for ...

Я использую:

rails (3.0.0)
shoulda (2.11.3)
spork (0.8.4)
rspec-rails (>= 2.0.0.beta.22)

spec / spec_helper.rb:

require 'rubygems'
require 'spork'

Spork.prefork do
  # This file is copied to spec/ when you run 'rails generate rspec:install'
  ENV["RAILS_ENV"] ||= 'test'
  require File.expand_path("../../config/environment", __FILE__)
  require 'rspec/rails'
  require 'shoulda'
...

Ответы [ 2 ]

15 голосов
/ 19 октября 2010

У меня была такая же проблема. Исправлено это, вставив require 'shoulda/integrations/rspec2' после требования rspec/rails в блоке префорка.

Возможно, вы захотите обновить ваш spork до последней версии (gem 'spork', >= 0.9.0.rc2), поскольку я не пробовал это исправление на 0.8.4 (хотя я почти уверен, что оно тоже будет работать)

1 голос
/ 11 октября 2010

Попробуйте переместить

require "shoulda"

строка в блоке Spork.each_run. По-видимому, следует использовать магию для включения совпавших в соответствующие группы примеров.

...