cmoran92-activerecord-jdbc-adapter 1.2.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.
Files changed (202) hide show
  1. data/.gitignore +22 -0
  2. data/.travis.yml +8 -0
  3. data/Gemfile +14 -0
  4. data/Gemfile.lock +42 -0
  5. data/History.txt +469 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.rdoc +199 -0
  8. data/Rakefile +60 -0
  9. data/activerecord-jdbc-adapter.gemspec +23 -0
  10. data/bench/bench_attributes.rb +13 -0
  11. data/bench/bench_attributes_new.rb +14 -0
  12. data/bench/bench_create.rb +12 -0
  13. data/bench/bench_find_all.rb +12 -0
  14. data/bench/bench_find_all_mt.rb +25 -0
  15. data/bench/bench_model.rb +85 -0
  16. data/bench/bench_new.rb +12 -0
  17. data/bench/bench_new_valid.rb +12 -0
  18. data/bench/bench_valid.rb +13 -0
  19. data/lib/active_record/connection_adapters/derby_adapter.rb +1 -0
  20. data/lib/active_record/connection_adapters/h2_adapter.rb +1 -0
  21. data/lib/active_record/connection_adapters/hsqldb_adapter.rb +1 -0
  22. data/lib/active_record/connection_adapters/informix_adapter.rb +1 -0
  23. data/lib/active_record/connection_adapters/jdbc_adapter.rb +1 -0
  24. data/lib/active_record/connection_adapters/jndi_adapter.rb +1 -0
  25. data/lib/active_record/connection_adapters/mssql_adapter.rb +1 -0
  26. data/lib/active_record/connection_adapters/mysql2_adapter.rb +1 -0
  27. data/lib/active_record/connection_adapters/mysql_adapter.rb +1 -0
  28. data/lib/active_record/connection_adapters/oracle_adapter.rb +1 -0
  29. data/lib/active_record/connection_adapters/postgresql_adapter.rb +1 -0
  30. data/lib/active_record/connection_adapters/sqlite3_adapter.rb +1 -0
  31. data/lib/activerecord-jdbc-adapter.rb +8 -0
  32. data/lib/arel/engines/sql/compilers/db2_compiler.rb +9 -0
  33. data/lib/arel/engines/sql/compilers/derby_compiler.rb +6 -0
  34. data/lib/arel/engines/sql/compilers/h2_compiler.rb +6 -0
  35. data/lib/arel/engines/sql/compilers/hsqldb_compiler.rb +15 -0
  36. data/lib/arel/engines/sql/compilers/jdbc_compiler.rb +6 -0
  37. data/lib/arel/engines/sql/compilers/mssql_compiler.rb +46 -0
  38. data/lib/arel/visitors/compat.rb +13 -0
  39. data/lib/arel/visitors/db2.rb +17 -0
  40. data/lib/arel/visitors/derby.rb +25 -0
  41. data/lib/arel/visitors/firebird.rb +24 -0
  42. data/lib/arel/visitors/hsqldb.rb +26 -0
  43. data/lib/arel/visitors/sql_server.rb +44 -0
  44. data/lib/arjdbc.rb +24 -0
  45. data/lib/arjdbc/db2.rb +2 -0
  46. data/lib/arjdbc/db2/adapter.rb +510 -0
  47. data/lib/arjdbc/derby.rb +7 -0
  48. data/lib/arjdbc/derby/adapter.rb +351 -0
  49. data/lib/arjdbc/derby/connection_methods.rb +19 -0
  50. data/lib/arjdbc/discover.rb +92 -0
  51. data/lib/arjdbc/firebird.rb +2 -0
  52. data/lib/arjdbc/firebird/adapter.rb +136 -0
  53. data/lib/arjdbc/h2.rb +4 -0
  54. data/lib/arjdbc/h2/adapter.rb +54 -0
  55. data/lib/arjdbc/h2/connection_methods.rb +13 -0
  56. data/lib/arjdbc/hsqldb.rb +4 -0
  57. data/lib/arjdbc/hsqldb/adapter.rb +184 -0
  58. data/lib/arjdbc/hsqldb/connection_methods.rb +15 -0
  59. data/lib/arjdbc/informix.rb +3 -0
  60. data/lib/arjdbc/informix/adapter.rb +138 -0
  61. data/lib/arjdbc/informix/connection_methods.rb +11 -0
  62. data/lib/arjdbc/jdbc.rb +2 -0
  63. data/lib/arjdbc/jdbc/adapter.rb +354 -0
  64. data/lib/arjdbc/jdbc/adapter_java.jar +0 -0
  65. data/lib/arjdbc/jdbc/callbacks.rb +44 -0
  66. data/lib/arjdbc/jdbc/column.rb +47 -0
  67. data/lib/arjdbc/jdbc/compatibility.rb +51 -0
  68. data/lib/arjdbc/jdbc/connection.rb +134 -0
  69. data/lib/arjdbc/jdbc/connection_methods.rb +16 -0
  70. data/lib/arjdbc/jdbc/core_ext.rb +24 -0
  71. data/lib/arjdbc/jdbc/discover.rb +18 -0
  72. data/lib/arjdbc/jdbc/driver.rb +35 -0
  73. data/lib/arjdbc/jdbc/extension.rb +47 -0
  74. data/lib/arjdbc/jdbc/java.rb +14 -0
  75. data/lib/arjdbc/jdbc/jdbc.rake +131 -0
  76. data/lib/arjdbc/jdbc/missing_functionality_helper.rb +87 -0
  77. data/lib/arjdbc/jdbc/quoted_primary_key.rb +28 -0
  78. data/lib/arjdbc/jdbc/railtie.rb +9 -0
  79. data/lib/arjdbc/jdbc/rake_tasks.rb +10 -0
  80. data/lib/arjdbc/jdbc/require_driver.rb +16 -0
  81. data/lib/arjdbc/jdbc/type_converter.rb +126 -0
  82. data/lib/arjdbc/mimer.rb +2 -0
  83. data/lib/arjdbc/mimer/adapter.rb +142 -0
  84. data/lib/arjdbc/mssql.rb +4 -0
  85. data/lib/arjdbc/mssql/adapter.rb +468 -0
  86. data/lib/arjdbc/mssql/connection_methods.rb +31 -0
  87. data/lib/arjdbc/mssql/limit_helpers.rb +108 -0
  88. data/lib/arjdbc/mssql/tsql_helper.rb +61 -0
  89. data/lib/arjdbc/mysql.rb +4 -0
  90. data/lib/arjdbc/mysql/adapter.rb +505 -0
  91. data/lib/arjdbc/mysql/connection_methods.rb +28 -0
  92. data/lib/arjdbc/oracle.rb +3 -0
  93. data/lib/arjdbc/oracle/adapter.rb +428 -0
  94. data/lib/arjdbc/oracle/connection_methods.rb +12 -0
  95. data/lib/arjdbc/postgresql.rb +4 -0
  96. data/lib/arjdbc/postgresql/adapter.rb +825 -0
  97. data/lib/arjdbc/postgresql/connection_methods.rb +23 -0
  98. data/lib/arjdbc/sqlite3.rb +4 -0
  99. data/lib/arjdbc/sqlite3/adapter.rb +387 -0
  100. data/lib/arjdbc/sqlite3/connection_methods.rb +35 -0
  101. data/lib/arjdbc/sybase.rb +2 -0
  102. data/lib/arjdbc/sybase/adapter.rb +46 -0
  103. data/lib/arjdbc/version.rb +8 -0
  104. data/lib/generators/jdbc/USAGE +10 -0
  105. data/lib/generators/jdbc/jdbc_generator.rb +9 -0
  106. data/lib/jdbc_adapter.rb +2 -0
  107. data/lib/jdbc_adapter/rake_tasks.rb +3 -0
  108. data/lib/jdbc_adapter/version.rb +3 -0
  109. data/lib/pg.rb +26 -0
  110. data/pom.xml +57 -0
  111. data/rails_generators/jdbc_generator.rb +15 -0
  112. data/rails_generators/templates/config/initializers/jdbc.rb +7 -0
  113. data/rails_generators/templates/lib/tasks/jdbc.rake +8 -0
  114. data/rakelib/bundler_ext.rb +11 -0
  115. data/rakelib/compile.rake +23 -0
  116. data/rakelib/db.rake +39 -0
  117. data/rakelib/rails.rake +41 -0
  118. data/src/java/arjdbc/db2/DB2RubyJdbcConnection.java +62 -0
  119. data/src/java/arjdbc/derby/DerbyModule.java +324 -0
  120. data/src/java/arjdbc/h2/H2RubyJdbcConnection.java +70 -0
  121. data/src/java/arjdbc/informix/InformixRubyJdbcConnection.java +74 -0
  122. data/src/java/arjdbc/jdbc/AdapterJavaService.java +68 -0
  123. data/src/java/arjdbc/jdbc/JdbcConnectionFactory.java +36 -0
  124. data/src/java/arjdbc/jdbc/RubyJdbcConnection.java +1331 -0
  125. data/src/java/arjdbc/jdbc/SQLBlock.java +48 -0
  126. data/src/java/arjdbc/mssql/MssqlRubyJdbcConnection.java +127 -0
  127. data/src/java/arjdbc/mysql/MySQLModule.java +134 -0
  128. data/src/java/arjdbc/mysql/MySQLRubyJdbcConnection.java +161 -0
  129. data/src/java/arjdbc/oracle/OracleRubyJdbcConnection.java +85 -0
  130. data/src/java/arjdbc/postgresql/PostgresqlRubyJdbcConnection.java +82 -0
  131. data/src/java/arjdbc/sqlite3/Sqlite3RubyJdbcConnection.java +126 -0
  132. data/test/abstract_db_create.rb +135 -0
  133. data/test/activerecord/connection_adapters/type_conversion_test.rb +31 -0
  134. data/test/activerecord/connections/native_jdbc_mysql/connection.rb +25 -0
  135. data/test/activerecord/jall.sh +7 -0
  136. data/test/activerecord/jtest.sh +3 -0
  137. data/test/db/db2.rb +11 -0
  138. data/test/db/derby.rb +12 -0
  139. data/test/db/h2.rb +11 -0
  140. data/test/db/hsqldb.rb +13 -0
  141. data/test/db/informix.rb +11 -0
  142. data/test/db/jdbc.rb +12 -0
  143. data/test/db/jndi_config.rb +40 -0
  144. data/test/db/logger.rb +3 -0
  145. data/test/db/mssql.rb +9 -0
  146. data/test/db/mysql.rb +10 -0
  147. data/test/db/oracle.rb +34 -0
  148. data/test/db/postgres.rb +9 -0
  149. data/test/db/sqlite3.rb +11 -0
  150. data/test/db2_simple_test.rb +66 -0
  151. data/test/derby_migration_test.rb +68 -0
  152. data/test/derby_multibyte_test.rb +12 -0
  153. data/test/derby_simple_test.rb +99 -0
  154. data/test/generic_jdbc_connection_test.rb +29 -0
  155. data/test/h2_change_column_test.rb +68 -0
  156. data/test/h2_simple_test.rb +41 -0
  157. data/test/has_many_through.rb +79 -0
  158. data/test/helper.rb +85 -0
  159. data/test/hsqldb_simple_test.rb +6 -0
  160. data/test/informix_simple_test.rb +48 -0
  161. data/test/jdbc_common.rb +27 -0
  162. data/test/jndi_callbacks_test.rb +40 -0
  163. data/test/jndi_test.rb +25 -0
  164. data/test/manualTestDatabase.rb +191 -0
  165. data/test/models/add_not_null_column_to_table.rb +9 -0
  166. data/test/models/auto_id.rb +15 -0
  167. data/test/models/data_types.rb +30 -0
  168. data/test/models/entry.rb +40 -0
  169. data/test/models/mixed_case.rb +22 -0
  170. data/test/models/reserved_word.rb +15 -0
  171. data/test/models/string_id.rb +17 -0
  172. data/test/models/thing.rb +16 -0
  173. data/test/models/validates_uniqueness_of_string.rb +19 -0
  174. data/test/mssql_db_create_test.rb +26 -0
  175. data/test/mssql_identity_insert_test.rb +19 -0
  176. data/test/mssql_legacy_types_test.rb +58 -0
  177. data/test/mssql_limit_offset_test.rb +136 -0
  178. data/test/mssql_multibyte_test.rb +18 -0
  179. data/test/mssql_simple_test.rb +55 -0
  180. data/test/mysql_db_create_test.rb +27 -0
  181. data/test/mysql_index_length_test.rb +58 -0
  182. data/test/mysql_info_test.rb +123 -0
  183. data/test/mysql_multibyte_test.rb +10 -0
  184. data/test/mysql_nonstandard_primary_key_test.rb +42 -0
  185. data/test/mysql_simple_test.rb +125 -0
  186. data/test/oracle_simple_test.rb +18 -0
  187. data/test/oracle_specific_test.rb +83 -0
  188. data/test/postgres_db_create_test.rb +32 -0
  189. data/test/postgres_drop_db_test.rb +16 -0
  190. data/test/postgres_information_schema_leak_test.rb +29 -0
  191. data/test/postgres_mixed_case_test.rb +29 -0
  192. data/test/postgres_native_type_mapping_test.rb +89 -0
  193. data/test/postgres_nonseq_pkey_test.rb +38 -0
  194. data/test/postgres_reserved_test.rb +22 -0
  195. data/test/postgres_schema_search_path_test.rb +48 -0
  196. data/test/postgres_simple_test.rb +167 -0
  197. data/test/postgres_table_alias_length_test.rb +15 -0
  198. data/test/postgres_type_conversion_test.rb +34 -0
  199. data/test/simple.rb +658 -0
  200. data/test/sqlite3_simple_test.rb +284 -0
  201. data/test/sybase_jtds_simple_test.rb +28 -0
  202. metadata +261 -0
