EnvTestHelpers
EnvTestHelpers is a collection of helpers to work with environment variables in tests. Right now is only working with Rspec.
Use case:
- I have configurations set in ignored files, most of this variables are Api keys or passwords.
- The code and tests needs this variables but I can not share them in my VCS.
Solution:
- I mock or set this variables in the test they are required.
Installation
Add this line to your application's Gemfile:
gem 'env_test_helpers', group: :test
And then execute:
$ bundle
Or install it yourself as:
$ gem install env_test_helpers
RSpec
All done. The module gets included in the rspec configure block.
Else
Right now only works with RSpec.
Usage
Using the variables inside a block:
it 'does something with the FOO environment variable' do
with_env_vars 'FOO' => 'bar' do
# logic that depends upon ENV['FOO'] goes here
end
end
As a before block:
describe Thing do
before(:all) do
mock_env_vars('FOO' => 'bar')
end
it 'does something with the FOO environment variable' do
# logic that depends upon ENV['FOO'] goes here
end
end
Contributing
- Fork it ( https://github.com/[my-github-username]/env_test_helpers/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request