active_shipping 1.6.4 → 1.6.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bf492f5f78fa92510f0f17837a59225eca7a8230
4
- data.tar.gz: d8609c76e64bb66b7ca522eab646f944b4684c90
3
+ metadata.gz: 67c1a999efbdf53ccf0184cb263ae02c952be3ad
4
+ data.tar.gz: a810e0262340b15fec6bafdf157197a3af7a4a7e
5
5
  SHA512:
6
- metadata.gz: 9e31884ad4afb2e2948f6f1558f174b7ca4c09b6428818ad555e3798b02e61321ea9a1de6664d4acc6969f4756c3e5c79e932773ef603b5b412a53e91fe776d5
7
- data.tar.gz: ebe8569df5061fa69e3a4fd36f281ce83c907dd5f8bc5c76a9b06c60c2d07050d21c2e925fd69d7637360edf8de80ee1b931a8df7ebcc9b1ccfbcd18b20e7a1c
6
+ metadata.gz: ff22888d9dcdfaa98693bda3b993a83bb1c2404f7b217e359ba5f97e35bf21b283a8b6bf483b82a9f743aa10c43940de3ba5ae29e86abb905997297103016592
7
+ data.tar.gz: 9d827efa63c84851a042498c57c2ab184807ac34d89deb2d7e822358d977fff9a5c0ac88c0bd97fa5c95f2454af966210ec1c35fb6ef4deb47059510ac070364
@@ -630,6 +630,9 @@ module ActiveShipping
630
630
 
631
631
  shipment_events = shipment_events.sort_by(&:time)
632
632
 
633
+ # USPS defines a delivery attempt with code 55
634
+ attempted_delivery_date = shipment_events.detect{ |shipment_event| shipment_event.type_code=="55" }.try(:time)
635
+
633
636
  if last_shipment = shipment_events.last
634
637
  status = last_shipment.status
635
638
  actual_delivery_date = last_shipment.time if last_shipment.delivered?
@@ -645,6 +648,7 @@ module ActiveShipping
645
648
  :tracking_number => tracking_number,
646
649
  :status => status,
647
650
  :actual_delivery_date => actual_delivery_date,
651
+ :attempted_delivery_date => attempted_delivery_date,
648
652
  :scheduled_delivery_date => scheduled_delivery
649
653
  )
650
654
  end
@@ -29,6 +29,9 @@ module ActiveShipping
29
29
  # @!attribute actual_delivery_date
30
30
  # @return [Date, Time]
31
31
  #
32
+ # @!attribute attempted_delivery_date
33
+ # @return [Date, Time]
34
+ #
32
35
  # @!attribute delivery_signature
33
36
  # @return [String]
34
37
  #
@@ -49,7 +52,7 @@ module ActiveShipping
49
52
  class TrackingResponse < Response
50
53
  attr_reader :carrier,:carrier_name,
51
54
  :status,:status_code, :status_description,
52
- :ship_time, :scheduled_delivery_date, :actual_delivery_date,
55
+ :ship_time, :scheduled_delivery_date, :actual_delivery_date, :attempted_delivery_date,
53
56
  :delivery_signature, :tracking_number, :shipment_events,
54
57
  :shipper_address, :origin, :destination
55
58
 
@@ -63,6 +66,7 @@ module ActiveShipping
63
66
  @ship_time = options[:ship_time]
64
67
  @scheduled_delivery_date = options[:scheduled_delivery_date]
65
68
  @actual_delivery_date = options[:actual_delivery_date]
69
+ @attempted_delivery_date = options[:attempted_delivery_date]
66
70
  @delivery_signature = options[:delivery_signature]
67
71
  @tracking_number = options[:tracking_number]
68
72
  @shipment_events = Array(options[:shipment_events])
@@ -96,5 +100,6 @@ module ActiveShipping
96
100
  alias_method :exception?, :has_exception?
97
101
  alias_method :scheduled_delivery_time, :scheduled_delivery_date
98
102
  alias_method :actual_delivery_time, :actual_delivery_date
103
+ alias_method :attempted_delivery_time, :attempted_delivery_date
99
104
  end
100
105
  end
@@ -1,3 +1,3 @@
1
1
  module ActiveShipping
2
- VERSION = "1.6.4"
2
+ VERSION = "1.6.5"
3
3
  end
@@ -19,6 +19,15 @@ class RemoteUSPSTest < Minitest::Test
19
19
  assert_equal Time.parse('2015-11-30 13:02:00 UTC'), response.actual_delivery_date
20
20
  end
21
21
 
22
+ def test_tracking_with_attempted_delivery
23
+ response = @carrier.find_tracking_info('9405515901606017103876', test: false)
24
+ assert response.success?, response.message
25
+ assert_equal 9,response.shipment_events.size
26
+ assert_equal 'DELIVERED', response.shipment_events.last.message
27
+ assert_equal Time.parse('2015-12-10 14:42:00 UTC'), response.attempted_delivery_date
28
+ assert_equal Time.parse('2015-12-24 10:51:00 UTC'), response.actual_delivery_date
29
+ end
30
+
22
31
  def test_tracking_with_bad_number
23
32
  assert_raises(ResponseError) do
24
33
  @carrier.find_tracking_info('abc123xyz', test: false)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_shipping
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.4
4
+ version: 1.6.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - James MacAulay
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2015-12-21 00:00:00.000000000 Z
14
+ date: 2016-01-08 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: quantified