From f0d5bf0ab52e8c3da35bb25a0f1f5d2736b80bdf Mon Sep 17 00:00:00 2001 From: Maikel Linke Date: Wed, 31 Mar 2021 11:53:31 +1100 Subject: [PATCH] Disallow changes of canceled order --- app/controllers/api/v0/shipments_controller.rb | 5 +++++ spec/controllers/api/v0/shipments_controller_spec.rb | 4 ---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/controllers/api/v0/shipments_controller.rb b/app/controllers/api/v0/shipments_controller.rb index ec452b2869..d144fa96ba 100644 --- a/app/controllers/api/v0/shipments_controller.rb +++ b/app/controllers/api/v0/shipments_controller.rb @@ -8,6 +8,7 @@ module Api respond_to :json before_action :find_order + before_action :refuse_changing_cancelled_orders, only: [:add, :remove] before_action :find_and_update_shipment, only: [:ship, :ready, :add, :remove] def create @@ -95,6 +96,10 @@ module Api @shipment.reload end + def refuse_changing_cancelled_orders + render status: :unprocessable_entity if @order.canceled? + end + def scoped_variant(variant_id) variant = Spree::Variant.find(variant_id) OpenFoodNetwork::ScopeVariantToHub.new(@order.distributor).scope(variant) diff --git a/spec/controllers/api/v0/shipments_controller_spec.rb b/spec/controllers/api/v0/shipments_controller_spec.rb index fe249ba2b7..188183e198 100644 --- a/spec/controllers/api/v0/shipments_controller_spec.rb +++ b/spec/controllers/api/v0/shipments_controller_spec.rb @@ -161,8 +161,6 @@ describe Api::V0::ShipmentsController, type: :controller do end it "doesn't adjusts stock when adding a variant" do - pending "https://github.com/openfoodfoundation/openfoodnetwork/issues/7166" - expect { api_put :add, params.merge(variant_id: existing_variant.to_param) expect(response.status).to eq(422) @@ -170,8 +168,6 @@ describe Api::V0::ShipmentsController, type: :controller do end it "doesn't adjusts stock when removing a variant" do - pending "https://github.com/openfoodfoundation/openfoodnetwork/issues/7166" - expect { api_put :remove, params.merge(variant_id: existing_variant.to_param) expect(response.status).to eq(422)