12345678910111213141516171819202122232425262728293031323334353637383940 |
- require 'test_helper'
- class FulfillmentV2Test < Test::Unit::TestCase
- context "FulfillmentV2" do
- context "#update_tracking" do
- should "be able to update tracking info for a fulfillment" do
- tracking_info = {
- number: 'JSDHFHAG',
- url: 'https://example.com/fulfillment_tracking/JSDHFHAG',
- company: 'ACME co',
- }
- fake_fulfillment = ActiveSupport::JSON.decode(load_fixture('fulfillment'))['fulfillment']
- fake_fulfillment['tracking_number'] = tracking_info[:number]
- fake_fulfillment['tracking_numbers'] = [tracking_info[:number]]
- fake_fulfillment['tracking_url'] = tracking_info[:url]
- fake_fulfillment['tracking_urls'] = [tracking_info[:url]]
- fake_fulfillment['tracking_company'] = tracking_info[:company]
- request_body = {
- fulfillment: {
- tracking_info: tracking_info,
- notify_customer: true
- }
- }
- fake "fulfillments/#{fake_fulfillment['id']}/update_tracking", method: :post,
- request_body: ActiveSupport::JSON.encode(request_body),
- body: ActiveSupport::JSON.encode(fulfillment: fake_fulfillment)
- fulfillment = ShopifyAPI::FulfillmentV2.new(id: fake_fulfillment['id'])
- assert fulfillment.update_tracking(tracking_info: tracking_info, notify_customer: true)
- assert_equal tracking_info[:number], fulfillment.tracking_number
- assert_equal [tracking_info[:number]], fulfillment.tracking_numbers
- assert_equal tracking_info[:url], fulfillment.tracking_url
- assert_equal [tracking_info[:url]], fulfillment.tracking_urls
- assert_equal tracking_info[:company], fulfillment.tracking_company
- end
- end
- end
- end
|