oracle_enhanced 1.3.0.pre → 1.3.0.pre2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. data/.gitignore +0 -1
  2. data/History.txt +1 -1
  3. data/Rakefile +1 -1
  4. data/VERSION +1 -1
  5. data/lib/active_record/connection_adapters/oracle_enhanced.rake +3 -2
  6. data/lib/active_record/connection_adapters/oracle_enhanced_adapter.rb +223 -154
  7. data/lib/active_record/connection_adapters/oracle_enhanced_context_index.rb +227 -0
  8. data/lib/active_record/connection_adapters/oracle_enhanced_core_ext.rb +1 -1
  9. data/lib/active_record/connection_adapters/oracle_enhanced_dirty.rb +1 -1
  10. data/lib/active_record/connection_adapters/oracle_enhanced_jdbc_connection.rb +3 -3
  11. data/lib/active_record/connection_adapters/oracle_enhanced_oci_connection.rb +6 -1
  12. data/lib/active_record/connection_adapters/oracle_enhanced_procedures.rb +3 -3
  13. data/lib/active_record/connection_adapters/oracle_enhanced_schema_definitions.rb +2 -1
  14. data/lib/active_record/connection_adapters/oracle_enhanced_schema_dumper.rb +24 -9
  15. data/lib/active_record/connection_adapters/oracle_enhanced_version.rb +1 -1
  16. data/lib/{oracle_enhanced.rb → active_record/oracle_enhanced.rb} +0 -2
  17. data/oracle_enhanced.gemspec +7 -4
  18. data/spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb +37 -10
  19. data/spec/active_record/connection_adapters/oracle_enhanced_adapter_structure_dumper_spec.rb +27 -20
  20. data/spec/active_record/connection_adapters/oracle_enhanced_context_index_spec.rb +292 -0
  21. data/spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb +24 -28
  22. data/spec/active_record/connection_adapters/oracle_enhanced_dbms_output_spec.rb +13 -11
  23. data/spec/active_record/connection_adapters/oracle_enhanced_dirty_spec.rb +1 -1
  24. data/spec/active_record/connection_adapters/oracle_enhanced_procedures_spec.rb +70 -68
  25. data/spec/active_record/connection_adapters/oracle_enhanced_schema_dump_spec.rb +14 -1
  26. data/spec/spec_helper.rb +97 -24
  27. metadata +8 -5
@@ -1,5 +1,7 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
 
3
+ require 'ruby-plsql'
4
+
3
5
  describe "OracleEnhancedAdapter custom methods for create, update and destroy" do
4
6
  include LoggerSpecHelper
5
7
 
@@ -10,7 +12,7 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
10
12
  @conn.execute("DROP TABLE test_employees") rescue nil
11
13
  @conn.execute <<-SQL
