mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-03-10 03:30:22 +00:00
Use Orders::WorkflowService#complete! and #advance_to_payment in specs to replace code causing Style/NestedModifier rubocop offenses
Rewrite the loop "break unless a = order.next! while !order.delivery?" to correct the offenses. Not adding a helper because the change was only needed in a couple of places.
This commit is contained in:
@@ -283,21 +283,6 @@ Style/MissingRespondToMissing:
|
||||
- 'app/models/spree/gateway.rb'
|
||||
- 'app/models/spree/preferences/configuration.rb'
|
||||
|
||||
# Offense count: 22
|
||||
# This cop supports safe autocorrection (--autocorrect).
|
||||
Style/NestedModifier:
|
||||
Exclude:
|
||||
- 'spec/controllers/admin/subscriptions_controller_spec.rb'
|
||||
- 'spec/controllers/line_items_controller_spec.rb'
|
||||
- 'spec/controllers/spree/admin/orders_controller_spec.rb'
|
||||
- 'spec/controllers/spree/orders_controller_spec.rb'
|
||||
- 'spec/factories/order_factory.rb'
|
||||
- 'spec/models/proxy_order_spec.rb'
|
||||
- 'spec/models/spree/line_item_spec.rb'
|
||||
- 'spec/services/place_proxy_order_spec.rb'
|
||||
- 'spec/system/admin/payments_stripe_spec.rb'
|
||||
- 'spec/system/admin/reports_spec.rb'
|
||||
|
||||
# Offense count: 38
|
||||
Style/OpenStructUse:
|
||||
Exclude:
|
||||
|
||||
@@ -458,7 +458,7 @@ RSpec.describe Admin::SubscriptionsController do
|
||||
}
|
||||
let!(:order) { proxy_order.initialise_order! }
|
||||
|
||||
before { break unless order.next! while !order.completed? }
|
||||
before { Orders::WorkflowService.new(order).complete! }
|
||||
|
||||
context "when no 'open_orders' directive has been provided" do
|
||||
it "renders an error, asking what to do" do
|
||||
@@ -562,7 +562,7 @@ RSpec.describe Admin::SubscriptionsController do
|
||||
}
|
||||
let!(:order) { proxy_order.initialise_order! }
|
||||
|
||||
before { break unless order.next! while !order.completed? }
|
||||
before { Orders::WorkflowService.new(order).complete! }
|
||||
|
||||
context "when no 'open_orders' directive has been provided" do
|
||||
it "renders an error, asking what to do" do
|
||||
@@ -668,7 +668,7 @@ RSpec.describe Admin::SubscriptionsController do
|
||||
}
|
||||
let!(:order) { proxy_order.initialise_order! }
|
||||
|
||||
before { break unless order.next! while !order.completed? }
|
||||
before { Orders::WorkflowService.new(order).complete! }
|
||||
|
||||
context "when no associated orders are 'canceled'" do
|
||||
it 'renders the unpaused subscription as json, leaves the order untouched' do
|
||||
|
||||
@@ -11,7 +11,7 @@ RSpec.describe LineItemsController do
|
||||
let!(:completed_order) do
|
||||
order = create(:completed_order_with_totals, user:, distributor:,
|
||||
order_cycle:, line_items_count: 1)
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order
|
||||
end
|
||||
|
||||
@@ -35,7 +35,7 @@ RSpec.describe LineItemsController do
|
||||
let(:item) do
|
||||
order = create(:completed_order_with_totals)
|
||||
item = create(:line_item, order:)
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
item
|
||||
end
|
||||
|
||||
@@ -177,7 +177,7 @@ RSpec.describe LineItemsController do
|
||||
order_cycle:, line_items_count: 2)
|
||||
order.reload.line_items.first.update(variant_id: variant1.id)
|
||||
order.line_items.last.update(variant_id: variant2.id)
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.recreate_all_fees!
|
||||
order
|
||||
end
|
||||
|
||||
@@ -85,7 +85,7 @@ RSpec.describe Spree::Admin::OrdersController do
|
||||
order_cycle:)
|
||||
order.reload.line_items.first.update(variant_id: variant1.id)
|
||||
order.line_items.last.update(variant_id: variant2.id)
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.recreate_all_fees!
|
||||
order
|
||||
end
|
||||
|
||||
@@ -293,7 +293,7 @@ RSpec.describe Spree::OrdersController do
|
||||
order_cycle:)
|
||||
order.reload.line_items.first.update(variant_id: variant1.id)
|
||||
order.reload.line_items.last.update(variant_id: variant2.id)
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.recreate_all_fees!
|
||||
order
|
||||
end
|
||||
|
||||
@@ -128,10 +128,12 @@ FactoryBot.define do
|
||||
payment_method: evaluator.payment_method)
|
||||
order.recreate_all_fees!
|
||||
order.ship_address = evaluator.ship_address
|
||||
break unless a = order.next! while !order.delivery?
|
||||
while !order.delivery?
|
||||
break unless a = order.next!
|
||||
end
|
||||
order.select_shipping_method(evaluator.shipping_method.id)
|
||||
|
||||
break unless a = order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -164,7 +166,7 @@ FactoryBot.define do
|
||||
create(:payment, state: "checkout", order:, amount: order.total,
|
||||
payment_method: evaluator.payment_method)
|
||||
order.ship_address = evaluator.ship_address
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
|
||||
order.update_columns(
|
||||
completed_at: evaluator.completed_at,
|
||||
@@ -260,7 +262,7 @@ FactoryBot.define do
|
||||
tax_category: evaluator.shipping_tax_category)
|
||||
|
||||
order.reload
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.reload
|
||||
end
|
||||
end
|
||||
|
||||
@@ -116,7 +116,7 @@ RSpec.describe ProxyOrder do
|
||||
allow(Spree::OrderMailer).to receive(:cancel_email) {
|
||||
double(:email, deliver_later: true)
|
||||
}
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.cancel
|
||||
order.reload
|
||||
end
|
||||
@@ -130,7 +130,7 @@ RSpec.describe ProxyOrder do
|
||||
end
|
||||
|
||||
context "and the order has not been cancelled" do
|
||||
before { break unless order.next! while !order.completed? }
|
||||
before { Orders::WorkflowService.new(order).complete! }
|
||||
|
||||
it "returns true and clears canceled_at" do
|
||||
expect(proxy_order.resume).to be true
|
||||
@@ -159,7 +159,7 @@ RSpec.describe ProxyOrder do
|
||||
allow(Spree::OrderMailer).to receive(:cancel_email) {
|
||||
double(:email, deliver_later: true)
|
||||
}
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.cancel
|
||||
end
|
||||
|
||||
@@ -172,7 +172,7 @@ RSpec.describe ProxyOrder do
|
||||
end
|
||||
|
||||
context "and the order has not been cancelled" do
|
||||
before { break unless order.next! while !order.completed? }
|
||||
before { Orders::WorkflowService.new(order).complete! }
|
||||
|
||||
it "returns false and does nothing" do
|
||||
expect(proxy_order.resume).to eq false
|
||||
|
||||
@@ -300,7 +300,7 @@ module Spree
|
||||
order.reload
|
||||
order.update_totals
|
||||
order.payments << create(:payment, amount: order.total)
|
||||
break unless order.next! until order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
order.payment_state = 'paid'
|
||||
order.select_shipping_method(shipping_method.id)
|
||||
order.shipment.update!(order)
|
||||
|
||||
@@ -52,7 +52,7 @@ RSpec.describe PlaceProxyOrder do
|
||||
|
||||
before do
|
||||
proxy_order.initialise_order!
|
||||
break unless order.next! while !order.completed?
|
||||
Orders::WorkflowService.new(order).complete!
|
||||
end
|
||||
|
||||
it "records an issue and ignores it" do
|
||||
|
||||
@@ -101,7 +101,7 @@ RSpec.describe '
|
||||
stub_payment_intents_post_request order:, stripe_account_header: true
|
||||
stub_successful_capture_request(order:)
|
||||
|
||||
break unless order.next! while !order.payment?
|
||||
Orders::WorkflowService.new(order).advance_to_payment
|
||||
end
|
||||
|
||||
it "adds a payment with state complete" do
|
||||
|
||||
@@ -261,15 +261,18 @@ RSpec.describe '
|
||||
|
||||
before do
|
||||
order1.reload
|
||||
break unless order1.next! until order1.delivery?
|
||||
while !order1.delivery?
|
||||
break unless order1.next!
|
||||
end
|
||||
|
||||
order1.select_shipping_method(shipping_method.id)
|
||||
order1.recreate_all_fees!
|
||||
break unless order1.next! until order1.payment?
|
||||
order_workflow = Orders::WorkflowService.new(order1)
|
||||
order_workflow.advance_to_payment
|
||||
|
||||
create(:payment, state: "checkout", order: order1, amount: order1.reload.total,
|
||||
payment_method: create(:payment_method, distributors: [distributor1]))
|
||||
break unless order1.next! until order1.complete?
|
||||
order_workflow.complete!
|
||||
|
||||
login_as_admin
|
||||
visit admin_reports_path
|
||||
|
||||
Reference in New Issue
Block a user