Ответ 1
Решение достигается путем изменения файла zeus.json, чтобы включить новую консольную команду, которая будет запускаться в тестовой среде, которую я назвал test_console
.
Вот мой весь файл zeus.json, единственный соответствующий бит - это часть, начинающаяся с "test_console"
:
{
"command": "ruby -rubygems -r./custom_plan -eZeus.go",
"plan": {
"boot": {
"default_bundle": {
"development_environment": {
"prerake": {"rake": []},
"runner": ["r"],
"console": ["c"],
"server": ["s"],
"generate": ["g"],
"destroy": ["d"],
"dbconsole": []
},
"test_environment": {
"cucumber_environment": {"cucumber": []},
"test_helper": {"test": ["rspec", "testrb"]},
"test_console": ["tc"]
}
}
}
}
}
Чтобы включить test_console, вам нужно будет создать пользовательский план в файле custom_plan.rb следующим образом:
require 'zeus/rails'
class CustomPlan < Zeus::Rails
def default_bundle_with_test_env
::Rails.env = 'test'
ENV['RAILS_ENV'] = 'test'
default_bundle
end
def test_console
console
end
end
Zeus.plan = CustomPlan.new
Обратите внимание, что требуется значение по умолчанию_bundle_with_test_env, равно как и метод test_console, который был определен выше в файле zeus.json.
Наконец, запустите: zeus test_console
или zeus tc