activerecord-jdbc-adapter 1.0.3-java → 50.1-java

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 (268) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +33 -0
  3. data/.travis.yml +79 -0
  4. data/.yardopts +4 -0
  5. data/CONTRIBUTING.md +50 -0
  6. data/Gemfile +91 -0
  7. data/History.md +1191 -0
  8. data/LICENSE.txt +22 -17
  9. data/README.md +169 -0
  10. data/RUNNING_TESTS.md +127 -0
  11. data/Rakefile +294 -5
  12. data/Rakefile.jdbc +20 -0
  13. data/activerecord-jdbc-adapter.gemspec +55 -0
  14. data/lib/active_record/connection_adapters/as400_adapter.rb +2 -0
  15. data/lib/active_record/connection_adapters/db2_adapter.rb +1 -0
  16. data/lib/active_record/connection_adapters/firebird_adapter.rb +1 -0
  17. data/lib/active_record/connection_adapters/mariadb_adapter.rb +1 -0
  18. data/lib/active_record/connection_adapters/sqlserver_adapter.rb +1 -0
  19. data/lib/activerecord-jdbc-adapter.rb +0 -5
  20. data/lib/arel/visitors/compat.rb +60 -0
  21. data/lib/arel/visitors/db2.rb +128 -6
  22. data/lib/arel/visitors/derby.rb +103 -10
  23. data/lib/arel/visitors/firebird.rb +79 -0
  24. data/lib/arel/visitors/h2.rb +25 -0
  25. data/lib/arel/visitors/hsqldb.rb +18 -10
  26. data/lib/arel/visitors/postgresql_jdbc.rb +6 -0
  27. data/lib/arel/visitors/sql_server.rb +225 -0
  28. data/lib/arel/visitors/sql_server/ng42.rb +293 -0
  29. data/lib/arjdbc.rb +11 -21
  30. data/lib/arjdbc/abstract/connection_management.rb +35 -0
  31. data/lib/arjdbc/abstract/core.rb +64 -0
  32. data/lib/arjdbc/abstract/database_statements.rb +64 -0
  33. data/lib/arjdbc/abstract/statement_cache.rb +58 -0
  34. data/lib/arjdbc/abstract/transaction_support.rb +86 -0
  35. data/lib/arjdbc/db2.rb +3 -1
  36. data/lib/arjdbc/db2/adapter.rb +630 -250
  37. data/lib/arjdbc/db2/as400.rb +130 -0
  38. data/lib/arjdbc/db2/column.rb +167 -0
  39. data/lib/arjdbc/db2/connection_methods.rb +44 -0
  40. data/lib/arjdbc/derby.rb +1 -5
  41. data/lib/arjdbc/derby/active_record_patch.rb +13 -0
  42. data/lib/arjdbc/derby/adapter.rb +409 -217
  43. data/lib/arjdbc/derby/connection_methods.rb +16 -14
  44. data/lib/arjdbc/derby/schema_creation.rb +15 -0
  45. data/lib/arjdbc/discover.rb +62 -50
  46. data/lib/arjdbc/firebird.rb +3 -1
  47. data/lib/arjdbc/firebird/adapter.rb +365 -62
  48. data/lib/arjdbc/firebird/connection_methods.rb +23 -0
  49. data/lib/arjdbc/h2.rb +2 -3
  50. data/lib/arjdbc/h2/adapter.rb +273 -6
  51. data/lib/arjdbc/h2/connection_methods.rb +23 -8
  52. data/lib/arjdbc/hsqldb.rb +2 -3
  53. data/lib/arjdbc/hsqldb/adapter.rb +204 -77
  54. data/lib/arjdbc/hsqldb/connection_methods.rb +24 -10
  55. data/lib/arjdbc/hsqldb/explain_support.rb +35 -0
  56. data/lib/arjdbc/hsqldb/schema_creation.rb +11 -0
  57. data/lib/arjdbc/informix.rb +4 -2
  58. data/lib/arjdbc/informix/adapter.rb +78 -54
  59. data/lib/arjdbc/informix/connection_methods.rb +8 -9
  60. data/lib/arjdbc/jdbc.rb +59 -2
  61. data/lib/arjdbc/jdbc/adapter.rb +356 -166
  62. data/lib/arjdbc/jdbc/adapter_java.jar +0 -0
  63. data/lib/arjdbc/jdbc/adapter_require.rb +46 -0
  64. data/lib/arjdbc/jdbc/base_ext.rb +15 -0
  65. data/lib/arjdbc/jdbc/callbacks.rb +27 -18
  66. data/lib/arjdbc/jdbc/column.rb +79 -20
  67. data/lib/arjdbc/jdbc/connection.rb +5 -119
  68. data/lib/arjdbc/jdbc/connection_methods.rb +32 -4
  69. data/lib/arjdbc/jdbc/error.rb +65 -0
  70. data/lib/arjdbc/jdbc/extension.rb +41 -29
  71. data/lib/arjdbc/jdbc/java.rb +5 -6
  72. data/lib/arjdbc/jdbc/jdbc.rake +3 -126
  73. data/lib/arjdbc/jdbc/railtie.rb +2 -9
  74. data/lib/arjdbc/jdbc/rake_tasks.rb +3 -10
  75. data/lib/arjdbc/jdbc/serialized_attributes_helper.rb +3 -0
  76. data/lib/arjdbc/jdbc/type_cast.rb +166 -0
  77. data/lib/arjdbc/jdbc/type_converter.rb +35 -19
  78. data/lib/arjdbc/mssql.rb +6 -3
  79. data/lib/arjdbc/mssql/adapter.rb +630 -298
  80. data/lib/arjdbc/mssql/column.rb +200 -0
  81. data/lib/arjdbc/mssql/connection_methods.rb +66 -17
  82. data/lib/arjdbc/mssql/explain_support.rb +99 -0
  83. data/lib/arjdbc/mssql/limit_helpers.rb +189 -50
  84. data/lib/arjdbc/mssql/lock_methods.rb +77 -0
  85. data/lib/arjdbc/mssql/types.rb +343 -0
  86. data/lib/arjdbc/mssql/utils.rb +82 -0
  87. data/lib/arjdbc/mysql.rb +2 -3
  88. data/lib/arjdbc/mysql/adapter.rb +86 -356
  89. data/lib/arjdbc/mysql/connection_methods.rb +159 -23
  90. data/lib/arjdbc/oracle/adapter.rb +714 -263
  91. data/lib/arjdbc/postgresql.rb +2 -3
  92. data/lib/arjdbc/postgresql/_bc_time_cast_patch.rb +24 -0
  93. data/lib/arjdbc/postgresql/adapter.rb +570 -400
  94. data/lib/arjdbc/postgresql/base/array_decoder.rb +26 -0
  95. data/lib/arjdbc/postgresql/base/array_encoder.rb +25 -0
  96. data/lib/arjdbc/postgresql/base/array_parser.rb +95 -0
  97. data/lib/arjdbc/postgresql/base/pgconn.rb +11 -0
  98. data/lib/arjdbc/postgresql/column.rb +51 -0
  99. data/lib/arjdbc/postgresql/connection_methods.rb +57 -18
  100. data/lib/arjdbc/postgresql/name.rb +24 -0
  101. data/lib/arjdbc/postgresql/oid_types.rb +192 -0
  102. data/lib/arjdbc/railtie.rb +11 -0
  103. data/lib/arjdbc/sqlite3.rb +2 -3
  104. data/lib/arjdbc/sqlite3/adapter.rb +518 -198
  105. data/lib/arjdbc/sqlite3/connection_methods.rb +49 -24
  106. data/lib/arjdbc/sybase.rb +2 -2
  107. data/lib/arjdbc/sybase/adapter.rb +7 -6
  108. data/lib/arjdbc/tasks.rb +13 -0
  109. data/lib/arjdbc/tasks/database_tasks.rb +52 -0
  110. data/lib/arjdbc/tasks/databases.rake +91 -0
  111. data/lib/arjdbc/tasks/databases3.rake +215 -0
  112. data/lib/arjdbc/tasks/databases4.rake +39 -0
  113. data/lib/arjdbc/tasks/db2_database_tasks.rb +104 -0
  114. data/lib/arjdbc/tasks/derby_database_tasks.rb +95 -0
  115. data/lib/arjdbc/tasks/h2_database_tasks.rb +31 -0
  116. data/lib/arjdbc/tasks/hsqldb_database_tasks.rb +70 -0
  117. data/lib/arjdbc/tasks/jdbc_database_tasks.rb +169 -0
  118. data/lib/arjdbc/tasks/mssql_database_tasks.rb +46 -0
  119. data/lib/arjdbc/util/quoted_cache.rb +60 -0
  120. data/lib/arjdbc/util/serialized_attributes.rb +98 -0
  121. data/lib/arjdbc/util/table_copier.rb +110 -0
  122. data/lib/arjdbc/version.rb +1 -6
  123. data/lib/generators/jdbc/USAGE +9 -0
  124. data/lib/generators/jdbc/jdbc_generator.rb +8 -0
  125. data/lib/jdbc_adapter.rb +1 -1
  126. data/lib/jdbc_adapter/rake_tasks.rb +3 -2
  127. data/lib/jdbc_adapter/version.rb +2 -1
  128. data/pom.xml +114 -0
  129. data/rails_generators/jdbc_generator.rb +1 -1
  130. data/rails_generators/templates/config/initializers/jdbc.rb +8 -5
  131. data/rails_generators/templates/lib/tasks/jdbc.rake +7 -4
  132. data/rakelib/01-tomcat.rake +51 -0
  133. data/rakelib/02-test.rake +132 -0
  134. data/rakelib/bundler_ext.rb +11 -0
  135. data/rakelib/compile.rake +67 -22
  136. data/rakelib/db.rake +61 -0
  137. data/rakelib/rails.rake +204 -29
  138. data/src/java/arjdbc/ArJdbcModule.java +286 -0
  139. data/src/java/arjdbc/db2/DB2Module.java +76 -0
  140. data/src/java/arjdbc/db2/DB2RubyJdbcConnection.java +126 -0
  141. data/src/java/arjdbc/derby/DerbyModule.java +99 -243
  142. data/src/java/arjdbc/derby/DerbyRubyJdbcConnection.java +152 -0
  143. data/src/java/arjdbc/firebird/FirebirdRubyJdbcConnection.java +174 -0
  144. data/src/java/arjdbc/{jdbc/JdbcConnectionFactory.java → h2/H2Module.java} +20 -6
  145. data/src/java/arjdbc/h2/H2RubyJdbcConnection.java +27 -12
  146. data/src/java/arjdbc/hsqldb/HSQLDBModule.java +73 -0
  147. data/src/java/arjdbc/informix/InformixRubyJdbcConnection.java +7 -6
  148. data/src/java/arjdbc/jdbc/AdapterJavaService.java +7 -29
  149. data/src/java/arjdbc/jdbc/Callable.java +44 -0
  150. data/src/java/arjdbc/jdbc/ConnectionFactory.java +132 -0
  151. data/src/java/arjdbc/jdbc/DataSourceConnectionFactory.java +157 -0
  152. data/src/java/arjdbc/jdbc/DriverConnectionFactory.java +63 -0
  153. data/src/java/arjdbc/jdbc/DriverWrapper.java +119 -0
  154. data/src/java/arjdbc/jdbc/JdbcResult.java +130 -0
  155. data/src/java/arjdbc/jdbc/RubyJdbcConnection.java +3622 -948
  156. data/src/java/arjdbc/mssql/MSSQLModule.java +90 -0
  157. data/src/java/arjdbc/mssql/MSSQLRubyJdbcConnection.java +181 -0
  158. data/src/java/arjdbc/mysql/MySQLModule.java +99 -81
  159. data/src/java/arjdbc/mysql/MySQLRubyJdbcConnection.java +294 -0
  160. data/src/java/arjdbc/oracle/OracleModule.java +80 -0
  161. data/src/java/arjdbc/oracle/OracleRubyJdbcConnection.java +387 -17
  162. data/src/java/arjdbc/postgresql/ByteaUtils.java +157 -0
  163. data/src/java/arjdbc/postgresql/PgResultSetMetaDataWrapper.java +23 -0
  164. data/src/java/arjdbc/postgresql/PostgreSQLModule.java +77 -0
  165. data/src/java/arjdbc/postgresql/PostgreSQLResult.java +184 -0
  166. data/src/java/arjdbc/postgresql/PostgreSQLRubyJdbcConnection.java +952 -0
  167. data/src/java/arjdbc/sqlite3/SQLite3Module.java +73 -0
  168. data/src/java/arjdbc/sqlite3/SQLite3RubyJdbcConnection.java +525 -0
  169. data/src/java/arjdbc/util/CallResultSet.java +826 -0
  170. data/src/java/arjdbc/util/DateTimeUtils.java +580 -0
  171. data/src/java/arjdbc/util/ObjectSupport.java +65 -0
  172. data/src/java/arjdbc/util/QuotingUtils.java +138 -0
  173. data/src/java/arjdbc/util/StringCache.java +63 -0
  174. data/src/java/arjdbc/util/StringHelper.java +159 -0
  175. metadata +245 -268
  176. data/History.txt +0 -369
  177. data/Manifest.txt +0 -180
  178. data/README.txt +0 -181
  179. data/lib/active_record/connection_adapters/oracle_adapter.rb +0 -1
  180. data/lib/arel/engines/sql/compilers/db2_compiler.rb +0 -9
  181. data/lib/arel/engines/sql/compilers/derby_compiler.rb +0 -6
  182. data/lib/arel/engines/sql/compilers/h2_compiler.rb +0 -6
  183. data/lib/arel/engines/sql/compilers/hsqldb_compiler.rb +0 -15
  184. data/lib/arel/engines/sql/compilers/jdbc_compiler.rb +0 -6
  185. data/lib/arel/engines/sql/compilers/mssql_compiler.rb +0 -46
  186. data/lib/arel/visitors/mssql.rb +0 -44
  187. data/lib/arjdbc/jdbc/compatibility.rb +0 -51
  188. data/lib/arjdbc/jdbc/core_ext.rb +0 -24
  189. data/lib/arjdbc/jdbc/discover.rb +0 -18
  190. data/lib/arjdbc/jdbc/driver.rb +0 -44
  191. data/lib/arjdbc/jdbc/missing_functionality_helper.rb +0 -87
  192. data/lib/arjdbc/jdbc/quoted_primary_key.rb +0 -28
  193. data/lib/arjdbc/jdbc/require_driver.rb +0 -16
  194. data/lib/arjdbc/mimer.rb +0 -2
  195. data/lib/arjdbc/mimer/adapter.rb +0 -142
  196. data/lib/arjdbc/mssql/tsql_helper.rb +0 -61
  197. data/lib/arjdbc/oracle.rb +0 -3
  198. data/lib/arjdbc/oracle/connection_methods.rb +0 -11
  199. data/lib/pg.rb +0 -4
  200. data/rakelib/package.rake +0 -92
  201. data/rakelib/test.rake +0 -81
  202. data/src/java/arjdbc/jdbc/SQLBlock.java +0 -48
  203. data/src/java/arjdbc/mssql/MssqlRubyJdbcConnection.java +0 -127
  204. data/src/java/arjdbc/postgresql/PostgresqlRubyJdbcConnection.java +0 -57
  205. data/src/java/arjdbc/sqlite3/Sqlite3RubyJdbcConnection.java +0 -64
  206. data/test/abstract_db_create.rb +0 -117
  207. data/test/activerecord/connection_adapters/type_conversion_test.rb +0 -31
  208. data/test/activerecord/connections/native_jdbc_mysql/connection.rb +0 -25
  209. data/test/db/db2.rb +0 -11
  210. data/test/db/derby.rb +0 -12
  211. data/test/db/h2.rb +0 -11
  212. data/test/db/hsqldb.rb +0 -13
  213. data/test/db/informix.rb +0 -11
  214. data/test/db/jdbc.rb +0 -11
  215. data/test/db/jndi_config.rb +0 -40
  216. data/test/db/logger.rb +0 -3
  217. data/test/db/mssql.rb +0 -9
  218. data/test/db/mysql.rb +0 -10
  219. data/test/db/oracle.rb +0 -34
  220. data/test/db/postgres.rb +0 -9
  221. data/test/db/sqlite3.rb +0 -11
  222. data/test/db2_simple_test.rb +0 -66
  223. data/test/derby_migration_test.rb +0 -68
  224. data/test/derby_multibyte_test.rb +0 -12
  225. data/test/derby_simple_test.rb +0 -99
  226. data/test/generic_jdbc_connection_test.rb +0 -29
  227. data/test/h2_simple_test.rb +0 -41
  228. data/test/has_many_through.rb +0 -79
  229. data/test/helper.rb +0 -5
  230. data/test/hsqldb_simple_test.rb +0 -6
  231. data/test/informix_simple_test.rb +0 -48
  232. data/test/jdbc_common.rb +0 -25
  233. data/test/jndi_callbacks_test.rb +0 -40
  234. data/test/jndi_test.rb +0 -25
  235. data/test/manualTestDatabase.rb +0 -191
  236. data/test/models/add_not_null_column_to_table.rb +0 -12
  237. data/test/models/auto_id.rb +0 -18
  238. data/test/models/data_types.rb +0 -28
  239. data/test/models/entry.rb +0 -43
  240. data/test/models/mixed_case.rb +0 -25
  241. data/test/models/reserved_word.rb +0 -18
  242. data/test/models/string_id.rb +0 -18
  243. data/test/models/validates_uniqueness_of_string.rb +0 -19
  244. data/test/mssql_db_create_test.rb +0 -26
  245. data/test/mssql_identity_insert_test.rb +0 -19
  246. data/test/mssql_legacy_types_test.rb +0 -58
  247. data/test/mssql_limit_offset_test.rb +0 -136
  248. data/test/mssql_multibyte_test.rb +0 -18
  249. data/test/mssql_simple_test.rb +0 -55
  250. data/test/mysql_db_create_test.rb +0 -27
  251. data/test/mysql_info_test.rb +0 -113
  252. data/test/mysql_multibyte_test.rb +0 -10
  253. data/test/mysql_nonstandard_primary_key_test.rb +0 -42
  254. data/test/mysql_simple_test.rb +0 -49
  255. data/test/oracle_simple_test.rb +0 -18
  256. data/test/oracle_specific_test.rb +0 -83
  257. data/test/pick_rails_version.rb +0 -3
  258. data/test/postgres_db_create_test.rb +0 -32
  259. data/test/postgres_drop_db_test.rb +0 -16
  260. data/test/postgres_mixed_case_test.rb +0 -29
  261. data/test/postgres_nonseq_pkey_test.rb +0 -38
  262. data/test/postgres_reserved_test.rb +0 -22
  263. data/test/postgres_schema_search_path_test.rb +0 -44
  264. data/test/postgres_simple_test.rb +0 -51
  265. data/test/postgres_table_alias_length_test.rb +0 -15
  266. data/test/simple.rb +0 -546
  267. data/test/sqlite3_simple_test.rb +0 -233
  268. data/test/sybase_jtds_simple_test.rb +0 -28
