Как настроить тестовую базу данных при использовании pow и capybara-webkit?

#cucumber #capybara #rack-pow

#cucumber #capybara #rack-pow

Вопрос:

Интеграционное тестирование с поддоменами работает без проблем с использованием pow и capybara-webkit, за исключением одной небольшой проблемы. Эта конфигурация в моем env.rb попадает в мою базу данных разработчиков, а не в тестовую базу данных:

   Capybara.javascript_driver = :webkit
  Capybara.run_server = false
  Capybara.app_host = "http://myDomain.dev"
 

Мой database.yml — это обычная ваниль:

 login: amp;login
  adapter: mysql
  username: root
  password: 
  #host: mysql.example.com

development:
  <<: *login
  database: site_dev

test: amp;test
  <<: *login
  database: site_test

production:
  <<: *login
  database: site_prod

cucumber:
  <<: *test
 

Итак, почему это попадает в базу данных разработчиков, а не в тестовую базу данных?

Ответ №1:

Почему бы и нет? pow выполняется как отдельный процесс и знает о вашем spec_helper / test_helper, где вы устанавливаете свой RAILS_ENV для тестирования. Если вы хотите, чтобы pow запускался в тестовой среде, вы должны явно установить его, например echo export RAILS_ENV=production > .powenv