| 
					
				 | 
			
			
				@@ -142,5 +142,234 @@ class FulFillmentOrderTest < Test::Unit::TestCase 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         assert_equal 'incomplete', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    context "#request_fulfillment" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "make a fulfillment request for a fulfillment order including unsubmitted" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_original_fulfillment_order = ActiveSupport::JSON.decode(load_fixture('fulfillment_order')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_original_fulfillment_order['status'] = 'closed' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order = fake_original_fulfillment_order.clone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order['id'] = 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order['status'] = 'open' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order['request_status'] = 'submitted' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_unsubmitted_fulfillment_order = fake_original_fulfillment_order.clone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_unsubmitted_fulfillment_order['id'] = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_unsubmitted_fulfillment_order['status'] = 'open' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_unsubmitted_fulfillment_order['request_status'] = 'unsubmitted' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          original_fulfillment_order: fake_original_fulfillment_order, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          submitted_fulfillment_order: fake_submitted_fulfillment_order, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          unsubmitted_fulfillment_order: fake_unsubmitted_fulfillment_order 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_request: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            fulfillment_order_line_items: [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              { id: 1, quantity: 1 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            message: 'Fulfill this FO, please.' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/fulfillment_request", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => ActiveSupport::JSON.encode(request_body), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode(body) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        params = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_order_line_items: [{ id: 1, quantity: 1 }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          message: "Fulfill this FO, please." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        response_fulfillment_orders = fulfillment_order.request_fulfillment(params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'closed', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 3, response_fulfillment_orders.size 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        original_fulfillment_order = response_fulfillment_orders['original_fulfillment_order'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 519788021, original_fulfillment_order.id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'closed', original_fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        submitted_fulfillment_order = response_fulfillment_orders['submitted_fulfillment_order'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 2, submitted_fulfillment_order.id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'open', submitted_fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'submitted', submitted_fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        unsubmitted_fulfillment_order = response_fulfillment_orders['unsubmitted_fulfillment_order'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 3, unsubmitted_fulfillment_order.id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'open', unsubmitted_fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'unsubmitted', unsubmitted_fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "make a fulfillment request for a fulfillment order excluding unsubmitted" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_original_fulfillment_order = ActiveSupport::JSON.decode(load_fixture('fulfillment_order')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_original_fulfillment_order['status'] = 'closed' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order = fake_original_fulfillment_order.clone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order['id'] = 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order['status'] = 'open' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_submitted_fulfillment_order['request_status'] = 'submitted' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          original_fulfillment_order: fake_original_fulfillment_order, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          submitted_fulfillment_order: fake_submitted_fulfillment_order, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          unsubmitted_fulfillment_order: nil, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_request: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            fulfillment_order_line_items: [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              { id: 1, quantity: 1 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            message: 'Fulfill this FO, please.' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/fulfillment_request", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => ActiveSupport::JSON.encode(request_body), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode(body) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        params = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_order_line_items: [{ id: 1, quantity: 1 }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          message: "Fulfill this FO, please." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        response_fulfillment_orders = fulfillment_order.request_fulfillment(params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'closed', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 3, response_fulfillment_orders.size 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        original_fulfillment_order = response_fulfillment_orders['original_fulfillment_order'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 519788021, original_fulfillment_order.id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'closed', original_fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        submitted_fulfillment_order = response_fulfillment_orders['submitted_fulfillment_order'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 2, submitted_fulfillment_order.id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'open', submitted_fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'submitted', submitted_fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_nil response_fulfillment_orders['unsubmitted_fulfillment_order'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    context "#accept_fulfillment_request" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "accept a fulfillment request for a fulfillment order" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        message = "LGTM. Accept this FO fulfillment request" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'fulfillment_request' => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'message' => message 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_response = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_order: fulfillment_order.attributes.merge(status: 'in_progress', request_status: 'accepted') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/fulfillment_request/accept", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => ActiveSupport::JSON.encode(request_body), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode(fake_response) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        accepted = fulfillment_order.accept_fulfillment_request(message: message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal true, accepted 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'in_progress', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'accepted', fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    context "#reject_fulfillment_request" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "reject a fulfillment request for a fulfillment order" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        message = "LBTM. Reject this FO fulfillment request" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'fulfillment_request' => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'message' => message 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_response = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_order: fulfillment_order.attributes.merge(status: 'open', request_status: 'rejected') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/fulfillment_request/reject", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => ActiveSupport::JSON.encode(request_body), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode(fake_response) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rejected = fulfillment_order.reject_fulfillment_request(message: message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal true, rejected 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'open', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'rejected', fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    context "#request_cancellation" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "make a cancellation request for a fulfillment order" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        message = "Cancelling this please." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'cancellation_request' => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'message' => message 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cancelling = ActiveSupport::JSON.decode(load_fixture('fulfillment_order')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cancelling['status'] = 'in_progress' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cancelling['request_status'] = 'cancellation_requested' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/cancellation_request", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => ActiveSupport::JSON.encode(request_body), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode({ fulfillment_order: cancelling }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cancelled = fulfillment_order.request_cancellation(message: "Cancelling this please.") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal true, cancelled 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'in_progress', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'cancellation_requested', fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    context "#accept_cancellation_request" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "accept a cancellation request for a fulfillment order" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        message = 'Already in-progress. Reject this FO cancellation request' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'cancellation_request' => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'message' => message 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_response = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_order: fulfillment_order.attributes.merge(status: 'cancelled', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                                request_status: 'cancellation_accepted') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/cancellation_request/accept", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => ActiveSupport::JSON.encode(request_body), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode(fake_response) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        accepted = fulfillment_order.accept_cancellation_request(message: message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal true, accepted 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'cancelled', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'cancellation_accepted', fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    context "#reject_cancellation_request" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      should "reject a cancellation request for a fulfillment order" do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fulfillment_order = ShopifyAPI::FulfillmentOrder.find(519788021) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        message = "Already in-progress. Reject this FO cancellation request" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_body = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'cancellation_request' => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'message' => message 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake_response = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          fulfillment_order: fulfillment_order.attributes.merge(status: 'in_progress', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                                request_status: 'cancellation_rejected') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fake "fulfillment_orders/519788021/cancellation_request/reject", :method => :post, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :request_body => request_body, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :body => ActiveSupport::JSON.encode(fake_response) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rejected = fulfillment_order.reject_cancellation_request(message: message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal true, rejected 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'in_progress', fulfillment_order.status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        assert_equal 'cancellation_rejected', fulfillment_order.request_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 end 
			 |