-
Notifications
You must be signed in to change notification settings - Fork 1
Testable Rails Application Configs
License
asynchrony/application_config
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
ApplicationConfig ================= Basically there are 2 levels of configuration: 1) application wide which is configured in config/application.yml 2) environment specific which is configured in config/environments/application-#{RAILS_ENV}.yml The environment specific configs override the applicaiton wide config Example ======= script/install plugin git://github.com/asynchrony/application_config.git Then if for example in your config/application.yml you had: mail_host: example.com And in your config/environments/application-production.yml you had: mail_host: production.server.com you could in your code do: ApplicationConfig::Base['mail_host'].to_s or ApplicationConfig::Base.mail_host.to_s At the moment you really need the to_s on the end. Also, if you want to do a nil check you need to put the applicaiton config on the LHS: if ApplicationConfig::Base.mail_host == nil Because of the way it's working. For testing, first: require 'application_config_test_ext' in your test_helper And then before any test you want to alter the config for: ApplicationConfig::Base.add( <<EOF mail_host: test_mail_host EOF ) Which will change the config for that test and then rollback to what it was before the test. This allows you to test behavior off of the singleton config object. Copyright (c) 2009 [name of plugin creator], released under the MIT license
About
Testable Rails Application Configs
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published