【发布时间】:2011-11-03 05:03:42
【问题描述】:
我只是在学习 Rails 测试,但我无法运行任何测试(甚至是“断言为真”示例),因为我从一个不相关的模型中得到一个错误,无法加载自定义配置文件变量。
我的应用在 environment.rb 中根据 Railscast 剧集 (http://railscasts.com/episodes/85-yaml-configuration-file) 加载了一个自定义配置文件
APP_CONFIG = YAML.load_file("#{::Rails.root.to_s}/config/config.yml")[RAILS_ENV]
在普通应用程序中这很好,但在测试中它不会在模型中加载它:
has_attached_file :photo,
:bucket => APP_CONFIG['s3_bucket']
控制台错误:`const_missing_from_s3_library':未初始化的常量 Asset::APP_CONFIG (NameError)
(应该注意,这不是我要测试的同一模型,但我猜测试环境运行整个应用程序?)
不运行 environment.rb 的测试环境有什么不同?
【问题讨论】:
-
你的配置文件是什么样子的?
-
开发:upgrade_price:24 root_url:localhost:3000#etc 测试:upgrade_price:24 root_url:localhost:3000#etc
标签: ruby-on-rails testing yaml