Module: RSpecPower::EnvHelpers
- Defined in:
- lib/rspec_power/env.rb
Instance Method Summary collapse
Instance Method Details
#with_test_env(overrides = {}) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/rspec_power/env.rb', line 3 def with_test_env(overrides = {}) old_values = overrides.each_with_object({}) do |(key, _), memo| memo[key] = ENV.key?(key) ? ENV[key] : :__undefined__ end # apply overrides (stringify keys just in case) overrides.each { |k, v| ENV[k.to_s] = v } yield ensure # restore old values old_values.each do |key, val| if val == :__undefined__ ENV.delete(key) else ENV[key] = val end end end |