Methods
- S
- T
-
- test_bad_connection_mysql,
- test_client_encoding,
- test_composite_primary_key,
- test_exec_insert_number,
- test_exec_insert_string,
- test_invalid_column,
- test_pk_and_sequence_for,
- test_pk_and_sequence_for_with_custom_index_type_pk,
- test_pk_and_sequence_for_with_non_standard_primary_key,
- test_respond_to_disable_extension,
- test_respond_to_enable_extension,
- test_supports_extensions,
- test_tables_quoting,
- test_tinyint_integer_typecasting,
- test_valid_column
Included Modules
Instance Public methods
setup()
Link
test_bad_connection_mysql()
Link
# File activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb, line 14 def test_bad_connection_mysql assert_raise ActiveRecord::NoDatabaseError do configuration = ActiveRecord::Base.configurations['arunit'].merge(database: 'inexistent_activerecord_unittest') connection = ActiveRecord::Base.mysql_connection(configuration) connection.exec_query('drop table if exists ex') end end
test_client_encoding()
Link
test_composite_primary_key()
Link
test_exec_insert_number()
Link
# File activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb, line 37 def test_exec_insert_number with_example_table do insert(@conn, 'number' => 10) result = @conn.exec_query('SELECT number FROM ex WHERE number = 10') assert_equal 1, result.rows.length # if there are no bind parameters, it will return a string (due to # the libmysql api) assert_equal '10', result.rows.last.last end end
test_exec_insert_string()
Link
# File activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb, line 50 def test_exec_insert_string with_example_table do str = 'いただきます!' insert(@conn, 'number' => 10, 'data' => str) result = @conn.exec_query('SELECT number, data FROM ex WHERE number = 10') value = result.rows.last.last # FIXME: this should probably be inside the mysql AR adapter? value.force_encoding(@conn.client_encoding) # The strings in this file are utf-8, so transcode to utf-8 value.encode!(Encoding::UTF_8) assert_equal str, value end end
test_invalid_column()
Link
test_pk_and_sequence_for()
Link
test_pk_and_sequence_for_with_custom_index_type_pk()
Link
# File activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb, line 93 def test_pk_and_sequence_for_with_custom_index_type_pk with_example_table '`id` INT(11) auto_increment, PRIMARY KEY USING BTREE (`id`)' do pk, seq = @conn.pk_and_sequence_for('ex') assert_equal 'id', pk assert_equal @conn.default_sequence_name('ex', 'id'), seq end end
test_pk_and_sequence_for_with_non_standard_primary_key()
Link
# File activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb, line 85 def test_pk_and_sequence_for_with_non_standard_primary_key with_example_table '`code` INT(11) auto_increment, PRIMARY KEY (`code`)' do pk, seq = @conn.pk_and_sequence_for('ex') assert_equal 'code', pk assert_equal @conn.default_sequence_name('ex', 'code'), seq end end
test_respond_to_disable_extension()
Link
test_respond_to_enable_extension()
Link
test_supports_extensions()
Link
test_tables_quoting()
Link
test_tinyint_integer_typecasting()
Link
# File activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb, line 107 def test_tinyint_integer_typecasting with_example_table '`status` TINYINT(4)' do insert(@conn, { 'status' => 2 }, 'ex') result = @conn.exec_query('SELECT status FROM ex') assert_equal 2, result.column_types['status'].type_cast_from_database(result.last['status']) end end