From 015ceef2a70e896629c035cf73f18f97f964886a Mon Sep 17 00:00:00 2001 From: Sarah Sunday <3252602+ssunday@users.noreply.github.com> Date: Mon, 24 Jun 2024 08:29:53 -0500 Subject: [PATCH 1/7] [TEST] Convert to rspec --- .github/workflows/ci.yml | 2 +- .gitignore | 6 +++--- CONTRIBUTING.md | 10 ++++++++++ Gemfile | 2 -- aws-sdk-rails.gemspec | 1 + .../action_dispatch/session/dynamodb_store_spec.rb | 0 .../queue_adapters/amazon_sqs_adapter/params_spec.rb | 0 .../queue_adapters/amazon_sqs_adapter_spec.rb | 0 .../queue_adapters/amazon_sqs_async_adapter_spec.rb | 0 .../middleware/ebs_sqs_active_job_middleware_spec.rb | 0 .../aws/rails/middleware/elastic_beanstalk_job.rb | 0 .../middleware/elastic_beanstalk_periodic_task.rb | 0 .../aws/rails/notifications_spec.rb | 0 .../railtie_test.rb => spec/aws/rails/railtie_spec.rb | 0 .../aws/rails/ses_mailer_spec.rb | 0 .../aws/rails/sesv2_mailer_spec.rb | 0 .../aws/rails/sqs_active_job/configuration_spec.rb | 0 .../aws/rails/sqs_active_job/deduplication_spec.rb | 0 .../aws/rails/sqs_active_job/executor_spec.rb | 0 .../aws/rails/sqs_active_job/job_runner_spec.rb | 0 .../aws/rails/sqs_active_job/poller_spec.rb | 0 {test => spec}/aws/rails/sqs_active_job/test_job.rb | 0 {test => spec}/dummy/app/assets/config/manifest.js | 0 .../dummy/app/models/test_length_validations.rb | 0 .../dummy/app/models/test_model_auto_hkey.rb | 0 {test => spec}/dummy/app/models/test_model_basic.rb | 0 {test => spec}/dummy/app/models/test_model_complex.rb | 0 .../app/models/test_model_fields_absent_auto_uuid.rb | 0 .../app/models/test_model_fields_present_auto_uuid.rb | 0 .../dummy/app/models/test_model_gsi_basic.rb | 0 {test => spec}/dummy/app/models/test_model_gsi_keys.rb | 0 {test => spec}/dummy/app/models/test_model_gsi_mult.rb | 0 .../dummy/app/models/test_model_mut_tracking.rb | 0 .../dummy/app/models/test_model_set_table_name.rb | 0 .../dummy/app/models/test_model_timestamps.rb | 0 .../dummy/app/models/test_password_digest.rb | 0 .../dummy/app/models/test_required_validations.rb | 0 .../dummy/app/models/test_scaffold_helpers.rb | 0 .../dummy/app/models/test_table_config_gsi_mult.rb | 0 .../dummy/app/models/test_table_config_gsi_provided.rb | 0 .../dummy/app/models/test_table_config_model2.rb | 0 {test => spec}/dummy/app/models/test_validations.rb | 0 {test => spec}/dummy/config.ru | 0 {test => spec}/dummy/config/application.rb | 0 {test => spec}/dummy/config/aws_sqs_active_job.yml | 0 {test => spec}/dummy/config/credentials.yml.enc | 0 .../dummy/config/dynamo_db_session_store.yml | 0 .../config/dynamo_db_session_store/environment.yml | 0 {test => spec}/dummy/config/master.key | 0 {test => spec}/dummy/config/session_store.yml | 0 .../db/table_config/test_length_validations_config.rb | 0 .../db/table_config/test_model_auto_hkey_config.rb | 0 .../dummy/db/table_config/test_model_basic_config.rb | 0 .../dummy/db/table_config/test_model_complex_config.rb | 0 .../test_model_fields_absent_auto_uuid_config.rb | 0 .../test_model_fields_present_auto_uuid_config.rb | 0 .../db/table_config/test_model_gsi_basic_config.rb | 0 .../db/table_config/test_model_gsi_keys_config.rb | 0 .../db/table_config/test_model_gsi_mult_config.rb | 0 .../db/table_config/test_model_mut_tracking_config.rb | 0 .../table_config/test_model_set_table_name_config.rb | 0 .../db/table_config/test_model_timestamps_config.rb | 0 .../db/table_config/test_password_digest_config.rb | 0 .../table_config/test_required_validations_config.rb | 0 .../table_config/test_table_config_gsi_mult_config.rb | 0 .../test_table_config_gsi_provided_config.rb | 0 .../db/table_config/test_table_config_model2_config.rb | 0 .../dummy/db/table_config/test_validations_config.rb | 0 .../fixtures/models/test_length_validations.rb | 0 {test => spec}/fixtures/models/test_model_auto_hkey.rb | 0 {test => spec}/fixtures/models/test_model_basic.rb | 0 {test => spec}/fixtures/models/test_model_complex.rb | 0 .../models/test_model_fields_absent_auto_uuid.rb | 0 .../models/test_model_fields_present_auto_uuid.rb | 0 {test => spec}/fixtures/models/test_model_gsi_basic.rb | 0 {test => spec}/fixtures/models/test_model_gsi_keys.rb | 0 {test => spec}/fixtures/models/test_model_gsi_mult.rb | 0 .../fixtures/models/test_model_mut_tracking.rb | 0 .../fixtures/models/test_model_set_table_name.rb | 0 .../fixtures/models/test_model_timestamps.rb | 0 {test => spec}/fixtures/models/test_password_digest.rb | 0 .../fixtures/models/test_required_validations.rb | 0 {test => spec}/fixtures/models/test_validations.rb | 0 .../table_config/test_table_config_gsi_basic_config.rb | 0 .../table_config/test_table_config_gsi_mult_config.rb | 0 .../test_table_config_gsi_provided_config.rb | 0 .../table_config/test_table_config_model1_config.rb | 0 .../table_config/test_table_config_model2_config.rb | 0 .../generators/aws_record/generated_attribute_spec.rb | 0 .../aws_record/model/model_generator_spec.rb | 0 .../generators/aws_record/secondary_index_spec.rb | 0 .../session_store_migration_generator_spec.rb | 0 .../tasks/dynamo_db/session_store_rake_spec.rb | 0 {test => spec}/test_helper.rb | 7 +------ 94 files changed, 16 insertions(+), 12 deletions(-) rename test/action_dispatch/session/dynamodb_store_test.rb => spec/action_dispatch/session/dynamodb_store_spec.rb (100%) rename test/active_job/queue_adapters/amazon_sqs_adapter/params_test.rb => spec/active_job/queue_adapters/amazon_sqs_adapter/params_spec.rb (100%) rename test/active_job/queue_adapters/amazon_sqs_adapter_test.rb => spec/active_job/queue_adapters/amazon_sqs_adapter_spec.rb (100%) rename test/active_job/queue_adapters/amazon_sqs_async_adapter_test.rb => spec/active_job/queue_adapters/amazon_sqs_async_adapter_spec.rb (100%) rename test/aws/rails/middleware/ebs_sqs_active_job_middleware_test.rb => spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb (100%) rename {test => spec}/aws/rails/middleware/elastic_beanstalk_job.rb (100%) rename {test => spec}/aws/rails/middleware/elastic_beanstalk_periodic_task.rb (100%) rename test/aws/rails/notifications_test.rb => spec/aws/rails/notifications_spec.rb (100%) rename test/aws/rails/railtie_test.rb => spec/aws/rails/railtie_spec.rb (100%) rename test/aws/rails/ses_mailer_test.rb => spec/aws/rails/ses_mailer_spec.rb (100%) rename test/aws/rails/sesv2_mailer_test.rb => spec/aws/rails/sesv2_mailer_spec.rb (100%) rename test/aws/rails/sqs_active_job/configuration_test.rb => spec/aws/rails/sqs_active_job/configuration_spec.rb (100%) rename test/aws/rails/sqs_active_job/deduplication_test.rb => spec/aws/rails/sqs_active_job/deduplication_spec.rb (100%) rename test/aws/rails/sqs_active_job/executor_test.rb => spec/aws/rails/sqs_active_job/executor_spec.rb (100%) rename test/aws/rails/sqs_active_job/job_runner_test.rb => spec/aws/rails/sqs_active_job/job_runner_spec.rb (100%) rename test/aws/rails/sqs_active_job/poller_test.rb => spec/aws/rails/sqs_active_job/poller_spec.rb (100%) rename {test => spec}/aws/rails/sqs_active_job/test_job.rb (100%) rename {test => spec}/dummy/app/assets/config/manifest.js (100%) rename {test => spec}/dummy/app/models/test_length_validations.rb (100%) rename {test => spec}/dummy/app/models/test_model_auto_hkey.rb (100%) rename {test => spec}/dummy/app/models/test_model_basic.rb (100%) rename {test => spec}/dummy/app/models/test_model_complex.rb (100%) rename {test => spec}/dummy/app/models/test_model_fields_absent_auto_uuid.rb (100%) rename {test => spec}/dummy/app/models/test_model_fields_present_auto_uuid.rb (100%) rename {test => spec}/dummy/app/models/test_model_gsi_basic.rb (100%) rename {test => spec}/dummy/app/models/test_model_gsi_keys.rb (100%) rename {test => spec}/dummy/app/models/test_model_gsi_mult.rb (100%) rename {test => spec}/dummy/app/models/test_model_mut_tracking.rb (100%) rename {test => spec}/dummy/app/models/test_model_set_table_name.rb (100%) rename {test => spec}/dummy/app/models/test_model_timestamps.rb (100%) rename {test => spec}/dummy/app/models/test_password_digest.rb (100%) rename {test => spec}/dummy/app/models/test_required_validations.rb (100%) rename {test => spec}/dummy/app/models/test_scaffold_helpers.rb (100%) rename {test => spec}/dummy/app/models/test_table_config_gsi_mult.rb (100%) rename {test => spec}/dummy/app/models/test_table_config_gsi_provided.rb (100%) rename {test => spec}/dummy/app/models/test_table_config_model2.rb (100%) rename {test => spec}/dummy/app/models/test_validations.rb (100%) rename {test => spec}/dummy/config.ru (100%) rename {test => spec}/dummy/config/application.rb (100%) rename {test => spec}/dummy/config/aws_sqs_active_job.yml (100%) rename {test => spec}/dummy/config/credentials.yml.enc (100%) rename {test => spec}/dummy/config/dynamo_db_session_store.yml (100%) rename {test => spec}/dummy/config/dynamo_db_session_store/environment.yml (100%) rename {test => spec}/dummy/config/master.key (100%) rename {test => spec}/dummy/config/session_store.yml (100%) rename {test => spec}/dummy/db/table_config/test_length_validations_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_auto_hkey_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_basic_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_complex_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_fields_absent_auto_uuid_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_fields_present_auto_uuid_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_gsi_basic_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_gsi_keys_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_gsi_mult_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_mut_tracking_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_set_table_name_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_model_timestamps_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_password_digest_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_required_validations_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_table_config_gsi_mult_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_table_config_gsi_provided_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_table_config_model2_config.rb (100%) rename {test => spec}/dummy/db/table_config/test_validations_config.rb (100%) rename {test => spec}/fixtures/models/test_length_validations.rb (100%) rename {test => spec}/fixtures/models/test_model_auto_hkey.rb (100%) rename {test => spec}/fixtures/models/test_model_basic.rb (100%) rename {test => spec}/fixtures/models/test_model_complex.rb (100%) rename {test => spec}/fixtures/models/test_model_fields_absent_auto_uuid.rb (100%) rename {test => spec}/fixtures/models/test_model_fields_present_auto_uuid.rb (100%) rename {test => spec}/fixtures/models/test_model_gsi_basic.rb (100%) rename {test => spec}/fixtures/models/test_model_gsi_keys.rb (100%) rename {test => spec}/fixtures/models/test_model_gsi_mult.rb (100%) rename {test => spec}/fixtures/models/test_model_mut_tracking.rb (100%) rename {test => spec}/fixtures/models/test_model_set_table_name.rb (100%) rename {test => spec}/fixtures/models/test_model_timestamps.rb (100%) rename {test => spec}/fixtures/models/test_password_digest.rb (100%) rename {test => spec}/fixtures/models/test_required_validations.rb (100%) rename {test => spec}/fixtures/models/test_validations.rb (100%) rename {test => spec}/fixtures/table_config/test_table_config_gsi_basic_config.rb (100%) rename {test => spec}/fixtures/table_config/test_table_config_gsi_mult_config.rb (100%) rename {test => spec}/fixtures/table_config/test_table_config_gsi_provided_config.rb (100%) rename {test => spec}/fixtures/table_config/test_table_config_model1_config.rb (100%) rename {test => spec}/fixtures/table_config/test_table_config_model2_config.rb (100%) rename test/generators/aws_record/generated_attribute_test.rb => spec/generators/aws_record/generated_attribute_spec.rb (100%) rename test/generators/aws_record/model/model_generator_test.rb => spec/generators/aws_record/model/model_generator_spec.rb (100%) rename test/generators/aws_record/secondary_index_test.rb => spec/generators/aws_record/secondary_index_spec.rb (100%) rename test/generators/dynamo_db/session_store_migration/session_store_migration_generator_test.rb => spec/generators/dynamo_db/session_store_migration/session_store_migration_generator_spec.rb (100%) rename test/tasks/dynamo_db/session_store_rake_test.rb => spec/tasks/dynamo_db/session_store_rake_spec.rb (100%) rename {test => spec}/test_helper.rb (62%) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 33d4c909..95a24ad1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,7 +37,7 @@ jobs: run: bundle install --gemfile=gemfiles/${{ matrix.gemfile }} - name: Test - run: BUNDLE_GEMFILE=gemfiles/${{ matrix.gemfile }} bundle exec rake + run: BUNDLE_GEMFILE=gemfiles/${{ matrix.gemfile }} bundle exec rspec rubocop: runs-on: ubuntu-latest diff --git a/.gitignore b/.gitignore index 1054330e..1212abc1 100644 --- a/.gitignore +++ b/.gitignore @@ -8,8 +8,8 @@ doc docs.zip Gemfile.lock sample_app/Gemfile.lock -test/dummy/db/migrate -test/dummy/log/ -test/dummy/tmp/ +spec/dummy/db/migrate +spec/dummy/log/ +spec/dummy/tmp/ vendor .idea/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index fa1f7a3d..929ddd6c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -54,6 +54,16 @@ GitHub provides additional document on [forking a repository](https://help.github.com/articles/fork-a-repo/) and [creating a pull request](https://help.github.com/articles/creating-a-pull-request/). +### Setup + +To setup the repository: + +1. `bundle install` + +All tests should pass when running: + +`bundle exec rspec` + ## Finding contributions to work on Looking at the existing issues is a great way to find something to contribute diff --git a/Gemfile b/Gemfile index e32e5971..cd284136 100644 --- a/Gemfile +++ b/Gemfile @@ -10,8 +10,6 @@ end group :test do gem 'bcrypt' - gem 'rspec-expectations' - gem 'rspec-mocks' end group :docs do diff --git a/aws-sdk-rails.gemspec b/aws-sdk-rails.gemspec index e7fa1a8d..5ad07cb6 100644 --- a/aws-sdk-rails.gemspec +++ b/aws-sdk-rails.gemspec @@ -29,6 +29,7 @@ Gem::Specification.new do |spec| spec.add_dependency('concurrent-ruby', '>= 1.3.1') # Utilities for concurrent processing spec.add_dependency('railties', '>= 5.2.0') # encrypted credentials spec.add_development_dependency('rails') + spec.add_development_dependency('rspec-rails', '~> 6.1') spec.required_ruby_version = '>= 2.5' end diff --git a/test/action_dispatch/session/dynamodb_store_test.rb b/spec/action_dispatch/session/dynamodb_store_spec.rb similarity index 100% rename from test/action_dispatch/session/dynamodb_store_test.rb rename to spec/action_dispatch/session/dynamodb_store_spec.rb diff --git a/test/active_job/queue_adapters/amazon_sqs_adapter/params_test.rb b/spec/active_job/queue_adapters/amazon_sqs_adapter/params_spec.rb similarity index 100% rename from test/active_job/queue_adapters/amazon_sqs_adapter/params_test.rb rename to spec/active_job/queue_adapters/amazon_sqs_adapter/params_spec.rb diff --git a/test/active_job/queue_adapters/amazon_sqs_adapter_test.rb b/spec/active_job/queue_adapters/amazon_sqs_adapter_spec.rb similarity index 100% rename from test/active_job/queue_adapters/amazon_sqs_adapter_test.rb rename to spec/active_job/queue_adapters/amazon_sqs_adapter_spec.rb diff --git a/test/active_job/queue_adapters/amazon_sqs_async_adapter_test.rb b/spec/active_job/queue_adapters/amazon_sqs_async_adapter_spec.rb similarity index 100% rename from test/active_job/queue_adapters/amazon_sqs_async_adapter_test.rb rename to spec/active_job/queue_adapters/amazon_sqs_async_adapter_spec.rb diff --git a/test/aws/rails/middleware/ebs_sqs_active_job_middleware_test.rb b/spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb similarity index 100% rename from test/aws/rails/middleware/ebs_sqs_active_job_middleware_test.rb rename to spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb diff --git a/test/aws/rails/middleware/elastic_beanstalk_job.rb b/spec/aws/rails/middleware/elastic_beanstalk_job.rb similarity index 100% rename from test/aws/rails/middleware/elastic_beanstalk_job.rb rename to spec/aws/rails/middleware/elastic_beanstalk_job.rb diff --git a/test/aws/rails/middleware/elastic_beanstalk_periodic_task.rb b/spec/aws/rails/middleware/elastic_beanstalk_periodic_task.rb similarity index 100% rename from test/aws/rails/middleware/elastic_beanstalk_periodic_task.rb rename to spec/aws/rails/middleware/elastic_beanstalk_periodic_task.rb diff --git a/test/aws/rails/notifications_test.rb b/spec/aws/rails/notifications_spec.rb similarity index 100% rename from test/aws/rails/notifications_test.rb rename to spec/aws/rails/notifications_spec.rb diff --git a/test/aws/rails/railtie_test.rb b/spec/aws/rails/railtie_spec.rb similarity index 100% rename from test/aws/rails/railtie_test.rb rename to spec/aws/rails/railtie_spec.rb diff --git a/test/aws/rails/ses_mailer_test.rb b/spec/aws/rails/ses_mailer_spec.rb similarity index 100% rename from test/aws/rails/ses_mailer_test.rb rename to spec/aws/rails/ses_mailer_spec.rb diff --git a/test/aws/rails/sesv2_mailer_test.rb b/spec/aws/rails/sesv2_mailer_spec.rb similarity index 100% rename from test/aws/rails/sesv2_mailer_test.rb rename to spec/aws/rails/sesv2_mailer_spec.rb diff --git a/test/aws/rails/sqs_active_job/configuration_test.rb b/spec/aws/rails/sqs_active_job/configuration_spec.rb similarity index 100% rename from test/aws/rails/sqs_active_job/configuration_test.rb rename to spec/aws/rails/sqs_active_job/configuration_spec.rb diff --git a/test/aws/rails/sqs_active_job/deduplication_test.rb b/spec/aws/rails/sqs_active_job/deduplication_spec.rb similarity index 100% rename from test/aws/rails/sqs_active_job/deduplication_test.rb rename to spec/aws/rails/sqs_active_job/deduplication_spec.rb diff --git a/test/aws/rails/sqs_active_job/executor_test.rb b/spec/aws/rails/sqs_active_job/executor_spec.rb similarity index 100% rename from test/aws/rails/sqs_active_job/executor_test.rb rename to spec/aws/rails/sqs_active_job/executor_spec.rb diff --git a/test/aws/rails/sqs_active_job/job_runner_test.rb b/spec/aws/rails/sqs_active_job/job_runner_spec.rb similarity index 100% rename from test/aws/rails/sqs_active_job/job_runner_test.rb rename to spec/aws/rails/sqs_active_job/job_runner_spec.rb diff --git a/test/aws/rails/sqs_active_job/poller_test.rb b/spec/aws/rails/sqs_active_job/poller_spec.rb similarity index 100% rename from test/aws/rails/sqs_active_job/poller_test.rb rename to spec/aws/rails/sqs_active_job/poller_spec.rb diff --git a/test/aws/rails/sqs_active_job/test_job.rb b/spec/aws/rails/sqs_active_job/test_job.rb similarity index 100% rename from test/aws/rails/sqs_active_job/test_job.rb rename to spec/aws/rails/sqs_active_job/test_job.rb diff --git a/test/dummy/app/assets/config/manifest.js b/spec/dummy/app/assets/config/manifest.js similarity index 100% rename from test/dummy/app/assets/config/manifest.js rename to spec/dummy/app/assets/config/manifest.js diff --git a/test/dummy/app/models/test_length_validations.rb b/spec/dummy/app/models/test_length_validations.rb similarity index 100% rename from test/dummy/app/models/test_length_validations.rb rename to spec/dummy/app/models/test_length_validations.rb diff --git a/test/dummy/app/models/test_model_auto_hkey.rb b/spec/dummy/app/models/test_model_auto_hkey.rb similarity index 100% rename from test/dummy/app/models/test_model_auto_hkey.rb rename to spec/dummy/app/models/test_model_auto_hkey.rb diff --git a/test/dummy/app/models/test_model_basic.rb b/spec/dummy/app/models/test_model_basic.rb similarity index 100% rename from test/dummy/app/models/test_model_basic.rb rename to spec/dummy/app/models/test_model_basic.rb diff --git a/test/dummy/app/models/test_model_complex.rb b/spec/dummy/app/models/test_model_complex.rb similarity index 100% rename from test/dummy/app/models/test_model_complex.rb rename to spec/dummy/app/models/test_model_complex.rb diff --git a/test/dummy/app/models/test_model_fields_absent_auto_uuid.rb b/spec/dummy/app/models/test_model_fields_absent_auto_uuid.rb similarity index 100% rename from test/dummy/app/models/test_model_fields_absent_auto_uuid.rb rename to spec/dummy/app/models/test_model_fields_absent_auto_uuid.rb diff --git a/test/dummy/app/models/test_model_fields_present_auto_uuid.rb b/spec/dummy/app/models/test_model_fields_present_auto_uuid.rb similarity index 100% rename from test/dummy/app/models/test_model_fields_present_auto_uuid.rb rename to spec/dummy/app/models/test_model_fields_present_auto_uuid.rb diff --git a/test/dummy/app/models/test_model_gsi_basic.rb b/spec/dummy/app/models/test_model_gsi_basic.rb similarity index 100% rename from test/dummy/app/models/test_model_gsi_basic.rb rename to spec/dummy/app/models/test_model_gsi_basic.rb diff --git a/test/dummy/app/models/test_model_gsi_keys.rb b/spec/dummy/app/models/test_model_gsi_keys.rb similarity index 100% rename from test/dummy/app/models/test_model_gsi_keys.rb rename to spec/dummy/app/models/test_model_gsi_keys.rb diff --git a/test/dummy/app/models/test_model_gsi_mult.rb b/spec/dummy/app/models/test_model_gsi_mult.rb similarity index 100% rename from test/dummy/app/models/test_model_gsi_mult.rb rename to spec/dummy/app/models/test_model_gsi_mult.rb diff --git a/test/dummy/app/models/test_model_mut_tracking.rb b/spec/dummy/app/models/test_model_mut_tracking.rb similarity index 100% rename from test/dummy/app/models/test_model_mut_tracking.rb rename to spec/dummy/app/models/test_model_mut_tracking.rb diff --git a/test/dummy/app/models/test_model_set_table_name.rb b/spec/dummy/app/models/test_model_set_table_name.rb similarity index 100% rename from test/dummy/app/models/test_model_set_table_name.rb rename to spec/dummy/app/models/test_model_set_table_name.rb diff --git a/test/dummy/app/models/test_model_timestamps.rb b/spec/dummy/app/models/test_model_timestamps.rb similarity index 100% rename from test/dummy/app/models/test_model_timestamps.rb rename to spec/dummy/app/models/test_model_timestamps.rb diff --git a/test/dummy/app/models/test_password_digest.rb b/spec/dummy/app/models/test_password_digest.rb similarity index 100% rename from test/dummy/app/models/test_password_digest.rb rename to spec/dummy/app/models/test_password_digest.rb diff --git a/test/dummy/app/models/test_required_validations.rb b/spec/dummy/app/models/test_required_validations.rb similarity index 100% rename from test/dummy/app/models/test_required_validations.rb rename to spec/dummy/app/models/test_required_validations.rb diff --git a/test/dummy/app/models/test_scaffold_helpers.rb b/spec/dummy/app/models/test_scaffold_helpers.rb similarity index 100% rename from test/dummy/app/models/test_scaffold_helpers.rb rename to spec/dummy/app/models/test_scaffold_helpers.rb diff --git a/test/dummy/app/models/test_table_config_gsi_mult.rb b/spec/dummy/app/models/test_table_config_gsi_mult.rb similarity index 100% rename from test/dummy/app/models/test_table_config_gsi_mult.rb rename to spec/dummy/app/models/test_table_config_gsi_mult.rb diff --git a/test/dummy/app/models/test_table_config_gsi_provided.rb b/spec/dummy/app/models/test_table_config_gsi_provided.rb similarity index 100% rename from test/dummy/app/models/test_table_config_gsi_provided.rb rename to spec/dummy/app/models/test_table_config_gsi_provided.rb diff --git a/test/dummy/app/models/test_table_config_model2.rb b/spec/dummy/app/models/test_table_config_model2.rb similarity index 100% rename from test/dummy/app/models/test_table_config_model2.rb rename to spec/dummy/app/models/test_table_config_model2.rb diff --git a/test/dummy/app/models/test_validations.rb b/spec/dummy/app/models/test_validations.rb similarity index 100% rename from test/dummy/app/models/test_validations.rb rename to spec/dummy/app/models/test_validations.rb diff --git a/test/dummy/config.ru b/spec/dummy/config.ru similarity index 100% rename from test/dummy/config.ru rename to spec/dummy/config.ru diff --git a/test/dummy/config/application.rb b/spec/dummy/config/application.rb similarity index 100% rename from test/dummy/config/application.rb rename to spec/dummy/config/application.rb diff --git a/test/dummy/config/aws_sqs_active_job.yml b/spec/dummy/config/aws_sqs_active_job.yml similarity index 100% rename from test/dummy/config/aws_sqs_active_job.yml rename to spec/dummy/config/aws_sqs_active_job.yml diff --git a/test/dummy/config/credentials.yml.enc b/spec/dummy/config/credentials.yml.enc similarity index 100% rename from test/dummy/config/credentials.yml.enc rename to spec/dummy/config/credentials.yml.enc diff --git a/test/dummy/config/dynamo_db_session_store.yml b/spec/dummy/config/dynamo_db_session_store.yml similarity index 100% rename from test/dummy/config/dynamo_db_session_store.yml rename to spec/dummy/config/dynamo_db_session_store.yml diff --git a/test/dummy/config/dynamo_db_session_store/environment.yml b/spec/dummy/config/dynamo_db_session_store/environment.yml similarity index 100% rename from test/dummy/config/dynamo_db_session_store/environment.yml rename to spec/dummy/config/dynamo_db_session_store/environment.yml diff --git a/test/dummy/config/master.key b/spec/dummy/config/master.key similarity index 100% rename from test/dummy/config/master.key rename to spec/dummy/config/master.key diff --git a/test/dummy/config/session_store.yml b/spec/dummy/config/session_store.yml similarity index 100% rename from test/dummy/config/session_store.yml rename to spec/dummy/config/session_store.yml diff --git a/test/dummy/db/table_config/test_length_validations_config.rb b/spec/dummy/db/table_config/test_length_validations_config.rb similarity index 100% rename from test/dummy/db/table_config/test_length_validations_config.rb rename to spec/dummy/db/table_config/test_length_validations_config.rb diff --git a/test/dummy/db/table_config/test_model_auto_hkey_config.rb b/spec/dummy/db/table_config/test_model_auto_hkey_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_auto_hkey_config.rb rename to spec/dummy/db/table_config/test_model_auto_hkey_config.rb diff --git a/test/dummy/db/table_config/test_model_basic_config.rb b/spec/dummy/db/table_config/test_model_basic_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_basic_config.rb rename to spec/dummy/db/table_config/test_model_basic_config.rb diff --git a/test/dummy/db/table_config/test_model_complex_config.rb b/spec/dummy/db/table_config/test_model_complex_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_complex_config.rb rename to spec/dummy/db/table_config/test_model_complex_config.rb diff --git a/test/dummy/db/table_config/test_model_fields_absent_auto_uuid_config.rb b/spec/dummy/db/table_config/test_model_fields_absent_auto_uuid_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_fields_absent_auto_uuid_config.rb rename to spec/dummy/db/table_config/test_model_fields_absent_auto_uuid_config.rb diff --git a/test/dummy/db/table_config/test_model_fields_present_auto_uuid_config.rb b/spec/dummy/db/table_config/test_model_fields_present_auto_uuid_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_fields_present_auto_uuid_config.rb rename to spec/dummy/db/table_config/test_model_fields_present_auto_uuid_config.rb diff --git a/test/dummy/db/table_config/test_model_gsi_basic_config.rb b/spec/dummy/db/table_config/test_model_gsi_basic_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_gsi_basic_config.rb rename to spec/dummy/db/table_config/test_model_gsi_basic_config.rb diff --git a/test/dummy/db/table_config/test_model_gsi_keys_config.rb b/spec/dummy/db/table_config/test_model_gsi_keys_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_gsi_keys_config.rb rename to spec/dummy/db/table_config/test_model_gsi_keys_config.rb diff --git a/test/dummy/db/table_config/test_model_gsi_mult_config.rb b/spec/dummy/db/table_config/test_model_gsi_mult_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_gsi_mult_config.rb rename to spec/dummy/db/table_config/test_model_gsi_mult_config.rb diff --git a/test/dummy/db/table_config/test_model_mut_tracking_config.rb b/spec/dummy/db/table_config/test_model_mut_tracking_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_mut_tracking_config.rb rename to spec/dummy/db/table_config/test_model_mut_tracking_config.rb diff --git a/test/dummy/db/table_config/test_model_set_table_name_config.rb b/spec/dummy/db/table_config/test_model_set_table_name_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_set_table_name_config.rb rename to spec/dummy/db/table_config/test_model_set_table_name_config.rb diff --git a/test/dummy/db/table_config/test_model_timestamps_config.rb b/spec/dummy/db/table_config/test_model_timestamps_config.rb similarity index 100% rename from test/dummy/db/table_config/test_model_timestamps_config.rb rename to spec/dummy/db/table_config/test_model_timestamps_config.rb diff --git a/test/dummy/db/table_config/test_password_digest_config.rb b/spec/dummy/db/table_config/test_password_digest_config.rb similarity index 100% rename from test/dummy/db/table_config/test_password_digest_config.rb rename to spec/dummy/db/table_config/test_password_digest_config.rb diff --git a/test/dummy/db/table_config/test_required_validations_config.rb b/spec/dummy/db/table_config/test_required_validations_config.rb similarity index 100% rename from test/dummy/db/table_config/test_required_validations_config.rb rename to spec/dummy/db/table_config/test_required_validations_config.rb diff --git a/test/dummy/db/table_config/test_table_config_gsi_mult_config.rb b/spec/dummy/db/table_config/test_table_config_gsi_mult_config.rb similarity index 100% rename from test/dummy/db/table_config/test_table_config_gsi_mult_config.rb rename to spec/dummy/db/table_config/test_table_config_gsi_mult_config.rb diff --git a/test/dummy/db/table_config/test_table_config_gsi_provided_config.rb b/spec/dummy/db/table_config/test_table_config_gsi_provided_config.rb similarity index 100% rename from test/dummy/db/table_config/test_table_config_gsi_provided_config.rb rename to spec/dummy/db/table_config/test_table_config_gsi_provided_config.rb diff --git a/test/dummy/db/table_config/test_table_config_model2_config.rb b/spec/dummy/db/table_config/test_table_config_model2_config.rb similarity index 100% rename from test/dummy/db/table_config/test_table_config_model2_config.rb rename to spec/dummy/db/table_config/test_table_config_model2_config.rb diff --git a/test/dummy/db/table_config/test_validations_config.rb b/spec/dummy/db/table_config/test_validations_config.rb similarity index 100% rename from test/dummy/db/table_config/test_validations_config.rb rename to spec/dummy/db/table_config/test_validations_config.rb diff --git a/test/fixtures/models/test_length_validations.rb b/spec/fixtures/models/test_length_validations.rb similarity index 100% rename from test/fixtures/models/test_length_validations.rb rename to spec/fixtures/models/test_length_validations.rb diff --git a/test/fixtures/models/test_model_auto_hkey.rb b/spec/fixtures/models/test_model_auto_hkey.rb similarity index 100% rename from test/fixtures/models/test_model_auto_hkey.rb rename to spec/fixtures/models/test_model_auto_hkey.rb diff --git a/test/fixtures/models/test_model_basic.rb b/spec/fixtures/models/test_model_basic.rb similarity index 100% rename from test/fixtures/models/test_model_basic.rb rename to spec/fixtures/models/test_model_basic.rb diff --git a/test/fixtures/models/test_model_complex.rb b/spec/fixtures/models/test_model_complex.rb similarity index 100% rename from test/fixtures/models/test_model_complex.rb rename to spec/fixtures/models/test_model_complex.rb diff --git a/test/fixtures/models/test_model_fields_absent_auto_uuid.rb b/spec/fixtures/models/test_model_fields_absent_auto_uuid.rb similarity index 100% rename from test/fixtures/models/test_model_fields_absent_auto_uuid.rb rename to spec/fixtures/models/test_model_fields_absent_auto_uuid.rb diff --git a/test/fixtures/models/test_model_fields_present_auto_uuid.rb b/spec/fixtures/models/test_model_fields_present_auto_uuid.rb similarity index 100% rename from test/fixtures/models/test_model_fields_present_auto_uuid.rb rename to spec/fixtures/models/test_model_fields_present_auto_uuid.rb diff --git a/test/fixtures/models/test_model_gsi_basic.rb b/spec/fixtures/models/test_model_gsi_basic.rb similarity index 100% rename from test/fixtures/models/test_model_gsi_basic.rb rename to spec/fixtures/models/test_model_gsi_basic.rb diff --git a/test/fixtures/models/test_model_gsi_keys.rb b/spec/fixtures/models/test_model_gsi_keys.rb similarity index 100% rename from test/fixtures/models/test_model_gsi_keys.rb rename to spec/fixtures/models/test_model_gsi_keys.rb diff --git a/test/fixtures/models/test_model_gsi_mult.rb b/spec/fixtures/models/test_model_gsi_mult.rb similarity index 100% rename from test/fixtures/models/test_model_gsi_mult.rb rename to spec/fixtures/models/test_model_gsi_mult.rb diff --git a/test/fixtures/models/test_model_mut_tracking.rb b/spec/fixtures/models/test_model_mut_tracking.rb similarity index 100% rename from test/fixtures/models/test_model_mut_tracking.rb rename to spec/fixtures/models/test_model_mut_tracking.rb diff --git a/test/fixtures/models/test_model_set_table_name.rb b/spec/fixtures/models/test_model_set_table_name.rb similarity index 100% rename from test/fixtures/models/test_model_set_table_name.rb rename to spec/fixtures/models/test_model_set_table_name.rb diff --git a/test/fixtures/models/test_model_timestamps.rb b/spec/fixtures/models/test_model_timestamps.rb similarity index 100% rename from test/fixtures/models/test_model_timestamps.rb rename to spec/fixtures/models/test_model_timestamps.rb diff --git a/test/fixtures/models/test_password_digest.rb b/spec/fixtures/models/test_password_digest.rb similarity index 100% rename from test/fixtures/models/test_password_digest.rb rename to spec/fixtures/models/test_password_digest.rb diff --git a/test/fixtures/models/test_required_validations.rb b/spec/fixtures/models/test_required_validations.rb similarity index 100% rename from test/fixtures/models/test_required_validations.rb rename to spec/fixtures/models/test_required_validations.rb diff --git a/test/fixtures/models/test_validations.rb b/spec/fixtures/models/test_validations.rb similarity index 100% rename from test/fixtures/models/test_validations.rb rename to spec/fixtures/models/test_validations.rb diff --git a/test/fixtures/table_config/test_table_config_gsi_basic_config.rb b/spec/fixtures/table_config/test_table_config_gsi_basic_config.rb similarity index 100% rename from test/fixtures/table_config/test_table_config_gsi_basic_config.rb rename to spec/fixtures/table_config/test_table_config_gsi_basic_config.rb diff --git a/test/fixtures/table_config/test_table_config_gsi_mult_config.rb b/spec/fixtures/table_config/test_table_config_gsi_mult_config.rb similarity index 100% rename from test/fixtures/table_config/test_table_config_gsi_mult_config.rb rename to spec/fixtures/table_config/test_table_config_gsi_mult_config.rb diff --git a/test/fixtures/table_config/test_table_config_gsi_provided_config.rb b/spec/fixtures/table_config/test_table_config_gsi_provided_config.rb similarity index 100% rename from test/fixtures/table_config/test_table_config_gsi_provided_config.rb rename to spec/fixtures/table_config/test_table_config_gsi_provided_config.rb diff --git a/test/fixtures/table_config/test_table_config_model1_config.rb b/spec/fixtures/table_config/test_table_config_model1_config.rb similarity index 100% rename from test/fixtures/table_config/test_table_config_model1_config.rb rename to spec/fixtures/table_config/test_table_config_model1_config.rb diff --git a/test/fixtures/table_config/test_table_config_model2_config.rb b/spec/fixtures/table_config/test_table_config_model2_config.rb similarity index 100% rename from test/fixtures/table_config/test_table_config_model2_config.rb rename to spec/fixtures/table_config/test_table_config_model2_config.rb diff --git a/test/generators/aws_record/generated_attribute_test.rb b/spec/generators/aws_record/generated_attribute_spec.rb similarity index 100% rename from test/generators/aws_record/generated_attribute_test.rb rename to spec/generators/aws_record/generated_attribute_spec.rb diff --git a/test/generators/aws_record/model/model_generator_test.rb b/spec/generators/aws_record/model/model_generator_spec.rb similarity index 100% rename from test/generators/aws_record/model/model_generator_test.rb rename to spec/generators/aws_record/model/model_generator_spec.rb diff --git a/test/generators/aws_record/secondary_index_test.rb b/spec/generators/aws_record/secondary_index_spec.rb similarity index 100% rename from test/generators/aws_record/secondary_index_test.rb rename to spec/generators/aws_record/secondary_index_spec.rb diff --git a/test/generators/dynamo_db/session_store_migration/session_store_migration_generator_test.rb b/spec/generators/dynamo_db/session_store_migration/session_store_migration_generator_spec.rb similarity index 100% rename from test/generators/dynamo_db/session_store_migration/session_store_migration_generator_test.rb rename to spec/generators/dynamo_db/session_store_migration/session_store_migration_generator_spec.rb diff --git a/test/tasks/dynamo_db/session_store_rake_test.rb b/spec/tasks/dynamo_db/session_store_rake_spec.rb similarity index 100% rename from test/tasks/dynamo_db/session_store_rake_test.rb rename to spec/tasks/dynamo_db/session_store_rake_spec.rb diff --git a/test/test_helper.rb b/spec/test_helper.rb similarity index 62% rename from test/test_helper.rb rename to spec/test_helper.rb index c8d5fc61..a57a902e 100644 --- a/test/test_helper.rb +++ b/spec/test_helper.rb @@ -1,14 +1,9 @@ # frozen_string_literal: true -require 'minitest/autorun' -require 'minitest/spec' -require 'minitest/unit' -require 'rspec/mocks/minitest_integration' -require 'rspec/expectations/minitest_integration' - ENV['RAILS_ENV'] = 'test' require_relative 'dummy/config/application' +require 'rspec/rails' Rails.application.initialize! From 7dea37b0db0505e5044719c91ab5c8aa4e04b4ad Mon Sep 17 00:00:00 2001 From: Sarah Sunday <3252602+ssunday@users.noreply.github.com> Date: Mon, 24 Jun 2024 09:49:16 -0500 Subject: [PATCH 2/7] [LINT] Rubocop --- spec/dummy/app/models/test_model_complex.rb | 2 +- spec/dummy/app/models/test_model_gsi_basic.rb | 2 +- spec/dummy/app/models/test_model_gsi_keys.rb | 2 +- spec/dummy/app/models/test_model_gsi_mult.rb | 4 ++-- spec/dummy/app/models/test_model_set_table_name.rb | 2 +- spec/dummy/app/models/test_table_config_gsi_mult.rb | 4 ++-- spec/dummy/app/models/test_table_config_gsi_provided.rb | 2 +- spec/fixtures/models/test_model_complex.rb | 2 +- spec/fixtures/models/test_model_gsi_basic.rb | 2 +- spec/fixtures/models/test_model_gsi_keys.rb | 2 +- spec/fixtures/models/test_model_gsi_mult.rb | 4 ++-- spec/fixtures/models/test_model_set_table_name.rb | 2 +- 12 files changed, 15 insertions(+), 15 deletions(-) diff --git a/spec/dummy/app/models/test_model_complex.rb b/spec/dummy/app/models/test_model_complex.rb index 5ce1c603..986c80a4 100644 --- a/spec/dummy/app/models/test_model_complex.rb +++ b/spec/dummy/app/models/test_model_complex.rb @@ -9,6 +9,6 @@ class TestModelComplex string_attr :post_title string_attr :post_body string_set_attr :tags, default_value: Set.new - datetime_attr :created_at, database_attribute_name: "PostCreatedAtTime" + datetime_attr :created_at, database_attribute_name: 'PostCreatedAtTime' boolean_attr :moderation, default_value: false end diff --git a/spec/dummy/app/models/test_model_gsi_basic.rb b/spec/dummy/app/models/test_model_gsi_basic.rb index 094c65ea..f9b2966e 100644 --- a/spec/dummy/app/models/test_model_gsi_basic.rb +++ b/spec/dummy/app/models/test_model_gsi_basic.rb @@ -10,7 +10,7 @@ class TestModelGsiBasic :SecondaryIndex, hash_key: :gsi_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/dummy/app/models/test_model_gsi_keys.rb b/spec/dummy/app/models/test_model_gsi_keys.rb index f98f9b92..5c74b786 100644 --- a/spec/dummy/app/models/test_model_gsi_keys.rb +++ b/spec/dummy/app/models/test_model_gsi_keys.rb @@ -12,7 +12,7 @@ class TestModelGsiKeys hash_key: :gsi_hkey, range_key: :gsi_rkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/dummy/app/models/test_model_gsi_mult.rb b/spec/dummy/app/models/test_model_gsi_mult.rb index a71d24a2..3d24e696 100644 --- a/spec/dummy/app/models/test_model_gsi_mult.rb +++ b/spec/dummy/app/models/test_model_gsi_mult.rb @@ -11,7 +11,7 @@ class TestModelGsiMult :SecondaryIndex, hash_key: :gsi_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) @@ -19,7 +19,7 @@ class TestModelGsiMult :SecondaryIndex2, hash_key: :gsi2_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/dummy/app/models/test_model_set_table_name.rb b/spec/dummy/app/models/test_model_set_table_name.rb index 220db119..1dc2b448 100644 --- a/spec/dummy/app/models/test_model_set_table_name.rb +++ b/spec/dummy/app/models/test_model_set_table_name.rb @@ -4,5 +4,5 @@ class TestModelSetTableName include Aws::Record string_attr :uuid, hash_key: true - set_table_name "CustomTableName" + set_table_name 'CustomTableName' end diff --git a/spec/dummy/app/models/test_table_config_gsi_mult.rb b/spec/dummy/app/models/test_table_config_gsi_mult.rb index de82d390..4a876a3b 100644 --- a/spec/dummy/app/models/test_table_config_gsi_mult.rb +++ b/spec/dummy/app/models/test_table_config_gsi_mult.rb @@ -11,7 +11,7 @@ class TestTableConfigGsiMult :SecondaryIndex, hash_key: :gsi_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) @@ -19,7 +19,7 @@ class TestTableConfigGsiMult :SecondaryIndex2, hash_key: :gsi2_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/dummy/app/models/test_table_config_gsi_provided.rb b/spec/dummy/app/models/test_table_config_gsi_provided.rb index 7a5833a7..da348465 100644 --- a/spec/dummy/app/models/test_table_config_gsi_provided.rb +++ b/spec/dummy/app/models/test_table_config_gsi_provided.rb @@ -10,7 +10,7 @@ class TestTableConfigGsiProvided :SecondaryIndex, hash_key: :gsi_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/fixtures/models/test_model_complex.rb b/spec/fixtures/models/test_model_complex.rb index 5ce1c603..986c80a4 100644 --- a/spec/fixtures/models/test_model_complex.rb +++ b/spec/fixtures/models/test_model_complex.rb @@ -9,6 +9,6 @@ class TestModelComplex string_attr :post_title string_attr :post_body string_set_attr :tags, default_value: Set.new - datetime_attr :created_at, database_attribute_name: "PostCreatedAtTime" + datetime_attr :created_at, database_attribute_name: 'PostCreatedAtTime' boolean_attr :moderation, default_value: false end diff --git a/spec/fixtures/models/test_model_gsi_basic.rb b/spec/fixtures/models/test_model_gsi_basic.rb index 094c65ea..f9b2966e 100644 --- a/spec/fixtures/models/test_model_gsi_basic.rb +++ b/spec/fixtures/models/test_model_gsi_basic.rb @@ -10,7 +10,7 @@ class TestModelGsiBasic :SecondaryIndex, hash_key: :gsi_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/fixtures/models/test_model_gsi_keys.rb b/spec/fixtures/models/test_model_gsi_keys.rb index f98f9b92..5c74b786 100644 --- a/spec/fixtures/models/test_model_gsi_keys.rb +++ b/spec/fixtures/models/test_model_gsi_keys.rb @@ -12,7 +12,7 @@ class TestModelGsiKeys hash_key: :gsi_hkey, range_key: :gsi_rkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/fixtures/models/test_model_gsi_mult.rb b/spec/fixtures/models/test_model_gsi_mult.rb index a71d24a2..3d24e696 100644 --- a/spec/fixtures/models/test_model_gsi_mult.rb +++ b/spec/fixtures/models/test_model_gsi_mult.rb @@ -11,7 +11,7 @@ class TestModelGsiMult :SecondaryIndex, hash_key: :gsi_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) @@ -19,7 +19,7 @@ class TestModelGsiMult :SecondaryIndex2, hash_key: :gsi2_hkey, projection: { - projection_type: "ALL" + projection_type: 'ALL' } ) end diff --git a/spec/fixtures/models/test_model_set_table_name.rb b/spec/fixtures/models/test_model_set_table_name.rb index 220db119..1dc2b448 100644 --- a/spec/fixtures/models/test_model_set_table_name.rb +++ b/spec/fixtures/models/test_model_set_table_name.rb @@ -4,5 +4,5 @@ class TestModelSetTableName include Aws::Record string_attr :uuid, hash_key: true - set_table_name "CustomTableName" + set_table_name 'CustomTableName' end From 68858201e1b225eb29be3244a5ef37a59ec933e0 Mon Sep 17 00:00:00 2001 From: Matt Muller Date: Mon, 24 Jun 2024 11:44:56 -0400 Subject: [PATCH 3/7] Undo gemfile.lock gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 1212abc1..74d8af5e 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ doc docs.zip Gemfile.lock sample_app/Gemfile.lock +gemfiles/*.gemfile.lock spec/dummy/db/migrate spec/dummy/log/ spec/dummy/tmp/ From ce2961c169116e65cf9eac13842bbc6b022d708d Mon Sep 17 00:00:00 2001 From: Sarah Sunday <3252602+ssunday@users.noreply.github.com> Date: Mon, 24 Jun 2024 10:57:44 -0500 Subject: [PATCH 4/7] [LINT] Update rubocop config --- .rubocop.yml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index b4e30be3..4b964d2a 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -2,13 +2,13 @@ inherit_from: .rubocop_todo.yml AllCops: NewCops: enable - TargetRubyVersion: 2.5 + TargetRubyVersion: 2.7 Exclude: - 'tasks/release/**/*' - 'sample_app/**/*' - - 'test/dummy/**/*' - - 'test/fixtures/**/*' - - 'test/fixtures/**/*' + - 'spec/dummy/**/*' + - 'spec/fixtures/**/*' + - 'spec/fixtures/**/*' Gemspec/DevelopmentDependencies: Enabled: false @@ -28,8 +28,11 @@ Style/GlobalVars: Metrics/BlockLength: Exclude: - - 'test/**/*.rb' + - 'spec/**/*.rb' Metrics/ModuleLength: Exclude: - - 'test/**/*.rb' + - 'spec/**/*.rb' + +Style/HashSyntax: + EnforcedShorthandSyntax: never From aa8e17b310c9665766ef4e1cb76c43cfe4cbbb02 Mon Sep 17 00:00:00 2001 From: Sarah Sunday <3252602+ssunday@users.noreply.github.com> Date: Mon, 24 Jun 2024 11:00:17 -0500 Subject: [PATCH 5/7] [LINT] Correct remaining rubocop issues --- lib/aws/rails/sqs_active_job/configuration.rb | 6 ++--- lib/generators/aws_record/base.rb | 4 +-- .../aws_record/generated_attribute.rb | 2 +- lib/generators/aws_record/secondary_index.rb | 2 +- .../ebs_sqs_active_job_middleware_spec.rb | 14 +++++----- spec/aws/rails/notifications_spec.rb | 2 +- spec/aws/rails/sqs_active_job/test_job.rb | 2 +- .../aws_record/generated_attribute_spec.rb | 26 ++++++++----------- 8 files changed, 26 insertions(+), 32 deletions(-) diff --git a/lib/aws/rails/sqs_active_job/configuration.rb b/lib/aws/rails/sqs_active_job/configuration.rb index 9d39a75e..d82c5d06 100644 --- a/lib/aws/rails/sqs_active_job/configuration.rb +++ b/lib/aws/rails/sqs_active_job/configuration.rb @@ -186,13 +186,11 @@ def load_yaml(file_path) # Avoid incompatible changes with Psych 4.0.0 # https://bugs.ruby-lang.org/issues/17866 - # rubocop:disable Security/YAMLLoad begin - YAML.load(source, aliases: true) || {} + YAML.safe_load(source, aliases: true) || {} rescue ArgumentError - YAML.load(source) || {} + YAML.safe_load(source) || {} end - # rubocop:enable Security/YAMLLoad end end end diff --git a/lib/generators/aws_record/base.rb b/lib/generators/aws_record/base.rb index 53a1402b..a6c199ec 100644 --- a/lib/generators/aws_record/base.rb +++ b/lib/generators/aws_record/base.rb @@ -141,9 +141,9 @@ def parse_table_config! @primary_read_units, @primary_write_units = parse_rw_units('primary') - @gsi_rw_units = @gsis.map do |idx| + @gsi_rw_units = @gsis.to_h do |idx| [idx.name, parse_rw_units(idx.name)] - end.to_h + end options['table_config'].each_key do |config| next if config == 'primary' diff --git a/lib/generators/aws_record/generated_attribute.rb b/lib/generators/aws_record/generated_attribute.rb index 79e16256..9610d566 100644 --- a/lib/generators/aws_record/generated_attribute.rb +++ b/lib/generators/aws_record/generated_attribute.rb @@ -54,7 +54,7 @@ def validate_opt_combs(name, type, opts) def parse_type_and_options(name, type, opts) opts ||= [] - [parse_type(name, type), opts.map { |opt| parse_option(name, opt) }.to_h] + [parse_type(name, type), opts.to_h { |opt| parse_option(name, opt) }] end def parse_option(name, opt) diff --git a/lib/generators/aws_record/secondary_index.rb b/lib/generators/aws_record/secondary_index.rb index 72cf4b44..1914e768 100644 --- a/lib/generators/aws_record/secondary_index.rb +++ b/lib/generators/aws_record/secondary_index.rb @@ -19,7 +19,7 @@ def parse(key_definition) def parse_raw_options(raw_opts) raw_opts ||= [] - raw_opts.map { |opt| get_option_value(opt) }.to_h + raw_opts.to_h { |opt| get_option_value(opt) } end def get_option_value(raw_option) diff --git a/spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb b/spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb index 53d1ac84..5f5f52ec 100644 --- a/spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb +++ b/spec/aws/rails/middleware/ebs_sqs_active_job_middleware_spec.rb @@ -57,7 +57,7 @@ module Rails end it 'successfully invokes periodic task when passed through custom header' do - mock_rack_env = create_mock_env('127.0.0.1', 'aws-sqsd/1.1', true) + mock_rack_env = create_mock_env('127.0.0.1', 'aws-sqsd/1.1', is_periodic_task: true) test_middleware = EbsSqsActiveJobMiddleware.new(mock_rack_app) expect_any_instance_of(ElasticBeanstalkPeriodicTask).to receive(:perform_now) @@ -69,7 +69,7 @@ module Rails end it 'returns internal server error if periodic task cannot be resolved' do - mock_rack_env = create_mock_env('127.0.0.1', 'aws-sqsd/1.1', true) + mock_rack_env = create_mock_env('127.0.0.1', 'aws-sqsd/1.1', is_periodic_task: true) mock_rack_env['HTTP_X_AWS_SQSD_TASKNAME'] = 'NonExistentTask' test_middleware = EbsSqsActiveJobMiddleware.new(mock_rack_app) @@ -79,7 +79,7 @@ module Rails end it 'successfully invokes job when docker default gateway ip is changed' do - mock_rack_env = create_mock_env('192.168.176.1', 'aws-sqsd/1.1', false) + mock_rack_env = create_mock_env('192.168.176.1', 'aws-sqsd/1.1', is_periodic_task: false) test_middleware = EbsSqsActiveJobMiddleware.new(mock_rack_app) proc_net_route = <<~CONTENT @@ -103,7 +103,7 @@ module Rails end it 'successfully invokes job when /proc/net/route does not exist' do - mock_rack_env = create_mock_env('172.17.0.1', 'aws-sqsd/1.1', false) + mock_rack_env = create_mock_env('172.17.0.1', 'aws-sqsd/1.1', is_periodic_task: false) test_middleware = EbsSqsActiveJobMiddleware.new(mock_rack_app) allow(File).to receive(:exist?).and_call_original @@ -119,7 +119,7 @@ module Rails end it 'successfully invokes job in docker container with cgroup1' do - mock_rack_env = create_mock_env('172.17.0.1', 'aws-sqsd/1.1', false) + mock_rack_env = create_mock_env('172.17.0.1', 'aws-sqsd/1.1', is_periodic_task: false) test_middleware = EbsSqsActiveJobMiddleware.new(mock_rack_app) proc_1_cgroup = <<~CONTENT @@ -144,7 +144,7 @@ module Rails end it 'successfully invokes job in docker container with cgroup2' do - mock_rack_env = create_mock_env('172.17.0.1', 'aws-sqsd/1.1', false) + mock_rack_env = create_mock_env('172.17.0.1', 'aws-sqsd/1.1', is_periodic_task: false) test_middleware = EbsSqsActiveJobMiddleware.new(mock_rack_app) proc_1_cgroup = <<~CONTENT @@ -177,7 +177,7 @@ module Rails end # Create a minimal mock Rack environment hash to test just what we need - def create_mock_env(source_ip, user_agent, is_periodic_task = false) + def create_mock_env(source_ip, user_agent, is_periodic_task: false) mock_env = { 'REMOTE_ADDR' => source_ip, 'HTTP_USER_AGENT' => user_agent diff --git a/spec/aws/rails/notifications_spec.rb b/spec/aws/rails/notifications_spec.rb index ac35e0f6..0fd10a0b 100644 --- a/spec/aws/rails/notifications_spec.rb +++ b/spec/aws/rails/notifications_spec.rb @@ -6,7 +6,7 @@ module Aws module Rails describe Notifications do let(:client) do - Client = Aws::SES::Client + Client = Aws::SES::Client # rubocop:disable Lint/ConstantDefinitionInBlock Client.add_plugin(Aws::Rails::Notifications) Client.new(stub_responses: true, logger: nil) end diff --git a/spec/aws/rails/sqs_active_job/test_job.rb b/spec/aws/rails/sqs_active_job/test_job.rb index 53ae19ce..00c7f957 100644 --- a/spec/aws/rails/sqs_active_job/test_job.rb +++ b/spec/aws/rails/sqs_active_job/test_job.rb @@ -4,7 +4,7 @@ class TestJob < ActiveJob::Base self.queue_adapter = :amazon_sqs queue_as :default - def perform(a1, a2); end + def perform(arg1, arg2); end end class TestJobWithMessageGroupID < TestJob diff --git a/spec/generators/aws_record/generated_attribute_spec.rb b/spec/generators/aws_record/generated_attribute_spec.rb index 2f730afd..c51e58a1 100644 --- a/spec/generators/aws_record/generated_attribute_spec.rb +++ b/spec/generators/aws_record/generated_attribute_spec.rb @@ -23,7 +23,8 @@ module Generators end it 'properly parses all valid types for an attribute' do - VALID_TYPES = { + base_params = 'uuid:' + { 'bool' => :boolean_attr, 'boolean' => :boolean_attr, 'date' => :date_attr, @@ -40,10 +41,7 @@ module Generators 's_set' => :string_set_attr, 'sset' => :string_set_attr, 'string' => :string_attr - }.freeze - - base_params = 'uuid:' - VALID_TYPES.each do |input, attr_type| + }.each do |input, attr_type| input_params = "#{base_params}#{input}" attribute = GeneratedAttribute.parse(input_params) @@ -53,18 +51,16 @@ module Generators end describe 'properly handles attribute options' do - VALID_OPTIONS = { - 'hkey' => [:hash_key, true], - 'rkey' => [:range_key, true], - 'persist_nil' => [:persist_nil, true], - 'db_attr_name{PostTitle}' => [:database_attribute_name, '"PostTitle"'], - 'ddb_type{BOOL}' => [:dynamodb_type, '"BOOL"'], - 'default_value{9}' => [:default_value, '9'] - }.freeze - it 'properly handles all valid options' do base_params = 'uuid:' - VALID_OPTIONS.each do |opt, parsed_opt| + { + 'hkey' => [:hash_key, true], + 'rkey' => [:range_key, true], + 'persist_nil' => [:persist_nil, true], + 'db_attr_name{PostTitle}' => [:database_attribute_name, '"PostTitle"'], + 'ddb_type{BOOL}' => [:dynamodb_type, '"BOOL"'], + 'default_value{9}' => [:default_value, '9'] + }.each do |opt, parsed_opt| input_params = "#{base_params}#{opt}" attribute = GeneratedAttribute.parse(input_params) From 6ba62620865c2f728a1f17ccb87d3799ba53d717 Mon Sep 17 00:00:00 2001 From: Sarah Sunday <3252602+ssunday@users.noreply.github.com> Date: Mon, 24 Jun 2024 11:02:34 -0500 Subject: [PATCH 6/7] [CONFIG] Tweak required ruby version --- aws-sdk-rails.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aws-sdk-rails.gemspec b/aws-sdk-rails.gemspec index 5ad07cb6..05f76395 100644 --- a/aws-sdk-rails.gemspec +++ b/aws-sdk-rails.gemspec @@ -31,5 +31,5 @@ Gem::Specification.new do |spec| spec.add_development_dependency('rails') spec.add_development_dependency('rspec-rails', '~> 6.1') - spec.required_ruby_version = '>= 2.5' + spec.required_ruby_version = '>= 2.7' end From cbff57cd721f3cb39130df296b42d8787970140e Mon Sep 17 00:00:00 2001 From: Matt Muller Date: Mon, 24 Jun 2024 13:57:02 -0400 Subject: [PATCH 7/7] Regenerate todo --- .rubocop_todo.yml | 32 +++++--------------------------- 1 file changed, 5 insertions(+), 27 deletions(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 91cabf9f..1803cb50 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -1,19 +1,11 @@ # This configuration was generated by # `rubocop --auto-gen-config` -# on 2023-09-28 18:54:02 UTC using RuboCop version 1.56.3. +# on 2024-06-24 17:56:34 UTC using RuboCop version 1.64.1. # The point is for the user to remove these configuration records # one by one as the offenses are removed from the code base. # Note that changes in the inspected code, or installation of new # versions of RuboCop, may require this file to be generated again. -# Offense count: 3 -# Configuration parameters: AllowedMethods. -# AllowedMethods: enums -Lint/ConstantDefinitionInBlock: - Exclude: - - 'test/aws/rails/notifications_test.rb' - - 'test/generators/aws_record/generated_attribute_test.rb' - # Offense count: 1 Lint/DuplicateMethods: Exclude: @@ -31,7 +23,7 @@ Lint/ShadowingOuterLocalVariable: # Offense count: 1 # This cop supports safe autocorrection (--autocorrect). -# Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods. +# Configuration parameters: AutoCorrect, AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods. Lint/UnusedMethodArgument: Exclude: - 'lib/aws/rails/sqs_active_job/lambda_handler.rb' @@ -51,10 +43,10 @@ Metrics/ClassLength: Metrics/CyclomaticComplexity: Max: 11 -# Offense count: 19 +# Offense count: 18 # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns. Metrics/MethodLength: - Max: 35 + Max: 25 # Offense count: 3 # Configuration parameters: AllowedMethods, AllowedPatterns. @@ -66,13 +58,6 @@ Naming/AccessorMethodName: Exclude: - 'lib/aws/rails/sqs_active_job/configuration.rb' -# Offense count: 2 -# Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames. -# AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to -Naming/MethodParameterName: - Exclude: - - 'test/aws/rails/sqs_active_job/test_job.rb' - # Offense count: 1 # Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros. # NamePrefix: is_, has_, have_ @@ -108,14 +93,7 @@ Style/IfUnlessModifier: - 'lib/generators/aws_record/base.rb' - 'lib/generators/aws_record/secondary_index.rb' -# Offense count: 1 -# Configuration parameters: AllowedMethods. -# AllowedMethods: respond_to_missing? -Style/OptionalBooleanParameter: - Exclude: - - 'test/aws/rails/middleware/ebs_sqs_active_job_middleware_test.rb' - -# Offense count: 22 +# Offense count: 23 # This cop supports safe autocorrection (--autocorrect). # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns. # URISchemes: http, https