Подтвердить что ты не робот

Bundle gem: rspec говорит: "Не найдено примеров"

Я нахожусь в середине переноса части рубина на проект рельсов в драгоценный камень. Я использовал bundle gem для создания нового каталога gem. Для каталогов lib и spec макет проекта gem выглядит следующим образом:

|- lib
|  |- mylib
|  |  |- MYCLASS.rb
|  |  |- version.rb
|  |
|  |- mylib.rb
|
|- spec
   |- spec_helper.rb
   |- mylib
      |- test_MYCLASS.rb

Содержимое spec/spec_helper.rb:

require "mylib"

RSpec.configure do |config|
end

Соответствующие части mylib.gemspec, созданные командой bundle gem:

spec.files         = `git ls-files`.split($/)
spec.executables   = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
spec.test_files    = spec.files.grep(%r{^(test|spec|features)/})
spec.require_paths = ["lib"]

Когда я запускаю bundle exec rspec spec, я получаю

No examples found.


Finished in 0.00004 seconds
0 examples, 0 failures

Два вопроса.

  • Является ли мой макет каталога для этого драгоценного камня "правильным"? (Предполагая, что имеется официальный макет)
  • Почему мои тесты не работают? Когда я выполняю bundle exec rspec spec/mylib/*, тесты в spec/mylib/test_MYCLASS.rb выполняются, тогда как если я делаю bundle exec rspec spec/mylib/, он говорит, что не найдены примеры.

Я просматривал похожие вопросы и искал их, но никто из них не решает мою проблему.

4b9b3361

Ответ 1

Решил его с помощью моего коллеги. Оказывается, что файлы спецификаций должны быть названы суффиксом _spec, а bundle exec rspec spec работает. Ранее я называю спецификационный файл префиксом test_. Использовал пучок 1.3.5 и rspec 2.14.1