activerecord-oracle_enhanced-adapter 6.1.4 → 7.0.1
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.
- checksums.yaml +4 -4
- data/History.md +78 -0
- data/README.md +12 -1
- data/VERSION +1 -1
- data/lib/active_record/connection_adapters/emulation/oracle_adapter.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/column.rb +2 -2
- data/lib/active_record/connection_adapters/oracle_enhanced/connection.rb +22 -13
- data/lib/active_record/connection_adapters/oracle_enhanced/context_index.rb +3 -3
- data/lib/active_record/connection_adapters/oracle_enhanced/database_limits.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb +19 -22
- data/lib/active_record/connection_adapters/oracle_enhanced/dbms_output.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/jdbc_connection.rb +14 -8
- data/lib/active_record/connection_adapters/oracle_enhanced/jdbc_quoting.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/lob.rb +4 -4
- data/lib/active_record/connection_adapters/oracle_enhanced/oci_connection.rb +18 -18
- data/lib/active_record/connection_adapters/oracle_enhanced/oci_quoting.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/procedures.rb +6 -6
- data/lib/active_record/connection_adapters/oracle_enhanced/quoting.rb +16 -16
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_creation.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_definitions.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_dumper.rb +6 -6
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_statements.rb +37 -27
- data/lib/active_record/connection_adapters/oracle_enhanced/structure_dump.rb +30 -29
- data/lib/active_record/connection_adapters/oracle_enhanced/type_metadata.rb +1 -1
- data/lib/active_record/connection_adapters/oracle_enhanced_adapter.rb +123 -98
- data/lib/arel/visitors/oracle.rb +6 -2
- data/lib/arel/visitors/oracle12.rb +4 -0
- data/spec/active_record/connection_adapters/oracle_enhanced/connection_spec.rb +18 -1
- data/spec/active_record/connection_adapters/oracle_enhanced/context_index_spec.rb +2 -2
- data/spec/active_record/connection_adapters/oracle_enhanced/procedures_spec.rb +5 -5
- data/spec/active_record/connection_adapters/oracle_enhanced/schema_dumper_spec.rb +3 -3
- data/spec/active_record/connection_adapters/oracle_enhanced/schema_statements_spec.rb +5 -5
- data/spec/active_record/connection_adapters/oracle_enhanced/structure_dump_spec.rb +10 -10
- data/spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb +34 -7
- data/spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb +5 -5
- data/spec/active_record/oracle_enhanced/type/custom_spec.rb +88 -0
- data/spec/active_record/oracle_enhanced/type/timestamp_spec.rb +2 -2
- metadata +22 -6
@@ -68,7 +68,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
68
68
|
SQL
|
69
69
|
dump = ActiveRecord::Base.connection.structure_dump
|
70
70
|
expect(dump.split('\n').length).to eq(1)
|
71
|
-
expect(dump).to match(/ALTER TABLE
|
71
|
+
expect(dump).to match(/ALTER TABLE "?TEST_POSTS"? ADD CONSTRAINT "?FK_TEST_POST_FOO"? FOREIGN KEY \("?FOO_ID"?\) REFERENCES "?FOOS"?\("?ID"?\)/i)
|
72
72
|
end
|
73
73
|
|
74
74
|
it "should dump foreign keys when reference column name is not 'id'" do
|
@@ -88,7 +88,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
88
88
|
|
89
89
|
dump = ActiveRecord::Base.connection.structure_dump
|
90
90
|
expect(dump.split('\n').length).to eq(1)
|
91
|
-
expect(dump).to match(/ALTER TABLE
|
91
|
+
expect(dump).to match(/ALTER TABLE "?TEST_POSTS"? ADD CONSTRAINT "?FK_TEST_POST_BAZ"? FOREIGN KEY \("?BAZ_ID"?\) REFERENCES "?FOOS"?\("?BAZ_ID"?\)/i)
|
92
92
|
end
|
93
93
|
|
94
94
|
it "should not error when no foreign keys are present" do
|
@@ -136,7 +136,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
136
136
|
)
|
137
137
|
SQL
|
138
138
|
dump = ActiveRecord::Base.connection.structure_dump
|
139
|
-
expect(dump).to match(
|
139
|
+
expect(dump).to match(/"?ID_PLUS"? NUMBER GENERATED ALWAYS AS \(ID\+2\) VIRTUAL/)
|
140
140
|
end
|
141
141
|
|
142
142
|
it "should dump RAW virtual columns" do
|
@@ -149,7 +149,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
149
149
|
)
|
150
150
|
SQL
|
151
151
|
dump = ActiveRecord::Base.connection.structure_dump
|
152
|
-
expect(dump).to match(/CREATE TABLE
|
152
|
+
expect(dump).to match(/CREATE TABLE "BARS" \(\n "ID" NUMBER\(38,0\) NOT NULL,\n "SUPER" RAW\(255\) GENERATED ALWAYS AS \(HEXTORAW\(TO_CHAR\(ID\)\)\) VIRTUAL/)
|
153
153
|
end
|
154
154
|
|
155
155
|
it "should dump NCLOB columns" do
|
@@ -161,7 +161,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
161
161
|
)
|
162
162
|
SQL
|
163
163
|
dump = ActiveRecord::Base.connection.structure_dump
|
164
|
-
expect(dump).to match(/CREATE TABLE
|
164
|
+
expect(dump).to match(/CREATE TABLE "BARS" \(\n "ID" NUMBER\(38,0\) NOT NULL,\n "NCLOB_TEXT" NCLOB/)
|
165
165
|
end
|
166
166
|
|
167
167
|
it "should dump unique keys" do
|
@@ -187,7 +187,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
187
187
|
|
188
188
|
dump = ActiveRecord::Base.connection.structure_dump
|
189
189
|
expect(dump).to match(/CREATE UNIQUE INDEX "?IX_TEST_POSTS_FOO_ID"? ON "?TEST_POSTS"? \("?FOO_ID"?\)/i)
|
190
|
-
expect(dump).to match(/CREATE INDEX "?IX_TEST_POSTS_FOO
|
190
|
+
expect(dump).to match(/CREATE INDEX "?IX_TEST_POSTS_FOO"? ON "?TEST_POSTS"? \("?FOO"?\)/i)
|
191
191
|
expect(dump).not_to match(/CREATE UNIQUE INDEX "?UK_TEST_POSTS_/i)
|
192
192
|
end
|
193
193
|
|
@@ -199,8 +199,8 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
199
199
|
SQL
|
200
200
|
|
201
201
|
dump = ActiveRecord::Base.connection.structure_dump
|
202
|
-
expect(dump).to match(/CREATE INDEX "?IX_TEST_POSTS_FOO_FOO_ID
|
203
|
-
expect(dump).to match(/CREATE INDEX "?IX_TEST_POSTS_FUNCTION
|
202
|
+
expect(dump).to match(/CREATE INDEX "?IX_TEST_POSTS_FOO_FOO_ID"? ON "?TEST_POSTS"? \("?FOO"?, "?FOO_ID"?\)/i)
|
203
|
+
expect(dump).to match(/CREATE INDEX "?IX_TEST_POSTS_FUNCTION"? ON "?TEST_POSTS"? \(TO_CHAR\(LENGTH\("?FOO"?\)\)\|\|"?FOO"?\)/i)
|
204
204
|
end
|
205
205
|
|
206
206
|
it "should dump RAW columns" do
|
@@ -212,7 +212,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
212
212
|
)
|
213
213
|
SQL
|
214
214
|
dump = ActiveRecord::Base.connection.structure_dump
|
215
|
-
expect(dump).to match(/CREATE TABLE
|
215
|
+
expect(dump).to match(/CREATE TABLE "BARS" \(\n "ID" NUMBER\(38,0\) NOT NULL,\n "SUPER" RAW\(255\)/)
|
216
216
|
end
|
217
217
|
|
218
218
|
it "should dump table comments" do
|
@@ -269,7 +269,7 @@ describe "OracleEnhancedAdapter structure dump" do
|
|
269
269
|
end
|
270
270
|
context "default sequence" do
|
271
271
|
let(:sql) { "CREATE SEQUENCE \"#{sequence_name}\"" }
|
272
|
-
it { is_expected.to_not match(%r{CREATE SEQUENCE
|
272
|
+
it { is_expected.to_not match(%r{CREATE SEQUENCE "#{sequence_name}" MAXVALUE \d+ MINVALUE \d+ NOORDER NOCYCLE}) }
|
273
273
|
end
|
274
274
|
context "noorder" do
|
275
275
|
let(:sql) { "CREATE SEQUENCE \"#{sequence_name}\" NOORDER" }
|
@@ -99,10 +99,10 @@ describe "OracleEnhancedAdapter" do
|
|
99
99
|
|
100
100
|
it "should get sequence value at next time" do
|
101
101
|
TestEmployee.create!
|
102
|
-
expect(@logger.logged(:debug).first).not_to match(/SELECT
|
102
|
+
expect(@logger.logged(:debug).first).not_to match(/SELECT "TEST_EMPLOYEES_SEQ".NEXTVAL FROM dual/im)
|
103
103
|
@logger.clear(:debug)
|
104
104
|
TestEmployee.create!
|
105
|
-
expect(@logger.logged(:debug).first).to match(/SELECT
|
105
|
+
expect(@logger.logged(:debug).first).to match(/SELECT "TEST_EMPLOYEES_SEQ".NEXTVAL FROM dual/im)
|
106
106
|
end
|
107
107
|
end
|
108
108
|
end
|
@@ -577,9 +577,29 @@ describe "OracleEnhancedAdapter" do
|
|
577
577
|
schema_define do
|
578
578
|
drop_table :test_posts, if_exists: true
|
579
579
|
create_table :test_posts
|
580
|
+
|
581
|
+
drop_table :users, if_exists: true
|
582
|
+
create_table :users, force: true do |t|
|
583
|
+
t.string :name
|
584
|
+
t.integer :group_id
|
585
|
+
end
|
586
|
+
|
587
|
+
drop_table :groups, if_exists: true
|
588
|
+
create_table :groups, force: true do |t|
|
589
|
+
t.string :name
|
590
|
+
end
|
580
591
|
end
|
592
|
+
|
581
593
|
class ::TestPost < ActiveRecord::Base
|
582
594
|
end
|
595
|
+
|
596
|
+
class User < ActiveRecord::Base
|
597
|
+
belongs_to :group
|
598
|
+
end
|
599
|
+
|
600
|
+
class Group < ActiveRecord::Base
|
601
|
+
has_one :user
|
602
|
+
end
|
583
603
|
end
|
584
604
|
|
585
605
|
before(:each) do
|
@@ -594,6 +614,8 @@ describe "OracleEnhancedAdapter" do
|
|
594
614
|
after(:all) do
|
595
615
|
schema_define do
|
596
616
|
drop_table :test_posts
|
617
|
+
drop_table :users
|
618
|
+
drop_table :groups
|
597
619
|
end
|
598
620
|
Object.send(:remove_const, "TestPost")
|
599
621
|
ActiveRecord::Base.clear_cache!
|
@@ -610,15 +632,15 @@ describe "OracleEnhancedAdapter" do
|
|
610
632
|
expect(@logger.logged(:debug).last).to match(/\["table_name", "TEST_POSTS"\]/)
|
611
633
|
end
|
612
634
|
|
613
|
-
it "should return content from columns
|
635
|
+
it "should return content from columns witt bind usage" do
|
614
636
|
expect(@conn.columns("TEST_POSTS").length).to be > 0
|
615
|
-
expect(@logger.logged(:debug).last).
|
616
|
-
expect(@logger.logged(:debug).last).
|
637
|
+
expect(@logger.logged(:debug).last).to match(/:table_name/)
|
638
|
+
expect(@logger.logged(:debug).last).to match(/\["table_name", "TEST_POSTS"\]/)
|
617
639
|
end
|
618
640
|
|
619
|
-
it "should return pk and sequence from pk_and_sequence_for
|
641
|
+
it "should return pk and sequence from pk_and_sequence_for with bind usage" do
|
620
642
|
expect(@conn.pk_and_sequence_for("TEST_POSTS").length).to eq 2
|
621
|
-
expect(@logger.logged(:debug).last).
|
643
|
+
expect(@logger.logged(:debug).last).to match(/\["table_name", "TEST_POSTS"\]/)
|
622
644
|
end
|
623
645
|
|
624
646
|
it "should return pk from primary_keys with bind usage" do
|
@@ -626,6 +648,11 @@ describe "OracleEnhancedAdapter" do
|
|
626
648
|
expect(@logger.logged(:debug).last).to match(/\["table_name", "TEST_POSTS"\]/)
|
627
649
|
end
|
628
650
|
|
651
|
+
it "should not raise missing IN/OUT parameter like issue 1687 " do
|
652
|
+
# "to_sql" enforces unprepared_statement including dictionary access SQLs
|
653
|
+
expect { User.joins(:group).to_sql }.not_to raise_exception
|
654
|
+
end
|
655
|
+
|
629
656
|
it "should return false from temporary_table? with bind usage" do
|
630
657
|
expect(@conn.temporary_table?("TEST_POSTS")).to eq false
|
631
658
|
expect(@logger.logged(:debug).last).to match(/:table_name/)
|
@@ -122,7 +122,7 @@ describe "OracleEnhancedAdapter assign string to :date and :datetime columns" do
|
|
122
122
|
end
|
123
123
|
|
124
124
|
after(:each) do
|
125
|
-
ActiveRecord
|
125
|
+
ActiveRecord.default_timezone = :utc
|
126
126
|
end
|
127
127
|
|
128
128
|
it "should assign ISO string to date column" do
|
@@ -170,7 +170,7 @@ describe "OracleEnhancedAdapter assign string to :date and :datetime columns" do
|
|
170
170
|
end
|
171
171
|
|
172
172
|
it "should assign ISO time string to datetime column" do
|
173
|
-
ActiveRecord
|
173
|
+
ActiveRecord.default_timezone = :local
|
174
174
|
@employee = TestEmployee.create(
|
175
175
|
first_name: "First",
|
176
176
|
last_name: "Last",
|
@@ -182,7 +182,7 @@ describe "OracleEnhancedAdapter assign string to :date and :datetime columns" do
|
|
182
182
|
end
|
183
183
|
|
184
184
|
it "should assign NLS time string to datetime column" do
|
185
|
-
ActiveRecord
|
185
|
+
ActiveRecord.default_timezone = :local
|
186
186
|
@employee = TestEmployee.create(
|
187
187
|
first_name: "First",
|
188
188
|
last_name: "Last",
|
@@ -205,7 +205,7 @@ describe "OracleEnhancedAdapter assign string to :date and :datetime columns" do
|
|
205
205
|
end
|
206
206
|
|
207
207
|
it "should assign ISO date string to datetime column" do
|
208
|
-
ActiveRecord
|
208
|
+
ActiveRecord.default_timezone = :local
|
209
209
|
@employee = TestEmployee.create(
|
210
210
|
first_name: "First",
|
211
211
|
last_name: "Last",
|
@@ -217,7 +217,7 @@ describe "OracleEnhancedAdapter assign string to :date and :datetime columns" do
|
|
217
217
|
end
|
218
218
|
|
219
219
|
it "should assign NLS date string to datetime column" do
|
220
|
-
ActiveRecord
|
220
|
+
ActiveRecord.default_timezone = :local
|
221
221
|
@employee = TestEmployee.create(
|
222
222
|
first_name: "First",
|
223
223
|
last_name: "Last",
|
@@ -0,0 +1,88 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
describe "OracleEnhancedAdapter custom types handling" do
|
4
|
+
include SchemaSpecHelper
|
5
|
+
|
6
|
+
before(:all) do
|
7
|
+
ActiveRecord::Base.establish_connection(CONNECTION_PARAMS)
|
8
|
+
schema_define do
|
9
|
+
create_table :test_employees, force: true do |t|
|
10
|
+
t.string :first_name, limit: 20
|
11
|
+
t.string :last_name, limit: 25
|
12
|
+
t.text :signature
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
class TestEmployee < ActiveRecord::Base
|
17
|
+
class AttributeSignature < ActiveRecord::Type::Text
|
18
|
+
def cast(value)
|
19
|
+
case value
|
20
|
+
when Signature
|
21
|
+
value
|
22
|
+
when nil
|
23
|
+
nil
|
24
|
+
else
|
25
|
+
Signature.new(Base64.decode64 value)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def serialize(value)
|
30
|
+
Base64.encode64 value.raw
|
31
|
+
end
|
32
|
+
|
33
|
+
def changed_in_place?(raw_old_value, new_value)
|
34
|
+
new_value != cast(raw_old_value)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
class Signature
|
39
|
+
attr_reader :raw
|
40
|
+
|
41
|
+
def initialize(raw_value)
|
42
|
+
@raw = raw_value
|
43
|
+
end
|
44
|
+
|
45
|
+
def to_s
|
46
|
+
"Signature nice string #{raw[0..5]}"
|
47
|
+
end
|
48
|
+
|
49
|
+
def ==(object)
|
50
|
+
raw == object&.raw
|
51
|
+
end
|
52
|
+
alias eql? ==
|
53
|
+
end
|
54
|
+
|
55
|
+
attribute :signature, AttributeSignature.new
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
after(:all) do
|
60
|
+
schema_define do
|
61
|
+
drop_table :test_employees
|
62
|
+
end
|
63
|
+
Object.send(:remove_const, "TestEmployee")
|
64
|
+
ActiveRecord::Base.clear_cache!
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should serialize LOBs when creating a record" do
|
68
|
+
raw_signature = "peter'ssignature"
|
69
|
+
signature = TestEmployee::Signature.new(raw_signature)
|
70
|
+
@employee = TestEmployee.create!(first_name: "Peter", last_name: "Doe", signature: signature)
|
71
|
+
@employee.reload
|
72
|
+
expect(@employee.signature).to eql(signature)
|
73
|
+
expect(@employee.signature).to_not be(signature)
|
74
|
+
expect(TestEmployee.first.read_attribute_before_type_cast(:signature)).to eq(Base64.encode64 raw_signature)
|
75
|
+
end
|
76
|
+
|
77
|
+
it "should serialize LOBs when updating a record" do
|
78
|
+
raw_signature = "peter'ssignature"
|
79
|
+
signature = TestEmployee::Signature.new(raw_signature)
|
80
|
+
@employee = TestEmployee.create!(first_name: "Peter", last_name: "Doe", signature: TestEmployee::Signature.new("old signature"))
|
81
|
+
@employee.signature = signature
|
82
|
+
@employee.save!
|
83
|
+
@employee.reload
|
84
|
+
expect(@employee.signature).to eql(signature)
|
85
|
+
expect(@employee.signature).to_not be(signature)
|
86
|
+
expect(TestEmployee.first.read_attribute_before_type_cast(:signature)).to eq(Base64.encode64 raw_signature)
|
87
|
+
end
|
88
|
+
end
|
@@ -4,7 +4,7 @@ describe "OracleEnhancedAdapter timestamp with timezone support" do
|
|
4
4
|
include SchemaSpecHelper
|
5
5
|
|
6
6
|
before(:all) do
|
7
|
-
ActiveRecord
|
7
|
+
ActiveRecord.default_timezone = :local
|
8
8
|
ActiveRecord::Base.establish_connection(CONNECTION_WITH_TIMEZONE_PARAMS)
|
9
9
|
@conn = ActiveRecord::Base.connection
|
10
10
|
schema_define do
|
@@ -28,7 +28,7 @@ describe "OracleEnhancedAdapter timestamp with timezone support" do
|
|
28
28
|
|
29
29
|
after(:all) do
|
30
30
|
@conn.drop_table :test_employees, if_exists: true
|
31
|
-
ActiveRecord
|
31
|
+
ActiveRecord.default_timezone = :utc
|
32
32
|
end
|
33
33
|
|
34
34
|
describe "/ TIMESTAMP WITH TIME ZONE values from ActiveRecord model" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-oracle_enhanced-adapter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 7.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Raimonds Simanovskis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 7.0.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 7.0.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: ruby-plsql
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 0.6.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: ruby-oci8
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
description: |
|
42
56
|
Oracle "enhanced" ActiveRecord adapter contains useful additional methods for working with new and legacy Oracle databases.
|
43
57
|
This adapter is superset of original ActiveRecord Oracle adapter.
|
@@ -103,6 +117,7 @@ files:
|
|
103
117
|
- spec/active_record/oracle_enhanced/type/binary_spec.rb
|
104
118
|
- spec/active_record/oracle_enhanced/type/boolean_spec.rb
|
105
119
|
- spec/active_record/oracle_enhanced/type/character_string_spec.rb
|
120
|
+
- spec/active_record/oracle_enhanced/type/custom_spec.rb
|
106
121
|
- spec/active_record/oracle_enhanced/type/decimal_spec.rb
|
107
122
|
- spec/active_record/oracle_enhanced/type/dirty_spec.rb
|
108
123
|
- spec/active_record/oracle_enhanced/type/float_spec.rb
|
@@ -130,14 +145,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
130
145
|
requirements:
|
131
146
|
- - ">="
|
132
147
|
- !ruby/object:Gem::Version
|
133
|
-
version: 2.
|
148
|
+
version: 2.7.0
|
134
149
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
135
150
|
requirements:
|
136
151
|
- - ">="
|
137
152
|
- !ruby/object:Gem::Version
|
138
153
|
version: 1.8.11
|
139
154
|
requirements: []
|
140
|
-
rubygems_version: 3.
|
155
|
+
rubygems_version: 3.3.3
|
141
156
|
signing_key:
|
142
157
|
specification_version: 4
|
143
158
|
summary: Oracle enhanced adapter for ActiveRecord
|
@@ -157,6 +172,7 @@ test_files:
|
|
157
172
|
- spec/active_record/oracle_enhanced/type/binary_spec.rb
|
158
173
|
- spec/active_record/oracle_enhanced/type/boolean_spec.rb
|
159
174
|
- spec/active_record/oracle_enhanced/type/character_string_spec.rb
|
175
|
+
- spec/active_record/oracle_enhanced/type/custom_spec.rb
|
160
176
|
- spec/active_record/oracle_enhanced/type/decimal_spec.rb
|
161
177
|
- spec/active_record/oracle_enhanced/type/dirty_spec.rb
|
162
178
|
- spec/active_record/oracle_enhanced/type/float_spec.rb
|