From 69a10f0137a54be9dd789a90101bdf4a461b539f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Apr 2024 09:38:50 +0000 Subject: [PATCH 1/3] chore(deps-dev): bump rubocop-rspec from 2.27.1 to 2.28.0 Bumps [rubocop-rspec](https://github.com/rubocop/rubocop-rspec) from 2.27.1 to 2.28.0. - [Release notes](https://github.com/rubocop/rubocop-rspec/releases) - [Changelog](https://github.com/rubocop/rubocop-rspec/blob/master/CHANGELOG.md) - [Commits](https://github.com/rubocop/rubocop-rspec/compare/v2.27.1...v2.28.0) --- updated-dependencies: - dependency-name: rubocop-rspec dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index bee4fcbe1d..e3975d2e8e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -668,10 +668,13 @@ GEM rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) rubocop-ast (>= 1.31.1, < 2.0) - rubocop-rspec (2.27.1) + rubocop-rspec (2.28.0) rubocop (~> 1.40) rubocop-capybara (~> 2.17) rubocop-factory_bot (~> 2.22) + rubocop-rspec_rails (~> 2.28) + rubocop-rspec_rails (2.28.2) + rubocop (~> 1.40) ruby-graphviz (1.2.5) rexml ruby-progressbar (1.13.0) From 4db5aa593f16cf6345468f40cafdedcf03ab4cc3 Mon Sep 17 00:00:00 2001 From: David Cook Date: Thu, 4 Apr 2024 09:36:41 +1100 Subject: [PATCH 2/3] Regenerate rubocop todo --- .rubocop_todo.yml | 220 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 219 insertions(+), 1 deletion(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 80de3c4a6e..3e274bdd4b 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -390,6 +390,224 @@ Naming/VariableNumber: - 'spec/models/spree/tax_rate_spec.rb' - 'spec/requests/api/orders_spec.rb' +# Offense count: 142 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: ResponseMethods. +# ResponseMethods: response, last_response +RSpecRails/HaveHttpStatus: + Exclude: + - 'spec/controllers/admin/bulk_line_items_controller_spec.rb' + - 'spec/controllers/admin/order_cycles_controller_spec.rb' + - 'spec/controllers/admin/subscriptions_controller_spec.rb' + - 'spec/controllers/api/v0/base_controller_spec.rb' + - 'spec/controllers/api/v0/customers_controller_spec.rb' + - 'spec/controllers/api/v0/enterprises_controller_spec.rb' + - 'spec/controllers/api/v0/logos_controller_spec.rb' + - 'spec/controllers/api/v0/order_cycles_controller_spec.rb' + - 'spec/controllers/api/v0/orders_controller_spec.rb' + - 'spec/controllers/api/v0/product_images_controller_spec.rb' + - 'spec/controllers/api/v0/products_controller_spec.rb' + - 'spec/controllers/api/v0/promo_images_controller_spec.rb' + - 'spec/controllers/api/v0/reports/packing_report_spec.rb' + - 'spec/controllers/api/v0/reports_controller_spec.rb' + - 'spec/controllers/api/v0/shipments_controller_spec.rb' + - 'spec/controllers/api/v0/statuses_controller_spec.rb' + - 'spec/controllers/api/v0/taxons_controller_spec.rb' + - 'spec/controllers/api/v0/terms_and_conditions_controller_spec.rb' + - 'spec/controllers/api/v0/variants_controller_spec.rb' + - 'spec/controllers/cart_controller_spec.rb' + - 'spec/controllers/checkout_controller_spec.rb' + - 'spec/controllers/enterprises_controller_spec.rb' + - 'spec/controllers/line_items_controller_spec.rb' + - 'spec/controllers/shop_controller_spec.rb' + - 'spec/controllers/spree/admin/orders/payments/payments_controller_spec.rb' + - 'spec/controllers/spree/admin/orders_controller_spec.rb' + - 'spec/controllers/spree/admin/products_controller_spec.rb' + - 'spec/controllers/spree/credit_cards_controller_spec.rb' + - 'spec/controllers/spree/orders_controller_spec.rb' + - 'spec/controllers/stripe/callbacks_controller_spec.rb' + - 'spec/controllers/stripe/webhooks_controller_spec.rb' + - 'spec/controllers/user_passwords_controller_spec.rb' + - 'spec/controllers/user_registrations_controller_spec.rb' + - 'spec/requests/admin/images_spec.rb' + - 'spec/requests/api/routes_spec.rb' + - 'spec/requests/checkout/failed_checkout_spec.rb' + - 'spec/requests/checkout/stripe_sca_spec.rb' + - 'spec/requests/home_controller_spec.rb' + - 'spec/requests/omniauth_callbacks_controller_spec.rb' + - 'spec/services/embedded_page_service_spec.rb' + - 'spec/support/api_helper.rb' + +# Offense count: 8 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: numeric, symbolic, be_status +RSpecRails/HttpStatus: + Exclude: + - 'spec/controllers/spree/admin/products_controller_spec.rb' + - 'spec/requests/api/orders_spec.rb' + +# Offense count: 146 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: Inferences. +RSpecRails/InferredSpecType: + Exclude: + - 'engines/dfc_provider/spec/requests/addresses_spec.rb' + - 'engines/dfc_provider/spec/requests/catalog_items_spec.rb' + - 'engines/dfc_provider/spec/requests/enterprise_groups/affiliated_by_spec.rb' + - 'engines/dfc_provider/spec/requests/enterprise_groups_spec.rb' + - 'engines/dfc_provider/spec/requests/enterprises_spec.rb' + - 'engines/dfc_provider/spec/requests/offers_spec.rb' + - 'engines/dfc_provider/spec/requests/persons_spec.rb' + - 'engines/dfc_provider/spec/requests/social_medias_spec.rb' + - 'engines/dfc_provider/spec/requests/supplied_products_spec.rb' + - 'engines/web/spec/helpers/cookies_policy_helper_spec.rb' + - 'spec/controllers/admin/bulk_line_items_controller_spec.rb' + - 'spec/controllers/admin/column_preferences_controller_spec.rb' + - 'spec/controllers/admin/customers_controller_spec.rb' + - 'spec/controllers/admin/enterprises_controller_spec.rb' + - 'spec/controllers/admin/inventory_items_controller_spec.rb' + - 'spec/controllers/admin/invoice_settings_controller_spec.rb' + - 'spec/controllers/admin/matomo_settings_controller_spec.rb' + - 'spec/controllers/admin/order_cycles_controller_spec.rb' + - 'spec/controllers/admin/product_import_controller_spec.rb' + - 'spec/controllers/admin/proxy_orders_controller_spec.rb' + - 'spec/controllers/admin/reports_controller_spec.rb' + - 'spec/controllers/admin/schedules_controller_spec.rb' + - 'spec/controllers/admin/stripe_accounts_controller_spec.rb' + - 'spec/controllers/admin/stripe_connect_settings_controller_spec.rb' + - 'spec/controllers/admin/subscription_line_items_controller_spec.rb' + - 'spec/controllers/admin/subscriptions_controller_spec.rb' + - 'spec/controllers/admin/tag_rules_controller_spec.rb' + - 'spec/controllers/admin/terms_of_service_files_controller_spec.rb' + - 'spec/controllers/admin/variant_overrides_controller_spec.rb' + - 'spec/controllers/api/v0/customers_controller_spec.rb' + - 'spec/controllers/api/v0/enterprise_fees_controller_spec.rb' + - 'spec/controllers/api/v0/enterprises_controller_spec.rb' + - 'spec/controllers/api/v0/exchange_products_controller_spec.rb' + - 'spec/controllers/api/v0/logos_controller_spec.rb' + - 'spec/controllers/api/v0/order_cycles_controller_spec.rb' + - 'spec/controllers/api/v0/orders_controller_spec.rb' + - 'spec/controllers/api/v0/product_images_controller_spec.rb' + - 'spec/controllers/api/v0/products_controller_spec.rb' + - 'spec/controllers/api/v0/promo_images_controller_spec.rb' + - 'spec/controllers/api/v0/reports/packing_report_spec.rb' + - 'spec/controllers/api/v0/reports_controller_spec.rb' + - 'spec/controllers/api/v0/shipments_controller_spec.rb' + - 'spec/controllers/api/v0/shops_controller_spec.rb' + - 'spec/controllers/api/v0/statuses_controller_spec.rb' + - 'spec/controllers/api/v0/terms_and_conditions_controller_spec.rb' + - 'spec/controllers/api/v0/variants_controller_spec.rb' + - 'spec/controllers/base_controller_spec.rb' + - 'spec/controllers/cart_controller_spec.rb' + - 'spec/controllers/checkout_controller_spec.rb' + - 'spec/controllers/enterprises_controller_spec.rb' + - 'spec/controllers/groups_controller_spec.rb' + - 'spec/controllers/line_items_controller_spec.rb' + - 'spec/controllers/payment_gateways/paypal_controller_spec.rb' + - 'spec/controllers/payment_gateways/stripe_controller_spec.rb' + - 'spec/controllers/registration_controller_spec.rb' + - 'spec/controllers/shop_controller_spec.rb' + - 'spec/controllers/shops_controller_spec.rb' + - 'spec/controllers/spree/admin/adjustments_controller_spec.rb' + - 'spec/controllers/spree/admin/base_controller_spec.rb' + - 'spec/controllers/spree/admin/countries_controller_spec.rb' + - 'spec/controllers/spree/admin/general_settings_controller_spec.rb' + - 'spec/controllers/spree/admin/orders/customer_details_controller_spec.rb' + - 'spec/controllers/spree/admin/orders/invoices_spec.rb' + - 'spec/controllers/spree/admin/orders/payments/payments_controller_refunds_spec.rb' + - 'spec/controllers/spree/admin/orders/payments/payments_controller_spec.rb' + - 'spec/controllers/spree/admin/orders_controller_spec.rb' + - 'spec/controllers/spree/admin/overview_controller_spec.rb' + - 'spec/controllers/spree/admin/payment_methods_controller_spec.rb' + - 'spec/controllers/spree/admin/products_controller_spec.rb' + - 'spec/controllers/spree/admin/return_authorizations_controller_spec.rb' + - 'spec/controllers/spree/admin/search_controller_spec.rb' + - 'spec/controllers/spree/admin/shipping_categories_controller_spec.rb' + - 'spec/controllers/spree/admin/shipping_methods_controller_spec.rb' + - 'spec/controllers/spree/admin/tax_rates_controller_spec.rb' + - 'spec/controllers/spree/admin/tax_settings_controller_spec.rb' + - 'spec/controllers/spree/admin/variants_controller_spec.rb' + - 'spec/controllers/spree/api_keys_controller_spec.rb' + - 'spec/controllers/spree/credit_cards_controller_spec.rb' + - 'spec/controllers/spree/orders_controller_spec.rb' + - 'spec/controllers/spree/user_sessions_controller_spec.rb' + - 'spec/controllers/spree/users_controller_spec.rb' + - 'spec/controllers/stripe/callbacks_controller_spec.rb' + - 'spec/controllers/stripe/webhooks_controller_spec.rb' + - 'spec/controllers/user_confirmations_controller_spec.rb' + - 'spec/controllers/user_passwords_controller_spec.rb' + - 'spec/controllers/user_registrations_controller_spec.rb' + - 'spec/controllers/webhook_endpoints_controller_spec.rb' + - 'spec/helpers/admin/enterprises_helper_spec.rb' + - 'spec/helpers/admin/orders_helper_spec.rb' + - 'spec/helpers/admin/reports_helper_spec.rb' + - 'spec/helpers/admin/subscriptions_helper_spec.rb' + - 'spec/helpers/application_helper_spec.rb' + - 'spec/helpers/checkout_helper_spec.rb' + - 'spec/helpers/i18n_helper_spec.rb' + - 'spec/helpers/injection_helper_spec.rb' + - 'spec/helpers/link_helper_spec.rb' + - 'spec/helpers/navigation_helper_spec.rb' + - 'spec/helpers/order_cycles_helper_spec.rb' + - 'spec/helpers/serializer_helper_spec.rb' + - 'spec/helpers/shared_helper_spec.rb' + - 'spec/helpers/shop_helper_spec.rb' + - 'spec/helpers/spree/admin/base_helper_spec.rb' + - 'spec/helpers/spree/admin/general_settings_helper_spec.rb' + - 'spec/helpers/spree/admin/orders_helper_spec.rb' + - 'spec/helpers/spree/orders_helper_spec.rb' + - 'spec/helpers/tax_helper_spec.rb' + - 'spec/helpers/terms_and_conditions_helper_spec.rb' + - 'spec/jobs/connect_app_job_spec.rb' + - 'spec/mailers/producer_mailer_spec.rb' + - 'spec/mailers/subscription_mailer_spec.rb' + - 'spec/models/column_preference_spec.rb' + - 'spec/models/connected_app_spec.rb' + - 'spec/models/customer_spec.rb' + - 'spec/models/invoice_spec.rb' + - 'spec/models/oidc_account_spec.rb' + - 'spec/models/proxy_order_spec.rb' + - 'spec/models/report_blob_spec.rb' + - 'spec/models/semantic_link_spec.rb' + - 'spec/models/spree/gateway/stripe_sca_spec.rb' + - 'spec/models/subscription_spec.rb' + - 'spec/models/tag_rule/filter_order_cycles_spec.rb' + - 'spec/models/tag_rule/filter_payment_methods_spec.rb' + - 'spec/models/tag_rule/filter_products_spec.rb' + - 'spec/models/tag_rule/filter_shipping_methods_spec.rb' + - 'spec/models/tag_rule_spec.rb' + - 'spec/models/webhook_endpoint_spec.rb' + - 'spec/requests/admin/images_spec.rb' + - 'spec/requests/admin/product_import_spec.rb' + - 'spec/requests/admin/vouchers_spec.rb' + - 'spec/requests/api/orders_spec.rb' + - 'spec/requests/api/routes_spec.rb' + - 'spec/requests/api/v1/customers_spec.rb' + - 'spec/requests/api_docs_spec.rb' + - 'spec/requests/checkout/failed_checkout_spec.rb' + - 'spec/requests/checkout/paypal_spec.rb' + - 'spec/requests/checkout/routes_spec.rb' + - 'spec/requests/checkout/stripe_sca_spec.rb' + - 'spec/requests/errors_spec.rb' + - 'spec/requests/home_controller_spec.rb' + - 'spec/requests/large_request_spec.rb' + - 'spec/requests/omniauth_callbacks_controller_spec.rb' + - 'spec/requests/spree/admin/overview_spec.rb' + - 'spec/requests/spree/admin/payments_spec.rb' + - 'spec/requests/voucher_adjustments_spec.rb' + - 'spec/routing/stripe_spec.rb' + +# Offense count: 14 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: not_to, be_invalid +RSpecRails/NegationBeValid: + Exclude: + - 'spec/models/enterprise_spec.rb' + - 'spec/models/spree/product_spec.rb' + - 'spec/models/spree/variant_spec.rb' + # Offense count: 11 # Configuration parameters: Include. # Include: app/models/**/*.rb @@ -547,7 +765,7 @@ Rails/RelativeDateConstant: Exclude: - 'lib/tasks/data/remove_transient_data.rb' -# Offense count: 58 +# Offense count: 56 # This cop supports unsafe autocorrection (--autocorrect-all). # Configuration parameters: Include. # Include: spec/controllers/**/*.rb, spec/requests/**/*.rb, test/controllers/**/*.rb, test/integration/**/*.rb From 6cff5c81fe92e24d0b901387bdff1eabb4929d07 Mon Sep 17 00:00:00 2001 From: David Cook Date: Thu, 4 Apr 2024 09:41:05 +1100 Subject: [PATCH 3/3] Fix RSpecRails/NegationBeValid Another cop that only supports not_to instead of to_not. --- .rubocop_todo.yml | 10 ---------- spec/models/enterprise_spec.rb | 22 +++++++++++----------- spec/models/spree/product_spec.rb | 2 +- spec/models/spree/variant_spec.rb | 4 ++-- 4 files changed, 14 insertions(+), 24 deletions(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 3e274bdd4b..dfc1120676 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -598,16 +598,6 @@ RSpecRails/InferredSpecType: - 'spec/requests/voucher_adjustments_spec.rb' - 'spec/routing/stripe_spec.rb' -# Offense count: 14 -# This cop supports unsafe autocorrection (--autocorrect-all). -# Configuration parameters: EnforcedStyle. -# SupportedStyles: not_to, be_invalid -RSpecRails/NegationBeValid: - Exclude: - - 'spec/models/enterprise_spec.rb' - - 'spec/models/spree/product_spec.rb' - - 'spec/models/spree/variant_spec.rb' - # Offense count: 11 # Configuration parameters: Include. # Include: app/models/**/*.rb diff --git a/spec/models/enterprise_spec.rb b/spec/models/enterprise_spec.rb index 8c79d69987..e764c9da73 100644 --- a/spec/models/enterprise_spec.rb +++ b/spec/models/enterprise_spec.rb @@ -260,18 +260,18 @@ describe Enterprise do it "commas at the beginning and end are disallowed" do enterprise = build(:enterprise, preferred_shopfront_taxon_order: ",1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid enterprise = build(:enterprise, preferred_shopfront_taxon_order: "1,2,3,") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid end it "any other characters are invalid" do enterprise = build(:enterprise, preferred_shopfront_taxon_order: "a1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid enterprise = build(:enterprise, preferred_shopfront_taxon_order: ".1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid enterprise = build(:enterprise, preferred_shopfront_taxon_order: " 1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid end end @@ -295,18 +295,18 @@ describe Enterprise do it "commas at the beginning and end are disallowed" do enterprise = build(:enterprise, preferred_shopfront_producer_order: ",1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid enterprise = build(:enterprise, preferred_shopfront_producer_order: "1,2,3,") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid end it "any other characters are invalid" do enterprise = build(:enterprise, preferred_shopfront_producer_order: "a1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid enterprise = build(:enterprise, preferred_shopfront_producer_order: ".1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid enterprise = build(:enterprise, preferred_shopfront_producer_order: " 1,2,3") - expect(enterprise).to be_invalid + expect(enterprise).not_to be_valid end end @@ -336,7 +336,7 @@ describe Enterprise do it "does not validate if URL is invalid and can't be infered" do e = build(:enterprise, white_label_logo_link: 'with spaces') - expect(e).to be_invalid + expect(e).not_to be_valid end end end diff --git a/spec/models/spree/product_spec.rb b/spec/models/spree/product_spec.rb index 49fc233147..d23ba61fbe 100644 --- a/spec/models/spree/product_spec.rb +++ b/spec/models/spree/product_spec.rb @@ -276,7 +276,7 @@ module Spree product.variant_unit_name = nil product.variant_unit_scale = nil - expect(product).to be_invalid + expect(product).not_to be_valid end it "requires a unit scale when variant unit is weight" do diff --git a/spec/models/spree/variant_spec.rb b/spec/models/spree/variant_spec.rb index 696b4822d7..aec627bf71 100644 --- a/spec/models/spree/variant_spec.rb +++ b/spec/models/spree/variant_spec.rb @@ -11,7 +11,7 @@ describe Spree::Variant do context "validations" do it "should validate price is greater than 0" do variant.price = -1 - expect(variant).to be_invalid + expect(variant).not_to be_valid end it "should validate price is 0" do @@ -21,7 +21,7 @@ describe Spree::Variant do it "should validate unit_value is greater than 0" do variant.unit_value = 0 - expect(variant).to be_invalid + expect(variant).not_to be_valid end describe "tax category" do