22
33namespace DominionEnterprises \Mongo ;
44
5+ use MongoDB \BSON \UTCDateTime ;
6+
57/**
68 * @coversDefaultClass \DominionEnterprises\Mongo\Queue
79 * @covers ::<private>
@@ -603,6 +605,26 @@ public function ackSend()
603605 $ this ->assertSame ($ expected , $ actual );
604606 }
605607
608+ /**
609+ * Verify earliestGet with ackSend.
610+ *
611+ * @test
612+ * @covers ::ackSend
613+ *
614+ * @return void
615+ */
616+ public function ackSendWithEarliestGet ()
617+ {
618+ $ message = ['key1 ' => 0 , 'key2 ' => true ];
619+ $ this ->queue ->send ($ message );
620+ $ result = $ this ->queue ->get ([], PHP_INT_MAX , 0 );
621+ $ this ->assertSame ($ message ['key1 ' ], $ result ['key1 ' ]);
622+ $ this ->assertSame ($ message ['key2 ' ], $ result ['key2 ' ]);
623+ $ this ->queue ->ackSend ($ result , ['key1 ' => 1 , 'key2 ' => 2 ], strtotime ('+ 1 day ' ));
624+ $ actual = $ this ->queue ->get ([], PHP_INT_MAX , 0 );
625+ $ this ->assertNull ($ actual );
626+ }
627+
606628 /**
607629 * @test
608630 * @covers ::ackSend
@@ -765,7 +787,7 @@ public function send()
765787 $ expected = [
766788 'payload ' => $ payload ,
767789 'running ' => false ,
768- 'resetTimestamp ' => Queue::MONGO_INT32_MAX ,
790+ 'resetTimestamp ' => ( new UTCDateTime ( Queue::MONGO_INT32_MAX ))-> toDateTime ()-> getTimestamp () ,
769791 'earliestGet ' => 34 ,
770792 'priority ' => 0.8 ,
771793 ];
@@ -823,8 +845,8 @@ public function sendWithHighEarliestGet()
823845 $ expected = [
824846 'payload ' => [],
825847 'running ' => false ,
826- 'resetTimestamp ' => Queue::MONGO_INT32_MAX ,
827- 'earliestGet ' => Queue::MONGO_INT32_MAX ,
848+ 'resetTimestamp ' => ( new UTCDateTime ( Queue::MONGO_INT32_MAX ))-> toDateTime ()-> getTimestamp () ,
849+ 'earliestGet ' => ( new UTCDateTime ( Queue::MONGO_INT32_MAX ))-> toDateTime ()-> getTimestamp () ,
828850 'priority ' => 0.0 ,
829851 ];
830852
@@ -851,7 +873,7 @@ public function sendWithLowEarliestGet()
851873 $ expected = [
852874 'payload ' => [],
853875 'running ' => false ,
854- 'resetTimestamp ' => Queue::MONGO_INT32_MAX ,
876+ 'resetTimestamp ' => ( new UTCDateTime ( Queue::MONGO_INT32_MAX ))-> toDateTime ()-> getTimestamp () ,
855877 'earliestGet ' => 0 ,
856878 'priority ' => 0.0 ,
857879 ];
@@ -889,7 +911,7 @@ public function constructWithCollection()
889911 $ expected = [
890912 'payload ' => $ payload ,
891913 'running ' => false ,
892- 'resetTimestamp ' => Queue::MONGO_INT32_MAX ,
914+ 'resetTimestamp ' => ( new UTCDateTime ( Queue::MONGO_INT32_MAX ))-> toDateTime ()-> getTimestamp () ,
893915 'earliestGet ' => 34 ,
894916 'priority ' => 0.8 ,
895917 ];
0 commit comments