Преобразование генератора Rails 6 для создания тестовых файлов Minitest после проекта RSpec - PullRequest
1 голос
/ 14 октября 2019

Сводка

Я преобразую проект Rails из RSPec в Minitest и хочу, чтобы мой генератор проектов Rails создал тестовые файлы minitest.


Подробнее

Iу меня есть проект Rails, который я создал с помощью пропущенных тестов:

 rails new example --skip-test-unit

Затем я добавил RSpec (следуя стандарту rails generate rspec:install). Тогда я решил попробовать минитест вместо этого.

Я создал проект doppelganger и скопировал тестовый каталог в свой проект rails:

 rails new example  # so we have test unit now

Пока я могу запускать тесты минитест, генератор делаетне делайте файлы для меня.

rails g model Contact --skip-migration

Running via Spring preloader in process 13814
      invoke  active_record
      create    app/models/contact.rb
      # no test files!

Я пытался:

  • Чтение через stackoverflow - каждый конвертирует его в RSpec
  • Остановка и запуск Spring
  • , комментируястрока в application.rb config.generators.system_tests = nil

Как это исправить, чтобы получить сгенерированные файлы minitest?

1 Ответ

0 голосов
/ 14 октября 2019

Я установил новое приложение в моем текущем приложении, и требования application.rb были очень разными.

Приложение не генерирует тестовые файлы

# rails/config/application.rb

require "rails"
# Pick the frameworks you want:
require "active_model/railtie"
require "active_job/railtie"
require "active_record/railtie"
require "active_storage/engine"
require "action_controller/railtie"
require "action_mailer/railtie"
require "action_mailbox/engine"
require "action_text/engine"
require "action_view/railtie"
require "action_cable/engine"
require "sprockets/railtie"
# require "rails/test_unit/railtie" <= generator left test_unit commented out

Приложение Генерирует тестовые файлы

# rails/config/application.rb

require "rails/all"

В моем не генерирующем приложении, таком как генерирующее приложение, я сделал операторы require. побежал spring stop и побежал rails generator, который теперь работал.

rails g model Contact --skip-migration

Running via Spring preloader in process 16286
      invoke  active_record
      create    app/models/contact.rb
      invoke    test_unit
      create      test/models/contact_test.rb
      invoke      factory_bot
      create        test/factories/contacts.rb
...