Skip to content

Commit

Permalink
Address `NameError: uninitialized constant TestEmployee::AttributeSig…
Browse files Browse the repository at this point in the history
…nature::Base64`

https://github.com/rsim/oracle-enhanced/actions/runs/5714243566/job/15481185335?pr=2347

```
Failures:

  1) OracleEnhancedAdapter custom types handling should serialize LOBs when creating a record
     Failure/Error: Base64.encode64 value.raw

     NameError:
       uninitialized constant TestEmployee::AttributeSignature::Base64

                 Base64.encode64 value.raw
                 ^^^^^^
     # ./spec/active_record/oracle_enhanced/type/custom_spec.rb:30:in `serialize'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activemodel/lib/active_model/attribute.rb:56:in `value_for_database'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb:218:in `block in type_casted_binds'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb:216:in `map'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb:216:in `type_casted_binds'
     # ./lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb:96:in `exec_insert'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:167:in `insert'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:22:in `insert'
     # ./lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb:90:in `insert'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:496:in `_insert_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:1096:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/counter_cache.rb:166:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/locking/optimistic.rb:84:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/attribute_methods/dirty.rb:222:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:459:in `block in _create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:99:in `run_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:929:in `_run_create_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:459:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/timestamp.rb:108:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:1067:in `create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:455:in `block in create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:99:in `run_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:929:in `_run_save_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:455:in `create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/timestamp.rb:126:in `create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:648:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/validations.rb:53:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:302:in `block in save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:302:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/suppressor.rb:54:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:55:in `create!'
     # ./spec/active_record/oracle_enhanced/type/custom_spec.rb:70:in `block (2 levels) in <top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:263:in `instance_exec'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:263:in `block in run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb:486:in `block in run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb:486:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:468:in `with_around_example_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:259:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:646:in `block in run_examples'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:642:in `map'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:642:in `run_examples'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:607:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:121:in `map'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/configuration.rb:2070:in `with_suite_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:116:in `block in run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/reporter.rb:74:in `report'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:115:in `run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:89:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:71:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:45:in `invoke'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/exe/rspec:4:in `<top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/rspec:25:in `load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/rspec:25:in `<top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:58:in `load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:58:in `kernel_load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:23:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli.rb:486:in `exec'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli.rb:31:in `dispatch'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli.rb:25:in `start'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/bundler-2.3.26/libexec/bundle:48:in `block in <top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/friendly_errors.rb:120:in `with_friendly_errors'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/bundler-2.3.26/libexec/bundle:36:in `<top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/bundle:25:in `load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/bundle:25:in `<main>'

  2) OracleEnhancedAdapter custom types handling should serialize LOBs when updating a record
     Failure/Error: Base64.encode64 value.raw

     NameError:
       uninitialized constant TestEmployee::AttributeSignature::Base64

                 Base64.encode64 value.raw
                 ^^^^^^
     # ./spec/active_record/oracle_enhanced/type/custom_spec.rb:30:in `serialize'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activemodel/lib/active_model/attribute.rb:56:in `value_for_database'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb:218:in `block in type_casted_binds'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb:216:in `map'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb:216:in `type_casted_binds'
     # ./lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb:96:in `exec_insert'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:167:in `insert'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:22:in `insert'
     # ./lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb:90:in `insert'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:496:in `_insert_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:1096:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/counter_cache.rb:166:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/locking/optimistic.rb:84:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/attribute_methods/dirty.rb:222:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:459:in `block in _create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:99:in `run_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:929:in `_run_create_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:459:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/timestamp.rb:108:in `_create_record'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:1067:in `create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:455:in `block in create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:99:in `run_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/callbacks.rb:929:in `_run_save_callbacks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/callbacks.rb:455:in `create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/timestamp.rb:126:in `create_or_update'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:648:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/validations.rb:53:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:302:in `block in save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activesupport/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/transactions.rb:302:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/suppressor.rb:54:in `save!'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/bundler/gems/rails-b18b9df65eb7/activerecord/lib/active_record/persistence.rb:55:in `create!'
     # ./spec/active_record/oracle_enhanced/type/custom_spec.rb:80:in `block (2 levels) in <top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:263:in `instance_exec'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:263:in `block in run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb:486:in `block in run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb:486:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:468:in `with_around_example_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb:259:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:646:in `block in run_examples'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:642:in `map'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:642:in `run_examples'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb:607:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:121:in `map'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/configuration.rb:2070:in `with_suite_hooks'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:116:in `block in run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/reporter.rb:74:in `report'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:115:in `run_specs'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:89:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:71:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb:45:in `invoke'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/rspec-core-3.12.2/exe/rspec:4:in `<top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/rspec:25:in `load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/rspec:25:in `<top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:58:in `load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:58:in `kernel_load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:23:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli.rb:486:in `exec'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli.rb:31:in `dispatch'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/cli.rb:25:in `start'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/bundler-2.3.26/libexec/bundle:48:in `block in <top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/3.1.0/bundler/friendly_errors.rb:120:in `with_friendly_errors'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/lib/ruby/gems/3.1.0/gems/bundler-2.3.26/libexec/bundle:36:in `<top (required)>'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/bundle:25:in `load'
     # /opt/hostedtoolcache/Ruby/3.1.4/x64/bin/bundle:25:in `<main>'

Finished in 5 minutes 57 seconds (files took 0.79453 seconds to load)
393 examples, 2 failures, 5 pending

Failed examples:

rspec ./spec/active_record/oracle_enhanced/type/custom_spec.rb:67 # OracleEnhancedAdapter custom types handling should serialize LOBs when creating a record
rspec ./spec/active_record/oracle_enhanced/type/custom_spec.rb:77 # OracleEnhancedAdapter custom types handling should serialize LOBs when updating a record
```
  • Loading branch information
yahonda committed Jul 31, 2023
1 parent 4f48ea4 commit e130d94
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions spec/active_record/oracle_enhanced/type/custom_spec.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# frozen_string_literal: true

require "base64"

describe "OracleEnhancedAdapter custom types handling" do
include SchemaSpecHelper

Expand Down

0 comments on commit e130d94

Please sign in to comment.