12
14
  CREATE TABLE test_employees (
13
- employee_id NUMBER(6,0),
15
+ employee_id NUMBER(6,0) PRIMARY KEY,
14
16
  first_name VARCHAR2(20),
15
17
  last_name VARCHAR2(25),
16
18
  hire_date DATE,
@@ -78,9 +80,10 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
78
80
  BEGIN
79
81
  SELECT version INTO v_version FROM test_employees WHERE employee_id = p_employee_id FOR UPDATE;
80
82
  UPDATE test_employees
81
- SET employee_id = p_employee_id, first_name = p_first_name, last_name = p_last_name,
83
+ SET first_name = p_first_name, last_name = p_last_name,
82
84
  hire_date = p_hire_date, salary = p_salary, description = p_description,
83
- version = v_version + 1, update_time = SYSDATE;
85
+ version = v_version + 1, update_time = SYSDATE
86
+ WHERE employee_id = p_employee_id;
84
87
  END update_employee;
85
88
 
86
89
  PROCEDURE delete_employee(
@@ -93,7 +96,16 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
93
96
  SQL
94
97
 
95
98
  ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.emulate_dates_by_column_name = true
99
+ end
96
100
 
101
+ after(:all) do
102
+ @conn = ActiveRecord::Base.connection
103
+ @conn.execute "DROP TABLE test_employees"
104
+ @conn.execute "DROP SEQUENCE test_employees_s"
105
+ @conn.execute "DROP PACKAGE test_employees_pkg"
106
+ end
107
+
108
+ before(:each) do
97
109
  class ::TestEmployee < ActiveRecord::Base
98
110
  set_primary_key :employee_id
99
111
 
@@ -130,22 +142,21 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
130
142
  )
131
143
  end
132
144
 
145
+ private
146
+
147
+ def raise_make_transaction_rollback
148
+ raise "Make the transaction rollback"
149
+ end
133
150
  end
134
- end
135
-
136
- after(:all) do
137
- Object.send(:remove_const, "TestEmployee")
138
- @conn = ActiveRecord::Base.connection
139
- @conn.execute "DROP TABLE test_employees"
140
- @conn.execute "DROP SEQUENCE test_employees_s"
141
- @conn.execute "DROP PACKAGE test_employees_pkg"
142
- end
143
151
 
144
- before(:each) do
145
152
  @today = Date.new(2008,6,28)
146
153
  @buffer = StringIO.new
147
154
  end
148
155
 
156
+ after(:each) do
157
+ Object.send(:remove_const, "TestEmployee")
158
+ end
159
+
149
160
  it "should create record" do
150
161
  @employee = TestEmployee.create(
151
162
  :first_name => "First",
@@ -162,22 +173,19 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
162
173
  end
163
174
 
164
175
  it "should rollback record when exception is raised in after_create callback" do
176
+ TestEmployee.after_create :raise_make_transaction_rollback
177
+
165
178
  @employee = TestEmployee.new(
166
179
  :first_name => "First",
167
180
  :last_name => "Last",
168
181
  :hire_date => @today
169
182
  )
170
- TestEmployee.class_eval { def after_create() raise "Make the transaction rollback" end }
171
- begin
172
- employees_count = TestEmployee.count
173
- lambda {
174
- @employee.save
175
- }.should raise_error("Make the transaction rollback")
176
- @employee.id.should == nil
177
- TestEmployee.count.should == employees_count
178
- ensure
179
- TestEmployee.class_eval { remove_method :after_create }
180
- end
183
+ employees_count = TestEmployee.count
184
+ lambda {
185
+ @employee.save
186
+ }.should raise_error("Make the transaction rollback")
187
+ @employee.id.should == nil
188
+ TestEmployee.count.should == employees_count
181
189
  end
182
190
 
183
191
  it "should update record" do
@@ -195,25 +203,22 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
195
203
  end
196
204
 
197
205
  it "should rollback record when exception is raised in after_update callback" do
198
- TestEmployee.class_eval { def after_update() raise "Make the transaction rollback" end }
199
- begin
200
- @employee = TestEmployee.create(
201
- :first_name => "First",
202
- :last_name => "Last",
203
- :hire_date => @today,
204
- :description => "description"
205
- )
206
- empl_id = @employee.id
207
- @employee.reload
208
- @employee.first_name = "Second"
209
- lambda {
210
- @employee.save
211
- }.should raise_error("Make the transaction rollback")
212
- @employee.reload
213
- @employee.first_name.should == "First"
214
- ensure
215
- TestEmployee.class_eval { remove_method :after_update }
216
- end
206
+ TestEmployee.after_update :raise_make_transaction_rollback
207
+
208
+ @employee = TestEmployee.create(
209
+ :first_name => "First",
210
+ :last_name => "Last",
211
+ :hire_date => @today,
212
+ :description => "description"
213
+ )
214
+ empl_id = @employee.id
215
+ @employee.reload
216
+ @employee.first_name = "Second"
217
+ lambda {
218
+ @employee.save
219
+ }.should raise_error("Make the transaction rollback")
220
+ @employee.reload
221
+ @employee.first_name.should == "First"
217
222
  end
218
223
 
219
224
  it "should not update record if nothing is changed and partial updates are enabled" do
@@ -270,23 +275,20 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
270
275
  end
271
276
 
272
277
  it "should rollback record when exception is raised in after_desotry callback" do
273
- TestEmployee.class_eval { def after_destroy() raise "Make the transaction rollback" end }
274
- begin
275
- @employee = TestEmployee.create(
276
- :first_name => "First",
277
- :last_name => "Last",
278
- :hire_date => @today
279
- )
280
- @employee.reload
281
- empl_id = @employee.id
282
- lambda {
283
- @employee.destroy
284
- }.should raise_error("Make the transaction rollback")
285
- @employee.id.should == empl_id
286
- TestEmployee.find_by_employee_id(empl_id).should_not be_nil
287
- ensure
288
- TestEmployee.class_eval { remove_method :after_destroy }
289
- end
278
+ TestEmployee.after_destroy :raise_make_transaction_rollback
279
+
280
+ @employee = TestEmployee.create(
281
+ :first_name => "First",
282
+ :last_name => "Last",
283
+ :hire_date => @today
284
+ )
285
+ @employee.reload
286
+ empl_id = @employee.id
287
+ lambda {
288
+ @employee.destroy
289
+ }.should raise_error("Make the transaction rollback")
290
+ @employee.id.should == empl_id
291
+ TestEmployee.find_by_employee_id(empl_id).should_not be_nil
290
292
  end
291
293
 
292
294
  it "should set timestamps when creating record" do
@@ -315,13 +317,13 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
315
317
  end
316
318
 
317
319
  it "should log create record" do
318
- log_to @buffer
320
+ set_logger
319
321
  @employee = TestEmployee.create(
320
322
  :first_name => "First",
321
323
  :last_name => "Last",
322
324
  :hire_date => @today
323
325
  )
324
- @buffer.string.should match(/^TestEmployee Create \(\d+\.\d+(ms)?\) custom create method$/)
326
+ @logger.logged(:debug).last.should match(/^TestEmployee Create \(\d+\.\d+(ms)?\) custom create method$/)
325
327
  end
326
328
 
327
329
  it "should log update record" do
@@ -331,9 +333,9 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
331
333
  :last_name => "Last",
332
334
  :hire_date => @today
333
335
  )
334
- log_to @buffer
336
+ set_logger
335
337
  @employee.save!
336
- @buffer.string.should match(/^TestEmployee Update \(\d+\.\d+(ms)?\) custom update method with employee_id=#{@employee.id}$/)
338
+ @logger.logged(:debug).last.should match(/^TestEmployee Update \(\d+\.\d+(ms)?\) custom update method with employee_id=#{@employee.id}$/)
337
339
  end
338
340
 
339
341
  it "should log delete record" do
@@ -342,9 +344,9 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
342
344
  :last_name => "Last",
343
345
  :hire_date => @today
344
346
  )
345
- log_to @buffer
347
+ set_logger
346
348
  @employee.destroy
347
- @buffer.string.should match(/^TestEmployee Destroy \(\d+\.\d+(ms)?\) custom delete method with employee_id=#{@employee.id}$/)
349
+ @logger.logged(:debug).last.should match(/^TestEmployee Destroy \(\d+\.\d+(ms)?\) custom delete method with employee_id=#{@employee.id}$/)
348
350
  end
349
351
 
350
352
  it "should validate new record before creation" do
@@ -353,7 +355,7 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
353
355
  :hire_date => @today
354
356
  )
355
357
  @employee.save.should be_false
356
- @employee.errors.on(:first_name).should_not be_nil
358
+ @employee.errors[:first_name].should_not be_blank
357
359
  end
358
360
 
359
361
  it "should validate existing record before update" do
@@ -364,7 +366,7 @@ describe "OracleEnhancedAdapter custom methods for create, update and destroy" d
364
366
  )
365
367
  @employee.first_name = nil
366
368
  @employee.save.should be_false
367
- @employee.errors.on(:first_name).should_not be_nil
369
+ @employee.errors[:first_name].should_not be_blank
368
370
  end
369
371
 
370
372
  end
@@ -190,7 +190,7 @@ describe "OracleEnhancedAdapter schema dump" do
190
190
  standard_dump.should =~ /add_index \"test_posts\", \[\"title\"\], :name => \"index_test_posts_on_title\"$/
191
191
  end
192
192
 
193
- it "should not specify default tablespace in add index" do
193
+ it "should specify non-default tablespace in add index" do
194
194
  tablespace_name = @conn.default_tablespace
195
195
  @conn.stub!(:default_tablespace).and_return('dummy')
196
196
  create_test_posts_table
@@ -199,5 +199,18 @@ describe "OracleEnhancedAdapter schema dump" do
199
199
 
200
200
  end
201
201
 
202
+ describe "materialized views" do
203
+ after(:each) do
204
+ @conn.execute "DROP MATERIALIZED VIEW test_posts_mv" rescue nil
205
+ drop_test_posts_table
206
+ end
207
+
208
+ it "should not include materialized views in schema dump" do
209
+ create_test_posts_table
210
+ @conn.execute "CREATE MATERIALIZED VIEW test_posts_mv AS SELECT * FROM test_posts"
211
+ standard_dump.should_not =~ /create_table "test_posts_mv"/
212
+ end
213
+ end
214
+
202
215
  end
203
216
 
data/spec/spec_helper.rb CHANGED
@@ -24,30 +24,41 @@ elsif ENV['RAILS_GEM_VERSION'] =~ /^2.3.3/
24
24
  gem 'actionpack', '=2.3.3'
25
25
  gem 'activesupport', '=2.3.3'
26
26
  gem 'composite_primary_keys', '=2.3.2'
27
- else
28
- ENV['RAILS_GEM_VERSION'] ||= '2.3.5'
27
+ elsif ENV['RAILS_GEM_VERSION'] =~ /^2.3/
29
28
  gem 'activerecord', '=2.3.5'
30
29
  gem 'actionpack', '=2.3.5'
31
30
  gem 'activesupport', '=2.3.5'
32
31
  NO_COMPOSITE_PRIMARY_KEYS = true
32
+ else
33
+ # uses local copy of Rails 3 gems
34
+ ['rails/activerecord', 'rails/activemodel', 'rails/activesupport', 'arel', 'rails/actionpack', 'rails/railties'].each do |library|
35
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../../' + library + '/lib'))
36
+ end
37
+ ENV['RAILS_GEM_VERSION'] ||= '3.0'
38
+ NO_COMPOSITE_PRIMARY_KEYS = true
33
39
  end
34
40
 
35
41
  require 'active_record'
36
- require 'action_pack'
37
- if ENV['RAILS_GEM_VERSION'] >= '2.3'
42
+
43
+ if ENV['RAILS_GEM_VERSION'] >= '3.0'
44
+ require 'action_dispatch'
45
+ require 'active_support/core_ext/module/attribute_accessors'
46
+ require "rails/log_subscriber"
47
+ require 'active_record/railties/log_subscriber'
48
+ require 'logger'
49
+ elsif ENV['RAILS_GEM_VERSION'] =~ /^2.3/
50
+ require 'action_pack'
38
51
  require 'action_controller/session/abstract_store'
39
52
  require 'active_record/session_store'
40
- else
53
+ elsif ENV['RAILS_GEM_VERSION'] <= '2.3'
54
+ require 'action_pack'
41
55
  require 'action_controller/session/active_record_store'
42
56
  end
43
- if !defined?(RUBY_ENGINE)
44
- gem 'ruby-oci8', '=2.0.3'
45
- require 'oci8'
46
- elsif RUBY_ENGINE == 'ruby'
47
- gem 'ruby-oci8', '=2.0.3'
57
+ if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby'
58
+ gem 'ruby-oci8', '>=2.0.4'
48
59
  require 'oci8'
49
60
  elsif RUBY_ENGINE == 'jruby'
50
- gem "activerecord-jdbc-adapter"
61
+ gem 'activerecord-jdbc-adapter'
51
62
  require 'active_record/connection_adapters/jdbc_adapter'
52
63
  end
53
64
 
@@ -55,16 +66,78 @@ require 'active_record/connection_adapters/oracle_enhanced_adapter'
55
66
  require 'ruby-plsql'
56
67
 
57
68
  module LoggerSpecHelper
58
- def log_to(stream)
59
- ActiveRecord::Base.logger = Logger.new(stream)
60
- if ActiveRecord::Base.respond_to?(:connection_pool)
61
- ActiveRecord::Base.connection_pool.clear_reloadable_connections!
62
- else
63
- ActiveRecord::Base.clear_active_connections!
69
+ def set_logger
70
+ @logger = MockLogger.new
71
+
72
+ if ENV['RAILS_GEM_VERSION'] >= '3.0'
73
+ queue = ActiveSupport::Notifications::Fanout.new
74
+ @notifier = ActiveSupport::Notifications::Notifier.new(queue)
75
+
76
+ Rails::LogSubscriber.colorize_logging = false
77
+
78
+ ActiveRecord::Base.logger = @logger
79
+ ActiveSupport::Notifications.notifier = @notifier
80
+
81
+ Rails::LogSubscriber.add(:active_record, ActiveRecord::Railties::LogSubscriber.new)
82
+
83
+ else # ActiveRecord 2.x
84
+ if ActiveRecord::Base.respond_to?(:connection_pool)
85
+ ActiveRecord::Base.connection_pool.clear_reloadable_connections!
86
+ else
87
+ ActiveRecord::Base.clear_active_connections!
88
+ end
89
+ ActiveRecord::Base.logger = @logger
90
+ ActiveRecord::Base.colorize_logging = false
91
+ # ActiveRecord::Base.logger.level = Logger::DEBUG
92
+ end
93
+
94
+ end
95
+
96
+ class MockLogger
97
+ attr_reader :flush_count
98
+
99
+ def initialize
100
+ @flush_count = 0
101
+ @logged = Hash.new { |h,k| h[k] = [] }
64
102
  end
65
- ActiveRecord::Base.colorize_logging = false
66
- ActiveRecord::Base.logger.level = Logger::DEBUG
103
+
104
+ # used in AtiveRecord 2.x
105
+ def debug?
106
+ true
107
+ end
108
+
109
+ def method_missing(level, message)
110
+ @logged[level] << message
111
+ end
112
+
113
+ def logged(level)
114
+ @logged[level].compact.map { |l| l.to_s.strip }
115
+ end
116
+
117
+ def output(level)
118
+ logged(level).join("\n")
119
+ end
120
+
121
+ def flush
122
+ @flush_count += 1
123
+ end
124
+
125
+ def clear(level)
126
+ @logged[level] = []
127
+ end
128
+ end
129
+
130
+ def clear_logger
131
+ ActiveRecord::Base.logger = @logger = nil
132
+ ActiveSupport::Notifications.notifier = @notifier = nil if @notifier
67
133
  end
134
+
135
+ # Wait notifications to be published (for Rails 3.0)
136
+ # should not be currently used with sync queues in tests
137
+ def wait
138
+ @notifier.wait if @notifier
139
+ end
140
+
68
141
  end
69
142
 
70
143
  module SchemaSpecHelper
@@ -77,17 +150,17 @@ module SchemaSpecHelper
77
150
  end
78
151
  end
79
152
 
80
- DATABASE_NAME = ENV['DATABASE_NAME'] || 'orcl'
81
- DATABASE_HOST = ENV['DATABASE_HOST'] || 'localhost'
153
+ DATABASE_NAME = ENV['DATABASE_NAME'] || '//ptvlhesdev1-vip.HARGRAY.ORG/dev'
154
+ DATABASE_HOST = ENV['DATABASE_HOST'] || ''
82
155
  DATABASE_PORT = ENV['DATABASE_PORT'] || 1521
83
- DATABASE_USER = ENV['DATABASE_USER'] || 'oracle_enhanced'
84
- DATABASE_PASSWORD = ENV['DATABASE_PASSWORD'] || 'oracle_enhanced'
156
+ DATABASE_USER = ENV['DATABASE_USER'] || 'luke_v'
157
+ DATABASE_PASSWORD = ENV['DATABASE_PASSWORD'] || 'rock#ROLE'
85
158
  DATABASE_SYS_PASSWORD = ENV['DATABASE_SYS_PASSWORD'] || 'admin'
86
159
 
87
160
  CONNECTION_PARAMS = {
88
161
  :adapter => "oracle_enhanced",
89
162
  :database => DATABASE_NAME,
90
- :host => DATABASE_HOST,
163
+ # :host => DATABASE_HOST,
91
164
  :username => DATABASE_USER,
92
165
  :password => DATABASE_PASSWORD
93
166
  }
metadata CHANGED
@@ -6,8 +6,8 @@ version: !ruby/object:Gem::Version
6
6
  - 1
7
7
  - 3
8
8
  - 0
9
- - pre
10
- version: 1.3.0.pre
9
+ - pre2
10
+ version: 1.3.0.pre2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Raimonds Simanovskis
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-03-03 00:00:00 -05:00
18
+ date: 2010-03-18 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -69,6 +69,7 @@ files:
69
69
  - lib/active_record/connection_adapters/oracle_enhanced.rake
70
70
  - lib/active_record/connection_adapters/oracle_enhanced_adapter.rb
71
71
  - lib/active_record/connection_adapters/oracle_enhanced_connection.rb
72
+ - lib/active_record/connection_adapters/oracle_enhanced_context_index.rb
72
73
  - lib/active_record/connection_adapters/oracle_enhanced_core_ext.rb
73
74
  - lib/active_record/connection_adapters/oracle_enhanced_cpk.rb
74
75
  - lib/active_record/connection_adapters/oracle_enhanced_dirty.rb
@@ -81,11 +82,12 @@ files:
81
82
  - lib/active_record/connection_adapters/oracle_enhanced_schema_statements_ext.rb
82
83
  - lib/active_record/connection_adapters/oracle_enhanced_tasks.rb
83
84
  - lib/active_record/connection_adapters/oracle_enhanced_version.rb
84
- - lib/oracle_enhanced.rb
85
+ - lib/active_record/oracle_enhanced.rb
85
86
  - oracle_enhanced.gemspec
86
87
  - spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb
87
88
  - spec/active_record/connection_adapters/oracle_enhanced_adapter_structure_dumper_spec.rb
88
89
  - spec/active_record/connection_adapters/oracle_enhanced_connection_spec.rb
90
+ - spec/active_record/connection_adapters/oracle_enhanced_context_index_spec.rb
89
91
  - spec/active_record/connection_adapters/oracle_enhanced_core_ext_spec.rb
90
92
  - spec/active_record/connection_adapters/oracle_enhanced_cpk_spec.rb
91
93
  - spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb
@@ -98,7 +100,7 @@ files:
98
100
  - spec/spec.opts
99
101
  - spec/spec_helper.rb
100
102
  has_rdoc: true
101
- homepage: http://github.com/rsim/oracle-enhanced
103
+ homepage: http://github.com/plukevdh/oracle-enhanced
102
104
  licenses: []
103
105
 
104
106
  post_install_message:
@@ -133,6 +135,7 @@ test_files:
133
135
  - spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb
134
136
  - spec/active_record/connection_adapters/oracle_enhanced_adapter_structure_dumper_spec.rb
135
137
  - spec/active_record/connection_adapters/oracle_enhanced_connection_spec.rb
138
+ - spec/active_record/connection_adapters/oracle_enhanced_context_index_spec.rb
136
139
  - spec/active_record/connection_adapters/oracle_enhanced_core_ext_spec.rb
137
140
  - spec/active_record/connection_adapters/oracle_enhanced_cpk_spec.rb
138
141
  - spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb