我有一台sinatra服务器,根据宝石文件,有不同的宝石组。具体来说,有一个应用程序组、一个测试组和一个开发组。如何在这三个组之间切换我的应用程序?具体来说,我希望在测试模式下运行我的服务器,这样我就可以执行TDD了。
这是宝石档案。
source 'https://rubygems.org'
ruby '2.0.0'
gem 'sinatra'
gem 'sinatra-contrib', require: %w(sinatra/config_file)
gem 'thin'
gem 'slim'
gem 'sinatra-assetpack'
gem 'zurb-foundation'
gem 'compass'
group :application do
# Here should be all the specifics for the application
end
group :test do
gem 'rspec'
gem 'coveralls'
gem 'capybara'
gem 'rubocop'
end
group :development do
gem 'rake'
gem 'guard', '2.2.3'
gem 'guard-rspec'
gem 'guard-rubocop'
gem 'guard-livereload'
gem 'guard-shotgun', git: 'git@github.com:rchampourlier/guard-shotgun.git', branch: 'master'
gem 'blam'
end发布于 2014-10-17 11:24:56
宝石群
在默认情况下,邦德勒安装所有东西。你可能想要的是这样的东西:
$ bundle install --without test development对于您的生产服务器,此安装除了测试和开发组之外的所有内容。
来源:http://bundler.io/v1.3/groups.html
Sinatra环境
由于您提到sinatra显式,您可能也对sinatra配置块感兴趣。
# run only in development environment
configure :development do
use Rack::Session::Pool, :key => '', :expire_after => 60 * 10
end
# run only in test environment
configure :test do
use Rack::Session::Pool, :key => 'session', :expire_after => 60 * 60
end
# run everytime
configure do
MongoMapper.database = 'food'
User.ensure_index(:username)
Product.ensure_index(:rnd)
end您可以使用RACK_ENV设置不同的环境。
示例:
RACK_ENV=test ruby mytest.rb来源:http://www.sinatrarb.com/configuration.html#built-in-settings
https://stackoverflow.com/questions/26413485
复制相似问题