Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove redundant test_too_many_binds #36168

Merged

Conversation

yahonda
Copy link
Member

@yahonda yahonda commented May 3, 2019

Summary

This pull request removes redundant test_too_many_binds with ActiveRecord::BindParameterTest#test_too_many_binds

sqlite adapter has its own bind_params_length, ActiveRecord::BindParameterTest#test_too_many_binds respects it.

  • Modified ActiveRecord::BindParameterTest#test_too_many_binds to show bind_params_length value
$ git diff
diff --git a/activerecord/test/cases/bind_parameter_test.rb b/activerecord/test/cases/bind_parameter_test.rb
index 85685d1d00..83cd07f1d7 100644
--- a/activerecord/test/cases/bind_parameter_test.rb
+++ b/activerecord/test/cases/bind_parameter_test.rb
@@ -108,6 +108,7 @@ def test_statement_cache_with_sql_string_literal

       def test_too_many_binds
         bind_params_length = @connection.send(:bind_params_length)
+        p bind_params_length

         topics = Topic.where(id: (1 .. bind_params_length).to_a << 2**63)
         assert_equal Topic.count, topics.count
$
  • Executed modified ActiveRecord::BindParameterTest#test_too_many_binds
$ bin/test test/cases/bind_parameter_test.rb -n test_too_many_binds
Using sqlite3
Run options: -n test_too_many_binds --seed 47321

999
.

Finished in 0.075249s, 13.2892 runs/s, 26.5784 assertions/s.
1 runs, 2 assertions, 0 failures, 0 errors, 0 skips
$

Other Information

ActiveRecord::ConnectionAdapters::SQLite3Adapter::BindParameterTest#test_too_many_binds causes these TypeError: superclass mismatch for class SQLite3Adapter errors due to incorrect class name added.

$ for i in mysql2 postgresql
> do
> ARCONN=$i bin/test test/cases/connection_adapters/connection_handler_test.rb test/cases/connection_specification/resolver_test.rb test/cases/adapters/sqlite3/bind_parameter_test.rb
> done
Using mysql2
Run options: --seed 46136

# Running:

..E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_two_level_configurations:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:131:in `test_establish_connection_using_two_level_configurations'


bin/test test/cases/connection_adapters/connection_handler_test.rb:127

...S...E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_3_level_config_defaults_to_default_env_primary_db:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_handling.rb:51:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:93:in `test_establish_connection_using_3_level_config_defaults_to_default_env_primary_db'


bin/test test/cases/connection_adapters/connection_handler_test.rb:78

.E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_uses_spec_name:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:35:in `test_establish_connection_uses_spec_name'


bin/test test/cases/connection_adapters/connection_handler_test.rb:30

E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_2_level_config_defaults_to_default_env_primary_db:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_handling.rb:51:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:116:in `test_establish_connection_using_2_level_config_defaults_to_default_env_primary_db'


bin/test test/cases/connection_adapters/connection_handler_test.rb:103

....E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_top_level_key_in_two_level_config:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:146:in `test_establish_connection_using_top_level_key_in_two_level_config'


bin/test test/cases/connection_adapters/connection_handler_test.rb:139

..E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_3_levels_config:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:60:in `test_establish_connection_using_3_levels_config'


bin/test test/cases/connection_adapters/connection_handler_test.rb:44

...E

Error:
ActiveRecord::ConnectionAdapters::ConnectionSpecification::ResolverTest#test_spec_name_on_key_lookup:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:18:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:130:in `test_spec_name_on_key_lookup'


bin/test test/cases/connection_specification/resolver_test.rb:129

.....E

Error:
ActiveRecord::ConnectionAdapters::ConnectionSpecification::ResolverTest#test_spec_name_with_inline_config:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:18:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:135:in `test_spec_name_with_inline_config'


bin/test test/cases/connection_specification/resolver_test.rb:134

......

Finished in 0.784672s, 48.4278 runs/s, 68.8185 assertions/s.
38 runs, 54 assertions, 0 failures, 8 errors, 1 skips

You have skipped tests. Run with --verbose for details.
Using postgresql
Run options: --seed 16877

# Running:

..E

Error:
ActiveRecord::ConnectionAdapters::ConnectionSpecification::ResolverTest#test_spec_name_on_key_lookup:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:18:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:130:in `test_spec_name_on_key_lookup'


bin/test test/cases/connection_specification/resolver_test.rb:129

E

Error:
ActiveRecord::ConnectionAdapters::ConnectionSpecification::ResolverTest#test_spec_name_with_inline_config:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:18:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_specification/resolver_test.rb:135:in `test_spec_name_with_inline_config'


