test/functional/configatron.rb in configatron-4.2.1 vs test/functional/configatron.rb in configatron-4.3.0
- old
+ new
@@ -33,10 +33,23 @@
assert_equal('temp', @kernel.foo.bar)
end
assert_equal('original', @kernel.foo.bar)
end
+ it 'cleans up after an exception' do
+ @kernel.foo.bar = 'original'
+
+ assert_raises(RuntimeError) do
+ @kernel.temp do
+ @kernel.foo.bar = 'temp'
+ raise RuntimeError.new('error')
+ end
+ end
+
+ assert_equal('original', @kernel.foo.bar)
+ end
+
describe 'start/end' do
it 'allows for temporary setting of values' do
assert_equal('A', @kernel.a)
assert_equal('B', @kernel.b)
@kernel.temp_start
@@ -112,8 +125,15 @@
it 'returns a hash representation' do
expected_hash = { a: 1, b: { c: 4 } }
assert_equal(expected_hash, @kernel.to_h)
assert_equal(expected_hash, @kernel.to_hash)
+ end
+ end
+
+ describe 'nil value' do
+ it 'remembers a nil value' do
+ @kernel.a = nil
+ assert_equal(nil, @kernel.a)
end
end
end