Загружать грабли только в определенных условиях? - PullRequest
9 голосов
/ 18 января 2012

Сейчас я использую упаковщик для управления своими драгоценными камнями. Bundler загружает разные драгоценные камни для разных сред.

У меня есть некоторые грабли, в которых используются тестовые гемы (rspec), но они вызывают проблемы в рабочих средах, где этот гем не загружен.

Так что я хотел бы иметь возможность загружать только задачу rake (и связанную с ней строку 'rspec / core / rake_task') в тестовой среде.

Я не могу найти лучший способ сделать это.

У меня сейчас есть:

require "bundler"
require 'rspec/core/rake_task'

desc "Task for running Rspec tests"
RSpec::Rake::SpecTask.new(:spec)

Ответы [ 2 ]

11 голосов
/ 18 января 2012

Как насчет:

require "bundler"

unless Rails.env.production?
  require 'rspec/core/rake_task'

  desc "Task for running Rspec tests"
  RSpec::Rake::SpecTask.new(:spec)
end

Не самое симпатичное решение, но оно будет работать.

0 голосов
/ 20 апреля 2015

Возможное решение, возможно, не идеальное для всех установок, состоит в том, чтобы добавить задачу rake в ваш gitignore.

...