File tree Expand file tree Collapse file tree 3 files changed +21
-2
lines changed
Expand file tree Collapse file tree 3 files changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -176,9 +176,10 @@ public function getMessageId(): ?string
176176
177177 public function getTimestamp (): ?int
178178 {
179- $ value = $ this ->getHeader ( ' timestamp ' );
179+ $ value = $ this ->getAttribute ( ' SentTimestamp ' );
180180
181- return null === $ value ? null : (int ) $ value ;
181+ // SQS SentTimestamp is milliseconds since epoch.
182+ return null === $ value ? null : (int ) $ intdiv ($ value , 1000 );
182183 }
183184
184185 public function setTimestamp (?int $ timestamp = null ): void
Original file line number Diff line number Diff line change @@ -341,6 +341,7 @@ public function testShouldReceiveMessage()
341341 'ApproximateReceiveCount ' => '3 ' ,
342342 'SentTimestamp ' => '1560512260079 ' ,
343343 ], $ result ->getAttributes ());
344+ $ this ->assertSame (1560512260 , $ result ->getTimestamp ());
344345 $ this ->assertTrue ($ result ->isRedelivered ());
345346 $ this ->assertEquals ('The Receipt ' , $ result ->getReceiptHandle ());
346347 $ this ->assertEquals ('theMessageId ' , $ result ->getMessageId ());
Original file line number Diff line number Diff line change @@ -52,6 +52,23 @@ public function testShouldSetTimestampAsHeader()
5252 $ this ->assertSame (['timestamp ' => 12345 ], $ message ->getHeaders ());
5353 }
5454
55+ public function testShouldGetTimestampFromSentTimestampAttribute ()
56+ {
57+ $ message = new SqsMessage ();
58+ $ message ->setAttributes ([
59+ 'SentTimestamp ' => '1560512260079 ' ,
60+ ]);
61+
62+ $ this ->assertSame (1560512260 , $ message ->getTimestamp ());
63+ }
64+
65+ public function testShouldReturnNullTimestampWhenSentTimestampAttributeIsMissing ()
66+ {
67+ $ message = new SqsMessage ();
68+
69+ $ this ->assertNull ($ message ->getTimestamp ());
70+ }
71+
5572 public function testShouldSetReplyToAsHeader ()
5673 {
5774 $ message = new SqsMessage ();
You can’t perform that action at this time.
0 commit comments