bin/test test/cases/connection_specification/resolver_test.rb:134

............E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_two_level_configurations:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:131:in `test_establish_connection_using_two_level_configurations'


bin/test test/cases/connection_adapters/connection_handler_test.rb:127

S.E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_2_level_config_defaults_to_default_env_primary_db:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_handling.rb:51:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:116:in `test_establish_connection_using_2_level_config_defaults_to_default_env_primary_db'


bin/test test/cases/connection_adapters/connection_handler_test.rb:103

....E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_3_level_config_defaults_to_default_env_primary_db:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_handling.rb:51:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:93:in `test_establish_connection_using_3_level_config_defaults_to_default_env_primary_db'


bin/test test/cases/connection_adapters/connection_handler_test.rb:78

E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_uses_spec_name:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:35:in `test_establish_connection_uses_spec_name'


bin/test test/cases/connection_adapters/connection_handler_test.rb:30

E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_top_level_key_in_two_level_config:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:146:in `test_establish_connection_using_top_level_key_in_two_level_config'


bin/test test/cases/connection_adapters/connection_handler_test.rb:139

.........E

Error:
ActiveRecord::ConnectionAdapters::ConnectionHandlerTest#test_establish_connection_using_3_levels_config:
TypeError: superclass mismatch for class SQLite3Adapter
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:57:in `<module:ConnectionAdapters>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:50:in `<module:ActiveRecord>'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:16:in `<top (required)>'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `block in require'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency'
    /home/yahonda/git/rails/activesupport/lib/active_support/dependencies.rb:302:in `require'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec'
    /home/yahonda/git/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:957:in `establish_connection'
    /home/yahonda/git/rails/activerecord/test/cases/connection_adapters/connection_handler_test.rb:60:in `test_establish_connection_using_3_levels_config'


bin/test test/cases/connection_adapters/connection_handler_test.rb:44

.

Finished in 1.372297s, 27.6908 runs/s, 39.3501 assertions/s.
38 runs, 54 assertions, 0 failures, 8 errors, 1 skips

You have skipped tests. Run with --verbose for details.
$
  • Removing class SQLite3Adapter and corresponding end addresses these TypeError: superclass mismatch for class SQLite3Adapter
$ git diff
diff --git a/activerecord/test/cases/adapters/sqlite3/bind_parameter_test.rb b/activerecord/test/cases/adapters/sqlite3/bind_parameter_test.rb
index 93a7dafebd..35c5f47bfc 100644
--- a/activerecord/test/cases/adapters/sqlite3/bind_parameter_test.rb
+++ b/activerecord/test/cases/adapters/sqlite3/bind_parameter_test.rb
@@ -5,7 +5,6 @@

 module ActiveRecord
   module ConnectionAdapters
-    class SQLite3Adapter
       class BindParameterTest < ActiveRecord::SQLite3TestCase
         def test_too_many_binds
           topics = Topic.where(id: (1..999).to_a << 2**63)
@@ -15,6 +14,5 @@ def test_too_many_binds
           assert_equal 0, topics.count
         end
       end
-    end
   end
 end
$

with `ActiveRecord::BindParameterTest#test_too_many_binds`

sqlite adapter has its own `bind_params_length`, `ActiveRecord::BindParameterTest#test_too_many_binds` respects it.

* Modified `ActiveRecord::BindParameterTest#test_too_many_binds` to show `bind_params_length` value

```
$ git diff
diff --git a/activerecord/test/cases/bind_parameter_test.rb b/activerecord/test/cases/bind_parameter_test.rb
index 85685d1d00..83cd07f1d7 100644
--- a/activerecord/test/cases/bind_parameter_test.rb
+++ b/activerecord/test/cases/bind_parameter_test.rb
@@ -108,6 +108,7 @@ def test_statement_cache_with_sql_string_literal

       def test_too_many_binds
         bind_params_length = @connection.send(:bind_params_length)
+        p bind_params_length

         topics = Topic.where(id: (1 .. bind_params_length).to_a << 2**63)
         assert_equal Topic.count, topics.count
$
```

* Executed modified `ActiveRecord::BindParameterTest#test_too_many_binds`

```
$ bin/test test/cases/bind_parameter_test.rb -n test_too_many_binds
Using sqlite3
Run options: -n test_too_many_binds --seed 47321

999
.

Finished in 0.075249s, 13.2892 runs/s, 26.5784 assertions/s.
1 runs, 2 assertions, 0 failures, 0 errors, 0 skips
$
```
@kamipo kamipo merged commit 9b0e632 into rails:master May 3, 2019
@yahonda yahonda deleted the remove_redundant_test_too_many_binds_testcase branch May 3, 2019 00:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants