ruby-oci8 1.0.7-x86-mswin32-60 → 2.0.1-x86-mswin32-60
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.
- data/ChangeLog +1289 -383
- data/Makefile +48 -12
- data/NEWS +5 -419
- data/README +56 -385
- data/VERSION +1 -1
- data/dist-files +27 -27
- data/lib/.document +2 -0
- data/lib/dbd/OCI8.rb +2 -17
- data/lib/oci8.rb +48 -1622
- data/lib/oci8.rb.in +48 -1622
- data/lib/oci8/.document +5 -0
- data/lib/oci8/compat.rb +108 -0
- data/lib/oci8/datetime.rb +491 -0
- data/lib/oci8/encoding-init.rb +40 -0
- data/lib/oci8/encoding.yml +537 -0
- data/lib/oci8/metadata.rb +2077 -0
- data/lib/oci8/object.rb +548 -0
- data/lib/oci8/oci8.rb +798 -0
- data/lib/oci8/oracle_version.rb +144 -0
- data/lib/oci8lib_18.so +0 -0
- data/lib/oci8lib_191.so +0 -0
- data/metaconfig +3 -3
- data/ruby-oci8.gemspec +24 -15
- data/setup.rb +4 -4
- data/test/config.rb +64 -84
- data/test/test_all.rb +14 -21
- data/test/test_array_dml.rb +333 -0
- data/test/test_bind_raw.rb +18 -25
- data/test/test_bind_time.rb +78 -91
- data/test/test_break.rb +37 -35
- data/test/test_clob.rb +33 -89
- data/test/test_connstr.rb +5 -4
- data/test/test_datetime.rb +469 -0
- data/test/test_dbi.rb +99 -60
- data/test/test_dbi_clob.rb +3 -8
- data/test/test_metadata.rb +65 -51
- data/test/test_oci8.rb +151 -55
- data/test/test_oracle_version.rb +70 -0
- data/test/test_oradate.rb +76 -83
- data/test/test_oranumber.rb +405 -71
- data/test/test_rowid.rb +6 -11
- metadata +21 -25
- data/ext/oci8/oci8lib.so +0 -0
- data/ruby-oci8.spec +0 -62
- data/support/README +0 -4
- data/support/runit/assert.rb +0 -281
- data/support/runit/cui/testrunner.rb +0 -101
- data/support/runit/error.rb +0 -4
- data/support/runit/method_mappable.rb +0 -20
- data/support/runit/robserver.rb +0 -25
- data/support/runit/setuppable.rb +0 -15
- data/support/runit/teardownable.rb +0 -16
- data/support/runit/testcase.rb +0 -113
- data/support/runit/testfailure.rb +0 -25
- data/support/runit/testresult.rb +0 -121
- data/support/runit/testsuite.rb +0 -43
- data/support/runit/version.rb +0 -3
- data/test/test_describe.rb +0 -137
@@ -0,0 +1,144 @@
|
|
1
|
+
# oracle_version.rb implements OCI8::OracleVersion.
|
2
|
+
#
|
3
|
+
# Copyright (C) 2009 KUBO Takehiro <kubo@jiubao.org>
|
4
|
+
|
5
|
+
#--
|
6
|
+
|
7
|
+
class OCI8
|
8
|
+
|
9
|
+
# A data class, representing Oracle version.
|
10
|
+
#
|
11
|
+
# Oracle version is represented by five numbers:
|
12
|
+
# *major*, *minor*, *update*, *patch* and *port_update*.
|
13
|
+
class OracleVersion
|
14
|
+
include Comparable
|
15
|
+
|
16
|
+
# The first part of the Oracle version.
|
17
|
+
attr_reader :major
|
18
|
+
# The second part of the Oracle version.
|
19
|
+
attr_reader :minor
|
20
|
+
# The third part of the Oracle version.
|
21
|
+
attr_reader :update
|
22
|
+
# The fifth part of the Oracle version.
|
23
|
+
attr_reader :patch
|
24
|
+
# The fourth part of the Oracle version.
|
25
|
+
attr_reader :port_update
|
26
|
+
|
27
|
+
# Creates a OCI8::OracleVersion object.
|
28
|
+
#
|
29
|
+
# If the first argument _arg_ is a String, it is parsed as dotted
|
30
|
+
# version string. If it is bigger than 0x08000000, it is parsed as
|
31
|
+
# a number contains 5-digit Oracle version. Otherwise, it is used
|
32
|
+
# as a major version and the rest arguments are minor, update,
|
33
|
+
# patch and port_update. Unspecified version numbers are zeros by
|
34
|
+
# default.
|
35
|
+
#
|
36
|
+
# == Example
|
37
|
+
# oraver = OCI8::OracleVersion.new('10.2.0.4')
|
38
|
+
# oraver.major # => 10
|
39
|
+
# oraver.minor # => 2
|
40
|
+
# oraver.update # => 0
|
41
|
+
# oraver.patch # => 4
|
42
|
+
# oraver.port_update # => 0
|
43
|
+
#
|
44
|
+
# oraver = OCI8::OracleVersion.new(0x0a200400)
|
45
|
+
# oraver.major # => 10
|
46
|
+
# oraver.minor # => 2
|
47
|
+
# oraver.update # => 0
|
48
|
+
# oraver.patch # => 4
|
49
|
+
# oraver.port_update # => 0
|
50
|
+
def initialize(arg, minor = nil, update = nil, patch = nil, port_update = nil)
|
51
|
+
if arg.is_a? String
|
52
|
+
major, minor, update, patch, port_update = arg.split('.').collect do |v|
|
53
|
+
v.to_i
|
54
|
+
end
|
55
|
+
elsif arg >= 0x08000000
|
56
|
+
major = (arg & 0xFF000000) >> 24
|
57
|
+
minor = (arg & 0x00F00000) >> 20
|
58
|
+
update = (arg & 0x000FF000) >> 12
|
59
|
+
patch = (arg & 0x00000F00) >> 8
|
60
|
+
port_update = (arg & 0x000000FF)
|
61
|
+
else
|
62
|
+
major = arg
|
63
|
+
end
|
64
|
+
@major = major
|
65
|
+
@minor = minor || 0
|
66
|
+
@update = update || 0
|
67
|
+
@patch = patch || 0
|
68
|
+
@port_update = port_update || 0
|
69
|
+
end
|
70
|
+
|
71
|
+
# :call-seq:
|
72
|
+
# oraver <=> other_oraver -> -1, 0, +1
|
73
|
+
#
|
74
|
+
# Compares +oraver+ and +other_oraver+.
|
75
|
+
#
|
76
|
+
# <=> is the basis for the methods <, <=, ==, >, >=, and between?,
|
77
|
+
# included from module Comparable.
|
78
|
+
def <=>(other)
|
79
|
+
cmp = @major <=> other.major
|
80
|
+
return cmp if cmp != 0
|
81
|
+
cmp = @minor <=> other.minor
|
82
|
+
return cmp if cmp != 0
|
83
|
+
cmp = @update <=> other.update
|
84
|
+
return cmp if cmp != 0
|
85
|
+
cmp = @patch <=> other.patch
|
86
|
+
return cmp if cmp != 0
|
87
|
+
@port_update <=> other.port_update
|
88
|
+
end
|
89
|
+
|
90
|
+
# :call-seq:
|
91
|
+
# oraver.to_i -> integer
|
92
|
+
#
|
93
|
+
# Returns an integer number contains 5-digit Oracle version.
|
94
|
+
#
|
95
|
+
# If the hexadecimal notation is 0xAABCCDEE, *major*, *minor*,
|
96
|
+
# *update*, *patch* and *port_update* are 0xAA, 0xB, 0xCC, 0xD and
|
97
|
+
# 0xEE respectively.
|
98
|
+
#
|
99
|
+
# == Example
|
100
|
+
# oraver = OCI8::OracleVersion.new('10.2.0.4')
|
101
|
+
# oraver.to_i # => 169870336
|
102
|
+
# '%08x' % oraver.to_i # => "0a200400"
|
103
|
+
def to_i
|
104
|
+
(@major << 24) | (@minor << 20) | (@update << 12) | (@patch << 8) | @port_update
|
105
|
+
end
|
106
|
+
|
107
|
+
# :call-seq:
|
108
|
+
# oraver.to_s -> string
|
109
|
+
#
|
110
|
+
# Returns a dotted version string of the Oracle version.
|
111
|
+
#
|
112
|
+
# == Example
|
113
|
+
# oraver = OCI8::OracleVersion.new('10.2.0.4')
|
114
|
+
# oraver.to_s # => '10.2.0.4.0'
|
115
|
+
def to_s
|
116
|
+
format('%d.%d.%d.%d.%d', @major, @minor, @update, @patch, @port_update)
|
117
|
+
end
|
118
|
+
|
119
|
+
# :call-seq:
|
120
|
+
# oraver.eql? other -> true or false
|
121
|
+
#
|
122
|
+
# Returns true if +oraver+ and +other+ are the same type and have
|
123
|
+
# equal values.
|
124
|
+
#--
|
125
|
+
# This is for class Hash to test members for equality.
|
126
|
+
def eql?(other)
|
127
|
+
other.is_a? OCI8::OracleVersion and (self <=> other) == 0
|
128
|
+
end
|
129
|
+
|
130
|
+
# :call-seq:
|
131
|
+
# oraver.hash -> integer
|
132
|
+
#
|
133
|
+
# Returns a hash based on the value of +oraver+.
|
134
|
+
#--
|
135
|
+
# This is for class Hash.
|
136
|
+
def hash
|
137
|
+
to_i
|
138
|
+
end
|
139
|
+
|
140
|
+
def inspect # :nodoc:
|
141
|
+
"#<#{self.class.to_s}: #{self.to_s}>"
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
data/lib/oci8lib_18.so
ADDED
Binary file
|
data/lib/oci8lib_191.so
ADDED
Binary file
|
data/metaconfig
CHANGED
@@ -10,7 +10,7 @@ ToplevelInstaller.module_eval {
|
|
10
10
|
old = Dir.pwd
|
11
11
|
@installer.mkdir_p "#{objdir_root}/test"
|
12
12
|
Dir.chdir "#{objdir_root}/test"
|
13
|
-
@installer.ruby("-I#{srcdir_root}/ext/oci8 -I#{srcdir_root}/lib -I#{srcdir_root}/support -I#{srcdir_root}/test #{srcdir_root}/test/test_all.rb")
|
13
|
+
@installer.ruby("-w -I#{srcdir_root}/ext/oci8 -I#{srcdir_root}/lib -I#{srcdir_root}/support -I#{srcdir_root}/test #{srcdir_root}/test/test_all.rb")
|
14
14
|
Dir.chdir old
|
15
15
|
end
|
16
16
|
|
@@ -120,8 +120,8 @@ install_files['oci8lib.so'] = <<-EOS
|
|
120
120
|
install_files['oci8.rb'] = <<-EOS
|
121
121
|
#{get_zcontent('lib/oci8.rb')}EOS
|
122
122
|
|
123
|
-
install_files['
|
124
|
-
#{get_zcontent('lib/
|
123
|
+
install_files['DBD/OCI8/OCI8.rb'] = <<-EOS
|
124
|
+
#{get_zcontent('lib/DBD/OCI8/OCI8.rb')}EOS
|
125
125
|
|
126
126
|
begin
|
127
127
|
installer = Installer.new(install_files)
|
data/ruby-oci8.gemspec
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
# To make a binary gems package:
|
7
7
|
# gem build ruby-oci8.gemspec -- current
|
8
8
|
#
|
9
|
+
require 'fileutils'
|
9
10
|
|
10
11
|
if ARGV.size > 3
|
11
12
|
gem_platform = ARGV[3]
|
@@ -23,32 +24,40 @@ spec = Gem::Specification.new do |s|
|
|
23
24
|
s.description = <<EOS
|
24
25
|
ruby-oci8 is a ruby interface for Oracle using OCI8 API. It is available with Oracle8, Oracle8i, Oracle9i, Oracle10g and Oracle Instant Client.
|
25
26
|
EOS
|
26
|
-
s.autorequire = 'oci8'
|
27
27
|
s.has_rdoc = true
|
28
|
-
s.required_ruby_version = '~> 1.8.0'
|
29
28
|
s.authors = ['KUBO Takehiro']
|
30
29
|
s.platform = gem_platform
|
31
30
|
files = File.read('dist-files').split("\n")
|
32
31
|
if gem_platform == Gem::Platform::RUBY
|
33
|
-
s.require_paths = ['lib']
|
34
32
|
s.extensions << 'ext/oci8/extconf.rb'
|
33
|
+
s.required_ruby_version = '>= 1.8.0'
|
35
34
|
else
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
35
|
+
so_files = Dir.glob('ext/oci8/oci8lib_*.so')
|
36
|
+
has_1_8 = so_files.include? 'ext/oci8/oci8lib_18.so'
|
37
|
+
has_1_9_1 = so_files.include? 'ext/oci8/oci8lib_191.so'
|
38
|
+
if has_1_8 and has_1_9_1
|
39
|
+
puts 'Binary gem for ruby 1.8 and 1.9.1'
|
40
|
+
s.required_ruby_version = '>= 1.8.0'
|
41
|
+
elsif has_1_8 and !has_1_9_1
|
42
|
+
puts 'Binary gem for ruby 1.8'
|
43
|
+
s.required_ruby_version = '~> 1.8.0'
|
44
|
+
elsif !has_1_8 and has_1_9_1
|
45
|
+
puts 'Binary gem for ruby 1.9.1'
|
46
|
+
s.required_ruby_version = '~> 1.9.1'
|
47
|
+
else
|
48
|
+
raise "No compiled binary are found. Run make in advance."
|
40
49
|
end
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
files << file
|
50
|
+
FileUtils.copy so_files, 'lib', :preserve => true
|
51
|
+
files.reject! do |fname|
|
52
|
+
fname =~ /^ext/
|
53
|
+
end
|
54
|
+
so_files.each do |fname|
|
55
|
+
files << 'lib/' + File.basename(fname)
|
48
56
|
end
|
57
|
+
files << 'lib/oci8.rb'
|
49
58
|
end
|
50
59
|
s.files = files
|
51
60
|
s.test_files = 'test/test_all.rb'
|
52
|
-
s.rdoc_options = ['--main', 'README'
|
61
|
+
s.rdoc_options = ['--main', 'README']
|
53
62
|
s.extra_rdoc_files = ['README']
|
54
63
|
end
|
data/setup.rb
CHANGED
@@ -91,7 +91,7 @@ end
|
|
91
91
|
# Config
|
92
92
|
#
|
93
93
|
|
94
|
-
if arg = ARGV.detect{|
|
94
|
+
if arg = ARGV.detect{|a| /\A--rbconfig=/ =~ a }
|
95
95
|
ARGV.delete(arg)
|
96
96
|
require arg.split(/=/, 2)[1]
|
97
97
|
$".push 'rbconfig.rb'
|
@@ -145,7 +145,7 @@ class ConfigTable
|
|
145
145
|
sodir = "$site-ruby/#{c['arch']}"
|
146
146
|
end
|
147
147
|
|
148
|
-
if arg = c['configure_args'].split.detect {|
|
148
|
+
if arg = c['configure_args'].split.detect {|a| /--with-make-prog=/ =~ a }
|
149
149
|
makeprog = arg.sub(/'/, '').split(/=/, 2)[1]
|
150
150
|
else
|
151
151
|
makeprog = 'make'
|
@@ -495,7 +495,7 @@ module FileOperations
|
|
495
495
|
end
|
496
496
|
|
497
497
|
REJECT_DIRS = %w(
|
498
|
-
CVS SCCS RCS CVS.adm
|
498
|
+
CVS SCCS RCS CVS.adm .svn .git
|
499
499
|
)
|
500
500
|
|
501
501
|
def all_dirs_in(dirname)
|
@@ -1163,7 +1163,7 @@ class Installer
|
|
1163
1163
|
end
|
1164
1164
|
|
1165
1165
|
def ruby_scripts
|
1166
|
-
collect_filenames_auto().select {|n| /\.rb\z/ =~ n }
|
1166
|
+
collect_filenames_auto().select {|n| /\.(rb|yml)\z/ =~ n }
|
1167
1167
|
end
|
1168
1168
|
|
1169
1169
|
# picked up many entries from cvs-1.11.1/src/ignore.c
|
data/test/config.rb
CHANGED
@@ -24,106 +24,86 @@ $lobreadnum = 256 # counts in charactors
|
|
24
24
|
# $oracle_client_version: Oracle client library version for which oci8 is compiled.
|
25
25
|
# $oracle_version: lower value of $oracle_server_version and $oracle_client_version.
|
26
26
|
conn = OCI8.new($dbuser, $dbpass, $dbname)
|
27
|
-
|
28
|
-
|
29
|
-
|
27
|
+
begin
|
28
|
+
conn.exec('select value from database_compatible_level') do |row|
|
29
|
+
$oracle_server_version = OCI8::OracleVersion.new(row[0])
|
30
|
+
end
|
31
|
+
rescue OCIError
|
32
|
+
raise if $!.code != 942 # ORA-00942: table or view does not exist
|
33
|
+
$oracle_server_version = OCI8::ORAVER_8_0
|
30
34
|
end
|
31
35
|
conn.logoff
|
32
|
-
|
33
|
-
if $oracle_server_version <
|
36
|
+
|
37
|
+
if $oracle_server_version < OCI8.oracle_client_version
|
34
38
|
$oracle_version = $oracle_server_version
|
35
39
|
else
|
36
|
-
$oracle_version =
|
40
|
+
$oracle_version = OCI8.oracle_client_version
|
37
41
|
end
|
38
42
|
|
39
|
-
if $oracle_version
|
40
|
-
$describe_need_object_mode = true
|
41
|
-
$test_clob = false
|
42
|
-
elsif $oracle_version < 810
|
43
|
-
$describe_need_object_mode = false
|
43
|
+
if $oracle_version < OCI8::ORAVER_8_1
|
44
44
|
$test_clob = false
|
45
45
|
else
|
46
|
-
$describe_need_object_mode = false
|
47
46
|
$test_clob = true
|
48
47
|
end
|
49
48
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
rescue OCIError
|
54
|
-
raise if $!.code != 12516 && $!.code != 12520
|
55
|
-
# sleep a few seconds and try again if
|
56
|
-
# the error code is ORA-12516 or ORA-12520.
|
57
|
-
#
|
58
|
-
# ORA-12516 - TNS:listener could not find available handler with
|
59
|
-
# matching protocol stack
|
60
|
-
# ORA-12520 - TNS:listener could not find available handler for
|
61
|
-
# requested type of server
|
62
|
-
#
|
63
|
-
# Thanks to Christopher Jones.
|
64
|
-
#
|
65
|
-
# Ref: The Underground PHP and Oracle Manual (page 175 in vesion 1.4)
|
66
|
-
# http://www.oracle.com/technology/tech/php/pdf/underground-php-oracle-manual.pdf
|
67
|
-
#
|
68
|
-
sleep(5)
|
69
|
-
yield
|
70
|
-
end
|
71
|
-
end
|
72
|
-
|
73
|
-
$env_is_initialized = false
|
74
|
-
def setup_lowapi()
|
75
|
-
if ! $env_is_initialized
|
76
|
-
if $describe_need_object_mode
|
77
|
-
OCIEnv.initialise(OCI_OBJECT)
|
78
|
-
else
|
79
|
-
OCIEnv.initialise(OCI_DEFAULT)
|
80
|
-
end
|
81
|
-
$env_is_initialized = true
|
82
|
-
end
|
83
|
-
env = OCIEnv.init()
|
84
|
-
svc = do_connect { env.logon($dbuser, $dbpass, $dbname) }
|
85
|
-
stmt = env.alloc(OCIStmt)
|
86
|
-
return env, svc, stmt
|
87
|
-
end
|
88
|
-
|
89
|
-
def get_oci_connection()
|
90
|
-
do_connect { OCI8.new($dbuser, $dbpass, $dbname) }
|
91
|
-
end
|
49
|
+
module Test
|
50
|
+
module Unit
|
51
|
+
class TestCase
|
92
52
|
|
93
|
-
def
|
94
|
-
|
95
|
-
|
53
|
+
def get_oci8_connection()
|
54
|
+
OCI8.new($dbuser, $dbpass, $dbname)
|
55
|
+
rescue OCIError
|
56
|
+
raise if $!.code != 12516 && $!.code != 12520
|
57
|
+
# sleep a few second and try again if
|
58
|
+
# the error code is ORA-12516 or ORA-12520.
|
59
|
+
#
|
60
|
+
# ORA-12516 - TNS:listener could not find available handler with
|
61
|
+
# matching protocol stack
|
62
|
+
# ORA-12520 - TNS:listener could not find available handler for
|
63
|
+
# requested type of server
|
64
|
+
#
|
65
|
+
# Thanks to Christopher Jones.
|
66
|
+
#
|
67
|
+
# Ref: The Underground PHP and Oracle Manual (page 175 in vesion 1.4)
|
68
|
+
# http://www.oracle.com/technology/tech/php/pdf/underground-php-oracle-manual.pdf
|
69
|
+
#
|
70
|
+
sleep(5)
|
71
|
+
OCI8.new($dbuser, $dbpass, $dbname)
|
72
|
+
end
|
96
73
|
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
#
|
102
|
-
|
103
|
-
|
104
|
-
# Oracle 10g -
|
105
|
-
sql = "DROP TABLE #{table_name} PURGE"
|
74
|
+
def get_dbi_connection()
|
75
|
+
DBI.connect("dbi:OCI8:#{$dbname}", $dbuser, $dbpass, 'AutoCommit' => false)
|
76
|
+
rescue DBI::DatabaseError
|
77
|
+
raise if $!.err != 12516 && $!.err != 12520
|
78
|
+
# same as get_oci8_connection()
|
79
|
+
sleep(5)
|
80
|
+
DBI.connect("dbi:OCI8:#{$dbname}", $dbuser, $dbpass, 'AutoCommit' => false)
|
106
81
|
end
|
107
82
|
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
begin
|
116
|
-
@dbh.do(sql)
|
117
|
-
rescue DBI::DatabaseError
|
118
|
-
raise if $!.err != 942 # table or view does not exist
|
83
|
+
def drop_table(table_name)
|
84
|
+
if $oracle_server_version < OCI8::ORAVER_10_1
|
85
|
+
# Oracle 8 - 9i
|
86
|
+
sql = "DROP TABLE #{table_name}"
|
87
|
+
else
|
88
|
+
# Oracle 10g -
|
89
|
+
sql = "DROP TABLE #{table_name} PURGE"
|
119
90
|
end
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
91
|
+
|
92
|
+
if defined? @conn
|
93
|
+
begin
|
94
|
+
@conn.exec(sql)
|
95
|
+
rescue OCIError
|
96
|
+
raise if $!.code != 942 # table or view does not exist
|
97
|
+
end
|
98
|
+
elsif instance_variable_get(:@dbh)
|
99
|
+
begin
|
100
|
+
@dbh.do(sql)
|
101
|
+
rescue DBI::DatabaseError
|
102
|
+
raise if $!.err != 942 # table or view does not exist
|
103
|
+
end
|
125
104
|
end
|
126
|
-
end
|
127
|
-
end
|
105
|
+
end # drop_table
|
106
|
+
end
|
128
107
|
end
|
129
108
|
end
|
109
|
+
|
data/test/test_all.rb
CHANGED
@@ -1,48 +1,41 @@
|
|
1
|
-
require 'runit/testsuite'
|
2
|
-
require 'runit/cui/testrunner'
|
3
|
-
|
4
1
|
srcdir = File.dirname(__FILE__)
|
5
2
|
|
6
|
-
|
3
|
+
require 'oci8'
|
4
|
+
require 'test/unit'
|
5
|
+
require "#{srcdir}/config"
|
6
|
+
|
7
7
|
require "#{srcdir}/test_oradate"
|
8
8
|
require "#{srcdir}/test_oranumber"
|
9
|
-
require "#{srcdir}/test_describe"
|
10
9
|
require "#{srcdir}/test_bind_time"
|
11
10
|
require "#{srcdir}/test_bind_raw"
|
12
11
|
if $test_clob
|
13
12
|
require "#{srcdir}/test_clob"
|
14
13
|
end
|
15
14
|
|
16
|
-
# High-level API
|
17
15
|
require "#{srcdir}/test_break"
|
18
16
|
require "#{srcdir}/test_oci8"
|
17
|
+
require "#{srcdir}/test_datetime"
|
19
18
|
require "#{srcdir}/test_connstr"
|
20
19
|
require "#{srcdir}/test_metadata"
|
20
|
+
require "#{srcdir}/test_array_dml"
|
21
21
|
require "#{srcdir}/test_rowid"
|
22
|
+
require "#{srcdir}/test_oracle_version"
|
22
23
|
|
23
24
|
# Ruby/DBI
|
24
25
|
begin
|
25
26
|
require 'dbi'
|
27
|
+
is_dbi_loaded = true
|
26
28
|
rescue LoadError
|
27
|
-
|
28
|
-
require 'rubygems'
|
29
|
-
require 'dbi'
|
30
|
-
rescue LoadError
|
31
|
-
dbi_not_found = false
|
32
|
-
end
|
29
|
+
is_dbi_loaded = false
|
33
30
|
end
|
34
|
-
|
31
|
+
if is_dbi_loaded
|
35
32
|
require "#{srcdir}/test_dbi"
|
36
33
|
if $test_clob
|
37
34
|
require "#{srcdir}/test_dbi_clob"
|
38
35
|
end
|
39
36
|
end
|
40
37
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
end
|
46
|
-
}
|
47
|
-
#RUNIT::CUI::TestRunner.quiet_mode = true
|
48
|
-
RUNIT::CUI::TestRunner.run(suite)
|
38
|
+
#Test::Unit::AutoRunner.run(true, true)
|
39
|
+
if defined? Test::Unit::AutoRunner
|
40
|
+
Test::Unit::AutoRunner.run()
|
41
|
+
end
|