Skip to content

Commit 8631a4a

Browse files
committed
emulate_booleans test reliable on newer Rails
1 parent 20a5119 commit 8631a4a

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

spec/active_record/oracle_enhanced/type/integer_spec.rb

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
describe "OracleEnhancedAdapter integer type detection based on attribute settings" do
44
before(:all) do
55
ActiveRecord::Base.establish_connection(CONNECTION_PARAMS)
6-
@conn = ActiveRecord::Base.connection
7-
@conn.execute "DROP TABLE test2_employees" rescue nil
8-
@conn.execute <<~SQL
6+
conn = ActiveRecord::Base.lease_connection
7+
conn.execute "DROP TABLE test2_employees" rescue nil
8+
conn.execute <<~SQL
99
CREATE TABLE test2_employees (
1010
id NUMBER PRIMARY KEY,
1111
first_name VARCHAR2(20),
@@ -22,16 +22,18 @@
2222
created_at DATE
2323
)
2424
SQL
25-
@conn.execute "DROP SEQUENCE test2_employees_seq" rescue nil
26-
@conn.execute <<~SQL
25+
conn.execute "DROP SEQUENCE test2_employees_seq" rescue nil
26+
conn.execute <<~SQL
2727
CREATE SEQUENCE test2_employees_seq MINVALUE 1
2828
INCREMENT BY 1 START WITH 10040 CACHE 20 NOORDER NOCYCLE
2929
SQL
3030
end
3131

3232
after(:all) do
33-
@conn.execute "DROP TABLE test2_employees"
34-
@conn.execute "DROP SEQUENCE test2_employees_seq"
33+
conn = ActiveRecord::Base.lease_connection
34+
conn.execute "DROP TABLE test2_employees"
35+
conn.execute "DROP SEQUENCE test2_employees_seq"
36+
ActiveRecord::Base.release_connection
3537
end
3638

3739
describe "/ NUMBER values from ActiveRecord model" do
@@ -43,6 +45,7 @@ class ::Test2Employee < ActiveRecord::Base
4345
after(:each) do
4446
Object.send(:remove_const, "Test2Employee")
4547
ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.emulate_booleans = true
48+
ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.clear_type_map!
4649
ActiveRecord::Base.clear_cache!
4750
end
4851

@@ -90,8 +93,7 @@ class ::Test2Employee < ActiveRecord::Base
9093

9194
it "should return Integer value from NUMBER(1) column if emulate_booleans is set to false" do
9295
ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.emulate_booleans = false
93-
ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.clear_type_map!
94-
ActiveRecord::Base.clear_cache!
96+
ActiveRecord::Base.establish_connection(CONNECTION_PARAMS)
9597
create_employee2
9698
expect(@employee2.is_manager).to be_a(Integer)
9799
end

0 commit comments

Comments
 (0)