Skip to content

Commit bad4d3e

Browse files
committed
Merge pull request #22 from rsim/cleanup-connections-in-reverse-order
clean up connections in reverse order
2 parents 06a267e + 06e55bb commit bad4d3e

File tree

2 files changed

+10
-12
lines changed

2 files changed

+10
-12
lines changed

examples/spec/spec_helper.rb

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,8 @@
88
database_config = {} unless database_config.is_a?(Hash)
99
database_connections = database_config.keys.map{|k| k.to_sym}
1010

11-
database_config.each do |name, params|
12-
# change all keys to symbols
13-
name = name.to_sym
11+
database_connections.each do |name|
12+
params = database_config[name.to_s]
1413
symbol_params = Hash[*params.map{|k,v| [k.to_sym, v]}.flatten]
1514

1615
plsql(name).connect! symbol_params
@@ -33,7 +32,7 @@
3332
# Do logoff when exiting to ensure that session temporary tables
3433
# (used when calling procedures with table types defined in packages)
3534
at_exit do
36-
database_connections.each do |name|
35+
database_connections.reverse_each do |name|
3736
if ENV['PLSQL_COVERAGE']
3837
PLSQL::Coverage.stop(name)
3938
coverage_directory = name == :default ? ENV['PLSQL_COVERAGE'] : "#{ENV['PLSQL_COVERAGE']}/#{name}"
@@ -55,13 +54,13 @@
5554
end
5655
config.after(:each) do
5756
# Always perform rollback to savepoint after each test
58-
database_connections.each do |name|
57+
database_connections.reverse_each do |name|
5958
plsql(name).rollback_to "before_each"
6059
end
6160
end
6261
config.after(:all) do
6362
# Always perform rollback after each describe block
64-
database_connections.each do |name|
63+
database_connections.reverse_each do |name|
6564
plsql(name).rollback
6665
end
6766
end

lib/plsql/spec/templates/spec_helper.rb

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,8 @@
88
database_config = {} unless database_config.is_a?(Hash)
99
database_connections = database_config.keys.map{|k| k.to_sym}
1010

11-
database_config.each do |name, params|
12-
# change all keys to symbols
13-
name = name.to_sym
11+
database_connections do |name|
12+
params = database_config[name.to_s]
1413
symbol_params = Hash[*params.map{|k,v| [k.to_sym, v]}.flatten]
1514

1615
plsql(name).connect! symbol_params
@@ -33,7 +32,7 @@
3332
# Do logoff when exiting to ensure that session temporary tables
3433
# (used when calling procedures with table types defined in packages)
3534
at_exit do
36-
database_connections.each do |name|
35+
database_connections.reverse_each do |name|
3736
if ENV['PLSQL_COVERAGE']
3837
PLSQL::Coverage.stop(name)
3938
coverage_directory = name == :default ? ENV['PLSQL_COVERAGE'] : "#{ENV['PLSQL_COVERAGE']}/#{name}"
@@ -55,13 +54,13 @@
5554
end
5655
config.after(:each) do
5756
# Always perform rollback to savepoint after each test
58-
database_connections.each do |name|
57+
database_connections.reverse_each do |name|
5958
plsql(name).rollback_to "before_each"
6059
end
6160
end
6261
config.after(:all) do
6362
# Always perform rollback after each describe block
64-
database_connections.each do |name|
63+
database_connections.reverse_each do |name|
6564
plsql(name).rollback
6665
end
6766
end

0 commit comments

Comments
 (0)