@@ -0,0 +1,284 @@
1
+ require 'jdbc_common'
2
+ require 'db/sqlite3'
3
+ require 'models/data_types'
4
+ require 'models/validates_uniqueness_of_string'
5
+
6
+ class SQLite3SimpleTest < Test::Unit::TestCase
7
+ include SimpleTestMethods
8
+ include ActiveRecord3TestMethods
9
+ include ColumnNameQuotingTests
10
+ include DirtyAttributeTests
11
+
12
+ def test_recreate_database
13
+ assert @connection.tables.include?(Entry.table_name)
14
+ db = @connection.database_name
15
+ @connection.recreate_database(db)
16
+ assert !@connection.tables.include?(Entry.table_name)
17
+ self.setup # avoid teardown complaining
18
+ end
19
+
20
+ def test_execute_insert
21
+ assert_equal 1, Entry.count
22
+ id = @connection.execute "INSERT INTO entries (title, content) VALUES ('Execute Insert', 'This now works with SQLite3')"
23
+ assert_equal Entry.last.id, id
24
+ assert_equal 2, Entry.count
25
+ end
26
+
27
+ def test_execute_update
28
+ affected_rows = @connection.execute "UPDATE entries SET title = 'Execute Update' WHERE id = #{Entry.first.id}"
29
+ assert_equal 1, affected_rows
30
+ assert_equal 'Execute Update', Entry.first.title
31
+ end
32
+
33
+ def test_columns
34
+ cols = ActiveRecord::Base.connection.columns("entries")
35
+ assert cols.find {|col| col.name == "title"}
36
+ end
37
+
38
+ def test_remove_column
39
+ assert_nothing_raised do
40
+ ActiveRecord::Schema.define do
41
+ add_column "entries", "test_remove_column", :string
42
+ end
43
+ end
44
+
45
+ cols = ActiveRecord::Base.connection.columns("entries")
46
+ assert cols.find {|col| col.name == "test_remove_column"}
47
+
48
+ assert_nothing_raised do
49
+ ActiveRecord::Schema.define do
50
+ remove_column "entries", "test_remove_column"
51
+ end
52
+ end
53
+
54
+ cols = ActiveRecord::Base.connection.columns("entries")
55
+ assert !cols.find {|col| col.name == "test_remove_column"}
56
+ end
57
+
58
+ def test_rename_column
59
+ assert_nothing_raised do
60
+ ActiveRecord::Schema.define do
61
+ rename_column "entries", "title", "name"
62
+ end
63
+ end
64
+
65
+ cols = ActiveRecord::Base.connection.columns("entries")
66
+ assert cols.find {|col| col.name == "name"}
67
+ assert !cols.find {|col| col.name == "title"}
68
+
69
+ assert_nothing_raised do
70
+ ActiveRecord::Schema.define do
71
+ rename_column "entries", "name", "title"
72
+ end
73
+ end
74
+
75
+ cols = ActiveRecord::Base.connection.columns("entries")
76
+ assert cols.find {|col| col.name == "title"}
77
+ assert !cols.find {|col| col.name == "name"}
78
+ end
79
+
80
+ def test_rename_column_preserves_content
81
+ post = Entry.find(:first)
82
+ assert_equal @title, post.title
83
+ assert_equal @content, post.content
84
+ assert_equal @rating, post.rating
85
+
86
+ assert_nothing_raised do
87
+ ActiveRecord::Schema.define do
88
+ rename_column "entries", "title", "name"
89
+ end
90
+ end
91
+
92
+ post = Entry.find(:first)
93
+ assert_equal @title, post.name
94
+ assert_equal @content, post.content
95
+ assert_equal @rating, post.rating
96
+ end
97
+
98
+ def test_rename_column_preserves_index
99
+ assert_equal(0, @connection.indexes(:entries).size)
100
+
101
+ index_name = "entries_index"
102
+
103
+ assert_nothing_raised do
104
+ ActiveRecord::Schema.define do
105
+ add_index "entries", "title", :name => index_name
106
+ end
107
+ end
108
+
109
+ indexes = @connection.indexes(:entries)
110
+ assert_equal(1, indexes.size)
111
+ assert_equal "entries", indexes.first.table.to_s
112
+ assert_equal index_name, indexes.first.name
113
+ assert !indexes.first.unique
114
+ assert_equal ["title"], indexes.first.columns
115
+
116
+ assert_nothing_raised do
117
+ ActiveRecord::Schema.define do
118
+ rename_column "entries", "title", "name"
119
+ end
120
+ end
121
+
122
+ indexes = @connection.indexes(:entries)
123
+ assert_equal(1, indexes.size)
124
+ assert_equal "entries", indexes.first.table.to_s
125
+ assert_equal index_name, indexes.first.name
126
+ assert !indexes.first.unique
127
+ assert_equal ["name"], indexes.first.columns
128
+ end
129
+
130
+ def test_column_default
131
+ assert_nothing_raised do
132
+ ActiveRecord::Schema.define do
133
+ add_column "entries", "test_column_default", :string
134
+ end
135
+ end
136
+
137
+ cols = ActiveRecord::Base.connection.columns("entries")
138
+ col = cols.find{|col| col.name == "test_column_default"}
139
+ assert col
140
+ assert_equal col.default, nil
141
+
142
+ end
143
+
144
+ def test_change_column_default
145
+ assert_nothing_raised do
146
+ ActiveRecord::Schema.define do
147
+ add_column "entries", "test_change_column_default", :string, :default => "unchanged"
148
+ end
149
+ end
150
+
151
+ cols = ActiveRecord::Base.connection.columns("entries")
152
+ col = cols.find{|col| col.name == "test_change_column_default"}
153
+ assert col
154
+ assert_equal col.default, 'unchanged'
155
+
156
+ assert_nothing_raised do
157
+ ActiveRecord::Schema.define do
158
+ change_column_default "entries", "test_change_column_default", "changed"
159
+ end
160
+ end
161
+
162
+ cols = ActiveRecord::Base.connection.columns("entries")
163
+ col = cols.find{|col| col.name == "test_change_column_default"}
164
+ assert col
165
+ assert_equal col.default, 'changed'
166
+ end
167
+
168
+ def test_change_column
169
+ assert_nothing_raised do
170
+ ActiveRecord::Schema.define do
171
+ add_column "entries", "test_change_column", :string
172
+ end
173
+ end
174
+
175
+ cols = ActiveRecord::Base.connection.columns("entries")
176
+ col = cols.find{|col| col.name == "test_change_column"}
177
+ assert col
178
+ assert_equal col.type, :string
179
+
180
+ assert_nothing_raised do
181
+ ActiveRecord::Schema.define do
182
+ change_column "entries", "test_change_column", :integer
183
+ end
184
+ end
185
+
186
+ cols = ActiveRecord::Base.connection.columns("entries")
187
+ col = cols.find{|col| col.name == "test_change_column"}
188
+ assert col
189
+ assert_equal col.type, :integer
190
+ end
191
+
192
+ def test_create_xml_column
193
+ assert_nothing_raised do
194
+ @connection.create_table :xml_testings do |t|
195
+ t.xml :xml_test
196
+ end
197
+ end
198
+
199
+ xml_test = @connection.columns(:xml_testings).detect do |c|
200
+ c.name == "xml_test"
201
+ end
202
+
203
+ assert_equal "text", xml_test.sql_type
204
+ ensure
205
+ @connection.drop_table :xml_testings rescue nil
206
+ end
207
+ end
208
+
209
+ # assert_raise ActiveRecord::RecordInvalid do
210
+
211
+ class SQLite3HasManyThroughTest < Test::Unit::TestCase
212
+ include HasManyThroughMethods
213
+ end
214
+
215
+ if jruby?
216
+ JInteger = java.lang.Integer
217
+ else
218
+ JInteger = Fixnum
219
+ class Fixnum
220
+ # Arbitrary value...we could pick
221
+ MAX_VALUE = 2
222
+ end
223
+ end
224
+
225
+ class SQLite3TypeConversionTest < Test::Unit::TestCase
226
+ TEST_TIME = Time.at(1169964202)
227
+ TEST_BINARY = "Some random binary data % \0 and then some"
228
+ def setup
229
+ DbTypeMigration.up
230
+ DbType.create(
231
+ :sample_timestamp => TEST_TIME,
232
+ :sample_datetime => TEST_TIME,
233
+ :sample_time => TEST_TIME,
234
+ :sample_date => TEST_TIME,
235
+ :sample_decimal => JInteger::MAX_VALUE + 1,
236
+ :sample_small_decimal => 3.14,
237
+ :sample_binary => TEST_BINARY)
238
+ DbType.create(
239
+ :sample_timestamp => TEST_TIME,
240
+ :sample_datetime => TEST_TIME,
241
+ :sample_time => TEST_TIME,
242
+ :sample_date => TEST_TIME,
243
+ :sample_decimal => JInteger::MAX_VALUE + 1,
244
+ :sample_small_decimal => 1.0,
245
+ :sample_binary => TEST_BINARY)
246
+ end
247
+
248
+ def teardown
249
+ DbTypeMigration.down
250
+ end
251
+
252
+ def test_decimal
253
+ types = DbType.find(:first)
254
+ assert_equal((JInteger::MAX_VALUE + 1), types.sample_decimal)
255
+ end
256
+
257
+ def test_decimal_scale
258
+ types = DbType.find(:first)
259
+ assert_equal(2, DbType.columns_hash["sample_small_decimal"].scale)
260
+ end
261
+
262
+ def test_decimal_precision
263
+ types = DbType.find(:first)
264
+ assert_equal(3, DbType.columns_hash["sample_small_decimal"].precision)
265
+ end
266
+
267
+ def test_binary
268
+ types = DbType.find(:first)
269
+ assert_equal(TEST_BINARY, types.sample_binary)
270
+ end
271
+
272
+ def test_small_decimal
273
+ types = DbType.find(:all, :order => ["sample_small_decimal desc"])
274
+ assert_equal(3.14, types[0].sample_small_decimal)
275
+ assert_equal(1.0, types[1].sample_small_decimal)
276
+ end
277
+
278
+ def test_small_decimal_with_ordering
279
+ types = DbType.find(:all, :order => ["sample_small_decimal asc"])
280
+ types[1].sample_small_decimal
281
+ assert_equal(1.0, types[0].sample_small_decimal)
282
+ assert_equal(3.14, types[1].sample_small_decimal)
283
+ end
284
+ end
@@ -0,0 +1,28 @@
1
+ require 'jdbc_common'
2
+ require 'db/sybase_jtds'
3
+
4
+ class SybaseJtdsSimpleTest < Test::Unit::TestCase
5
+ include SimpleTestMethods
6
+ end
7
+
8
+ class SybaseAdapterSelectionTest < Test::Unit::TestCase
9
+ class MockConnection
10
+ def adapter=(adapt)
11
+ end
12
+ end
13
+
14
+ def test_jtds_selection_using_dialect
15
+ config = {
16
+ :driver => 'net.sourceforge.jtds.Driver',
17
+ :dialect => 'sybase'
18
+ }
19
+ adapt = JdbcAdapter.new(MockConnection.new, nil, config)
20
+ assert adapt.kind_of?(ArJdbc::Sybase), "Should be a sybase adapter"
21
+ end
22
+
23
+ def test_jtds_selection_not_using_dialect
24
+ config = { :driver => 'net.sourceforge.jtds.Driver' }
25
+ adapt = JdbcAdapter.new(MockConnection.new, nil, config)
26
+ assert adapt.kind_of?(ArJdbc::MsSQL), "Should be a MsSQL apdater"
27
+ end
28
+ end
metadata ADDED
@@ -0,0 +1,261 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cmoran92-activerecord-jdbc-adapter
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 1.2.1
6
+ platform: ruby
7
+ authors:
8
+ - Nick Sieger, Ola Bini and JRuby contributors
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2012-01-25 00:00:00 Z
14
+ dependencies: []
15
+
16
+ description: "activerecord-jdbc-adapter is a database adapter for Rails\\' ActiveRecord\n\
17
+ component that can be used with JRuby[http://www.jruby.org/]. It allows use of\n\
18
+ virtually any JDBC-compliant database with your JRuby on Rails application. Includes patch by cmoran92 to eliminate duplicates when SELECTing DISTING with JOINS on MS SQL Server. "
19
+ email: nick@nicksieger.com, ola.bini@gmail.com
20
+ executables: []
21
+
22
+ extensions: []
23
+
24
+ extra_rdoc_files: []
25
+
26
+ files:
27
+ - .gitignore
28
+ - .travis.yml
29
+ - Gemfile
30
+ - Gemfile.lock
31
+ - History.txt
32
+ - LICENSE.txt
33
+ - README.rdoc
34
+ - Rakefile
35
+ - activerecord-jdbc-adapter.gemspec
36
+ - bench/bench_attributes.rb
37
+ - bench/bench_attributes_new.rb
38
+ - bench/bench_create.rb
39
+ - bench/bench_find_all.rb
40
+ - bench/bench_find_all_mt.rb
41
+ - bench/bench_model.rb
42
+ - bench/bench_new.rb
43
+ - bench/bench_new_valid.rb
44
+ - bench/bench_valid.rb
45
+ - lib/active_record/connection_adapters/derby_adapter.rb
46
+ - lib/active_record/connection_adapters/h2_adapter.rb
47
+ - lib/active_record/connection_adapters/hsqldb_adapter.rb
48
+ - lib/active_record/connection_adapters/informix_adapter.rb
49
+ - lib/active_record/connection_adapters/jdbc_adapter.rb
50
+ - lib/active_record/connection_adapters/jndi_adapter.rb
51
+ - lib/active_record/connection_adapters/mssql_adapter.rb
52
+ - lib/active_record/connection_adapters/mysql2_adapter.rb
53
+ - lib/active_record/connection_adapters/mysql_adapter.rb
54
+ - lib/active_record/connection_adapters/oracle_adapter.rb
55
+ - lib/active_record/connection_adapters/postgresql_adapter.rb
56
+ - lib/active_record/connection_adapters/sqlite3_adapter.rb
57
+ - lib/activerecord-jdbc-adapter.rb
58
+ - lib/arel/engines/sql/compilers/db2_compiler.rb
59
+ - lib/arel/engines/sql/compilers/derby_compiler.rb
60
+ - lib/arel/engines/sql/compilers/h2_compiler.rb
61
+ - lib/arel/engines/sql/compilers/hsqldb_compiler.rb
62
+ - lib/arel/engines/sql/compilers/jdbc_compiler.rb
63
+ - lib/arel/engines/sql/compilers/mssql_compiler.rb
64
+ - lib/arel/visitors/compat.rb
65
+ - lib/arel/visitors/db2.rb
66
+ - lib/arel/visitors/derby.rb
67
+ - lib/arel/visitors/firebird.rb
68
+ - lib/arel/visitors/hsqldb.rb
69
+ - lib/arel/visitors/sql_server.rb
70
+ - lib/arjdbc.rb
71
+ - lib/arjdbc/db2.rb
72
+ - lib/arjdbc/db2/adapter.rb
73
+ - lib/arjdbc/derby.rb
74
+ - lib/arjdbc/derby/adapter.rb
75
+ - lib/arjdbc/derby/connection_methods.rb
76
+ - lib/arjdbc/discover.rb
77
+ - lib/arjdbc/firebird.rb
78
+ - lib/arjdbc/firebird/adapter.rb
79
+ - lib/arjdbc/h2.rb
80
+ - lib/arjdbc/h2/adapter.rb
81
+ - lib/arjdbc/h2/connection_methods.rb
82
+ - lib/arjdbc/hsqldb.rb
83
+ - lib/arjdbc/hsqldb/adapter.rb
84
+ - lib/arjdbc/hsqldb/connection_methods.rb
85
+ - lib/arjdbc/informix.rb
86
+ - lib/arjdbc/informix/adapter.rb
87
+ - lib/arjdbc/informix/connection_methods.rb
88
+ - lib/arjdbc/jdbc.rb
89
+ - lib/arjdbc/jdbc/adapter.rb
90
+ - lib/arjdbc/jdbc/adapter_java.jar
91
+ - lib/arjdbc/jdbc/callbacks.rb
92
+ - lib/arjdbc/jdbc/column.rb
93
+ - lib/arjdbc/jdbc/compatibility.rb
94
+ - lib/arjdbc/jdbc/connection.rb
95
+ - lib/arjdbc/jdbc/connection_methods.rb
96
+ - lib/arjdbc/jdbc/core_ext.rb
97
+ - lib/arjdbc/jdbc/discover.rb
98
+ - lib/arjdbc/jdbc/driver.rb
99
+ - lib/arjdbc/jdbc/extension.rb
100
+ - lib/arjdbc/jdbc/java.rb
101
+ - lib/arjdbc/jdbc/jdbc.rake
102
+ - lib/arjdbc/jdbc/missing_functionality_helper.rb
103
+ - lib/arjdbc/jdbc/quoted_primary_key.rb
104
+ - lib/arjdbc/jdbc/railtie.rb
105
+ - lib/arjdbc/jdbc/rake_tasks.rb
106
+ - lib/arjdbc/jdbc/require_driver.rb
107
+ - lib/arjdbc/jdbc/type_converter.rb
108
+ - lib/arjdbc/mimer.rb
109
+ - lib/arjdbc/mimer/adapter.rb
110
+ - lib/arjdbc/mssql.rb
111
+ - lib/arjdbc/mssql/adapter.rb
112
+ - lib/arjdbc/mssql/connection_methods.rb
113
+ - lib/arjdbc/mssql/limit_helpers.rb
114
+ - lib/arjdbc/mssql/tsql_helper.rb
115
+ - lib/arjdbc/mysql.rb
116
+ - lib/arjdbc/mysql/adapter.rb
117
+ - lib/arjdbc/mysql/connection_methods.rb
118
+ - lib/arjdbc/oracle.rb
119
+ - lib/arjdbc/oracle/adapter.rb
120
+ - lib/arjdbc/oracle/connection_methods.rb
121
+ - lib/arjdbc/postgresql.rb
122
+ - lib/arjdbc/postgresql/adapter.rb
123
+ - lib/arjdbc/postgresql/connection_methods.rb
124
+ - lib/arjdbc/sqlite3.rb
125
+ - lib/arjdbc/sqlite3/adapter.rb
126
+ - lib/arjdbc/sqlite3/connection_methods.rb
127
+ - lib/arjdbc/sybase.rb
128
+ - lib/arjdbc/sybase/adapter.rb
129
+ - lib/arjdbc/version.rb
130
+ - lib/generators/jdbc/USAGE
131
+ - lib/generators/jdbc/jdbc_generator.rb
132
+ - lib/jdbc_adapter.rb
133
+ - lib/jdbc_adapter/rake_tasks.rb
134
+ - lib/jdbc_adapter/version.rb
135
+ - lib/pg.rb
136
+ - pom.xml
137
+ - rails_generators/jdbc_generator.rb
138
+ - rails_generators/templates/config/initializers/jdbc.rb
139
+ - rails_generators/templates/lib/tasks/jdbc.rake
140
+ - rakelib/bundler_ext.rb
141
+ - rakelib/compile.rake
142
+ - rakelib/db.rake
143
+ - rakelib/rails.rake
144
+ - rakelib/test.rake
145
+ - src/java/arjdbc/db2/DB2RubyJdbcConnection.java
146
+ - src/java/arjdbc/derby/DerbyModule.java
147
+ - src/java/arjdbc/h2/H2RubyJdbcConnection.java
148
+ - src/java/arjdbc/informix/InformixRubyJdbcConnection.java
149
+ - src/java/arjdbc/jdbc/AdapterJavaService.java
150
+ - src/java/arjdbc/jdbc/JdbcConnectionFactory.java
151
+ - src/java/arjdbc/jdbc/RubyJdbcConnection.java
152
+ - src/java/arjdbc/jdbc/SQLBlock.java
153
+ - src/java/arjdbc/mssql/MssqlRubyJdbcConnection.java
154
+ - src/java/arjdbc/mysql/MySQLModule.java
155
+ - src/java/arjdbc/mysql/MySQLRubyJdbcConnection.java
156
+ - src/java/arjdbc/oracle/OracleRubyJdbcConnection.java
157
+ - src/java/arjdbc/postgresql/PostgresqlRubyJdbcConnection.java
158
+ - src/java/arjdbc/sqlite3/Sqlite3RubyJdbcConnection.java
159
+ - test/abstract_db_create.rb
160
+ - test/activerecord/connection_adapters/type_conversion_test.rb
161
+ - test/activerecord/connections/native_jdbc_mysql/connection.rb
162
+ - test/activerecord/jall.sh
163
+ - test/activerecord/jtest.sh
164
+ - test/db/db2.rb
165
+ - test/db/derby.rb
166
+ - test/db/h2.rb
167
+ - test/db/hsqldb.rb
168
+ - test/db/informix.rb
169
+ - test/db/jdbc.rb
170
+ - test/db/jndi_config.rb
171
+ - test/db/logger.rb
172
+ - test/db/mssql.rb
173
+ - test/db/mysql.rb
174
+ - test/db/oracle.rb
175
+ - test/db/postgres.rb
176
+ - test/db/sqlite3.rb
177
+ - test/db2_simple_test.rb
178
+ - test/derby_migration_test.rb
179
+ - test/derby_multibyte_test.rb
180
+ - test/derby_simple_test.rb
181
+ - test/generic_jdbc_connection_test.rb
182
+ - test/h2_change_column_test.rb
183
+ - test/h2_simple_test.rb
184
+ - test/has_many_through.rb
185
+ - test/helper.rb
186
+ - test/hsqldb_simple_test.rb
187
+ - test/informix_simple_test.rb
188
+ - test/jdbc_common.rb
189
+ - test/jndi_callbacks_test.rb
190
+ - test/jndi_test.rb
191
+ - test/manualTestDatabase.rb
192
+ - test/models/add_not_null_column_to_table.rb
193
+ - test/models/auto_id.rb
194
+ - test/models/data_types.rb
195
+ - test/models/entry.rb
196
+ - test/models/mixed_case.rb
197
+ - test/models/reserved_word.rb
198
+ - test/models/string_id.rb
199
+ - test/models/thing.rb
200
+ - test/models/validates_uniqueness_of_string.rb
201
+ - test/mssql_db_create_test.rb
202
+ - test/mssql_identity_insert_test.rb
203
+ - test/mssql_legacy_types_test.rb
204
+ - test/mssql_limit_offset_test.rb
205
+ - test/mssql_multibyte_test.rb
206
+ - test/mssql_simple_test.rb
207
+ - test/mysql_db_create_test.rb
208
+ - test/mysql_index_length_test.rb
209
+ - test/mysql_info_test.rb
210
+ - test/mysql_multibyte_test.rb
211
+ - test/mysql_nonstandard_primary_key_test.rb
212
+ - test/mysql_simple_test.rb
213
+ - test/oracle_simple_test.rb
214
+ - test/oracle_specific_test.rb
215
+ - test/postgres_db_create_test.rb
216
+ - test/postgres_drop_db_test.rb
217
+ - test/postgres_information_schema_leak_test.rb
218
+ - test/postgres_mixed_case_test.rb
219
+ - test/postgres_native_type_mapping_test.rb
220
+ - test/postgres_nonseq_pkey_test.rb
221
+ - test/postgres_reserved_test.rb
222
+ - test/postgres_schema_search_path_test.rb
223
+ - test/postgres_simple_test.rb
224
+ - test/postgres_table_alias_length_test.rb
225
+ - test/postgres_type_conversion_test.rb
226
+ - test/simple.rb
227
+ - test/sqlite3_simple_test.rb
228
+ - test/sybase_jtds_simple_test.rb
229
+ homepage: https://github.com/jruby/activerecord-jdbc-adapter
230
+ licenses: []
231
+
232
+ post_install_message:
233
+ rdoc_options:
234
+ - --main
235
+ - README.txt
236
+ - -SHN
237
+ - -f
238
+ - darkfish
239
+ require_paths:
240
+ - lib
241
+ required_ruby_version: !ruby/object:Gem::Requirement
242
+ none: false
243
+ requirements:
244
+ - - ">="
245
+ - !ruby/object:Gem::Version
246
+ version: "0"
247
+ required_rubygems_version: !ruby/object:Gem::Requirement
248
+ none: false
249
+ requirements:
250
+ - - ">="
251
+ - !ruby/object:Gem::Version
252
+ version: "0"
253
+ requirements: []
254
+
255
+ rubyforge_project: jruby-extras
256
+ rubygems_version: 1.8.15
257
+ signing_key:
258
+ specification_version: 3
259
+ summary: JDBC adapter for ActiveRecord, for use within JRuby on Rails.
260
+ test_files: []
261
+