Sha256: ce0c6f8de08b2ebdaca0bd7d83f12506a7d3b351fe88861a611aa182493d2e40
Contents?: true
Size: 1.95 KB
Versions: 1
Compression:
Stored size: 1.95 KB
Contents
require 'spec_helper' module FedexShip describe TrackingInformation do let(:fedex) { Shipment.new(fedex_credentials) } context "shipments with tracking number", :vcr, :focus do let(:options) do { :package_id => "771513950417", :package_type => "TRACKING_NUMBER_OR_DOORTAG", :include_detailed_scans => true } end let(:uuid) { fedex.track(options).first.unique_tracking_number } it "returns an array of tracking information results" do results = fedex.track(options) expect(results).not_to be_empty end it "returns events with tracking information" do tracking_info = fedex.track(options.merge(:uuid => uuid)).first expect(tracking_info.events).not_to be_empty end it "fails if using an invalid package type" do fail_options = options fail_options[:package_type] = "UNKNOWN_PACKAGE" expect { fedex.track(options) }.to raise_error end it "allows short hand tracking number queries" do shorthand_options = { :tracking_number => options[:package_id] } tracking_info = fedex.track(shorthand_options).first expect(tracking_info.tracking_number).to eq(options[:package_id]) end it "reports the status of the package" do tracking_info = fedex.track(options.merge(:uuid => uuid)).first expect(tracking_info.status).not_to be_nil end end context "duplicate shipments with same tracking number", :vcr, :focus do let(:options) do { :package_id => "771054010426", :package_type => "TRACKING_NUMBER_OR_DOORTAG", :include_detailed_scans => true } end it "should return tracking information for all shipments associated with tracking number" do tracking_info = fedex.track(options) expect(tracking_info.length).to be > 1 end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fedex_ship-0.1.0 | spec/lib/fedex_ship/track_spec.rb |