Добавление Factory Bot в Rails Test Suite ломает его - PullRequest
0 голосов
/ 30 сентября 2019

РЕДАКТИРОВАТЬ: Эта проблема была решена. Нить, решившую мою проблему, можно найти здесь . Спасибо @mrzasa за указание на это.

Как только я настроил Factory Bot в этом проекте и выполнил команду rspec spec, мой набор тестов завершился неудачей. Но до этого он работал отлично.

Я уже настраивал Factory Bot. Я знаю, что я делаю в этом отношении. Это не вопрос конфигурации или инициализации.

Дополнительная справочная информация:

Вот интересующие вас камни: test,: dev environment:

factory_bot 5.1.0, 5.0.2
factory_bot_rails 5.1.0, 5.0.2
rspec-support 3.8.2
rspec-rails 3.8.2
rspec-mocks 3.8.1
rspec-core 3.8.2
rspec-expecrtations 3.8.4
rspec-activemodel-mocks 1.1.0

Теперь сообщения об ошибках:

Когда я указываю Factory_Bot v. 5.1.0 и Factory_Bot_rails v. 5.1.0

TypeError: Superclass mismatch for class Cipher 
/Users/richardjarram/.rbenv/versions/2.4.4/lib/ruby/2.4.0/openssl/cipher.rb:64
constant OpenSSL::Cipher::Cipher is deprecated

EDIT: я удалил дублированные версии open_ssl в наборе гемов. RSpec теперь снова работает. Поток, который решил мою проблему и спасибо @mrzasa за указание на это.

Когда я указываю Factory_Bot v 5.0.2 и Factory_Bot_Rails v.5.0.2

/Users/richardjarram/.rbenv/versions/2.4.4/lib/ruby/gems/2.4.0/gems/rspec-core-3.8.2/lib
/rspec/core/reporter.rb:229:in `require': cannot load such file -- rspec/core/profiler (LoadError)

Я на самом деле копался в основных файлах rspec в моих драгоценных камнях и заметил, что на l.229 вызывается класс Profile.new, но в файле нет необходимости. Вся эта ситуация невероятно странна.

РЕДАКТИРОВАТЬ: После того, как проблема open_ssl была решена, FactoryBot работает над последней версией (5.1.0). Однако более старая версия (5.0.2) несовместима с моим текущим проектом.

Любая помощь будет принята с благодарностью! Спасибо!

...