@@ -1,233 +0,0 @@
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
-
10
- def test_recreate_database
11
- assert @connection.tables.include?(Entry.table_name)
12
- db = @connection.database_name
13
- @connection.recreate_database(db)
14
- assert (not @connection.tables.include? Entry.table_name)
15
- self.setup # avoid teardown complaining
16
- end
17
-
18
- def test_execute_insert
19
- assert_equal 1, Entry.count
20
- id = @connection.execute "INSERT INTO entries (title, content) VALUES ('Execute Insert', 'This now works with SQLite3')"
21
- assert_equal Entry.last.id, id
22
- assert_equal 2, Entry.count
23
- end
24
-
25
- def test_execute_update
26
- affected_rows = @connection.execute "UPDATE entries SET title = 'Execute Update' WHERE id = #{Entry.first.id}"
27
- assert_equal 1, affected_rows
28
- assert_equal 'Execute Update', Entry.first.title
29
- end
30
-
31
- def test_columns
32
- cols = ActiveRecord::Base.connection.columns("entries")
33
- assert cols.find {|col| col.name == "title"}
34
- end
35
-
36
- def test_remove_column
37
- assert_nothing_raised do
38
- ActiveRecord::Schema.define do
39
- add_column "entries", "test_remove_column", :string
40
- end
41
- end
42
-
43
- cols = ActiveRecord::Base.connection.columns("entries")
44
- assert cols.find {|col| col.name == "test_remove_column"}
45
-
46
- assert_nothing_raised do
47
- ActiveRecord::Schema.define do
48
- remove_column "entries", "test_remove_column"
49
- end
50
- end
51
-
52
- cols = ActiveRecord::Base.connection.columns("entries")
53
- assert !cols.find {|col| col.name == "test_remove_column"}
54
- end
55
-
56
- def test_rename_column
57
- assert_nothing_raised do
58
- ActiveRecord::Schema.define do
59
- rename_column "entries", "title", "name"
60
- end
61
- end
62
-
63
- cols = ActiveRecord::Base.connection.columns("entries")
64
- assert cols.find {|col| col.name == "name"}
65
- assert !cols.find {|col| col.name == "title"}
66
-
67
- assert_nothing_raised do
68
- ActiveRecord::Schema.define do
69
- rename_column "entries", "name", "title"
70
- end
71
- end
72
-
73
- cols = ActiveRecord::Base.connection.columns("entries")
74
- assert cols.find {|col| col.name == "title"}
75
- assert !cols.find {|col| col.name == "name"}
76
- end
77
-
78
- def test_rename_column_preserves_content
79
- post = Entry.find(:first)
80
- assert_equal @title, post.title
81
- assert_equal @content, post.content
82
- assert_equal @rating, post.rating
83
-
84
- assert_nothing_raised do
85
- ActiveRecord::Schema.define do
86
- rename_column "entries", "title", "name"
87
- end
88
- end
89
-
90
- post = Entry.find(:first)
91
- assert_equal @title, post.name
92
- assert_equal @content, post.content
93
- assert_equal @rating, post.rating
94
- end
95
-
96
- def test_rename_column_preserves_index
97
- assert_equal(0, @connection.indexes(:entries).size)
98
-
99
- index_name = "entries_index"
100
-
101
- assert_nothing_raised do
102
- ActiveRecord::Schema.define do
103
- add_index "entries", "title", :name => index_name
104
- end
105
- end
106
-
107
- indexes = @connection.indexes(:entries)
108
- assert_equal(1, indexes.size)
109
- assert_equal "entries", indexes.first.table.to_s
110
- assert_equal index_name, indexes.first.name
111
- assert !indexes.first.unique
112
- assert_equal ["title"], indexes.first.columns
113
-
114
- assert_nothing_raised do
115
- ActiveRecord::Schema.define do
116
- rename_column "entries", "title", "name"
117
- end
118
- end
119
-
120
- indexes = @connection.indexes(:entries)
121
- assert_equal(1, indexes.size)
122
- assert_equal "entries", indexes.first.table.to_s
123
- assert_equal index_name, indexes.first.name
124
- assert !indexes.first.unique
125
- assert_equal ["name"], indexes.first.columns
126
- end
127
-
128
- def test_change_column_default
129
- assert_nothing_raised do
130
- ActiveRecord::Schema.define do
131
- add_column "entries", "test_change_column_default", :string, :default => "unchanged"
132
- end
133
- end
134
-
135
- cols = ActiveRecord::Base.connection.columns("entries")
136
- col = cols.find{|col| col.name == "test_change_column_default"}
137
- assert col
138
- assert_equal col.default, 'unchanged'
139
-
140
- assert_nothing_raised do
141
- ActiveRecord::Schema.define do
142
- change_column_default "entries", "test_change_column_default", "changed"
143
- end
144
- end
145
-
146
- cols = ActiveRecord::Base.connection.columns("entries")
147
- col = cols.find{|col| col.name == "test_change_column_default"}
148
- assert col
149
- assert_equal col.default, 'changed'
150
- end
151
-
152
- def test_change_column
153
- assert_nothing_raised do
154
- ActiveRecord::Schema.define do
155
- add_column "entries", "test_change_column", :string
156
- end
157
- end
158
-
159
- cols = ActiveRecord::Base.connection.columns("entries")
160
- col = cols.find{|col| col.name == "test_change_column"}
161
- assert col
162
- assert_equal col.type, :string
163
-
164
- assert_nothing_raised do
165
- ActiveRecord::Schema.define do
166
- change_column "entries", "test_change_column", :integer
167
- end
168
- end
169
-
170
- cols = ActiveRecord::Base.connection.columns("entries")
171
- col = cols.find{|col| col.name == "test_change_column"}
172
- assert col
173
- assert_equal col.type, :integer
174
- end
175
-
176
- end
177
-
178
- # assert_raise ActiveRecord::RecordInvalid do
179
-
180
- class SQLite3HasManyThroughTest < Test::Unit::TestCase
181
- include HasManyThroughMethods
182
- end
183
-
184
- if jruby?
185
- JInteger = java.lang.Integer
186
- else
187
- JInteger = Fixnum
188
- class Fixnum
189
- # Arbitrary value...we could pick
190
- MAX_VALUE = 2
191
- end
192
- end
193
-
194
- class SQLite3TypeConversionTest < Test::Unit::TestCase
195
- TEST_TIME = Time.at(1169964202)
196
- TEST_BINARY = "Some random binary data % \0 and then some"
197
- def setup
198
- DbTypeMigration.up
199
- DbType.create(
200
- :sample_timestamp => TEST_TIME,
201
- :sample_datetime => TEST_TIME,
202
- :sample_time => TEST_TIME,
203
- :sample_date => TEST_TIME,
204
- :sample_decimal => JInteger::MAX_VALUE + 1,
205
- :sample_small_decimal => 3.14,
206
- :sample_binary => TEST_BINARY)
207
- end
208
-
209
- def teardown
210
- DbTypeMigration.down
211
- end
212
-
213
- def test_decimal
214
- types = DbType.find(:first)
215
- assert_equal((JInteger::MAX_VALUE + 1), types.sample_decimal)
216
- end
217
-
218
- def test_decimal_scale
219
- types = DbType.find(:first)
220
- assert_equal(2, DbType.columns_hash["sample_small_decimal"].scale)
221
- end
222
-
223
- def test_decimal_precision
224
- types = DbType.find(:first)
225
- assert_equal(3, DbType.columns_hash["sample_small_decimal"].precision)
226
- end
227
-
228
- def test_binary
229
- types = DbType.find(:first)
230
- assert_equal(TEST_BINARY, types.sample_binary)
231
- end
232
-
233
- end
@@ -1,28 +0,0 @@
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