@@ -82,7 +82,6 @@ public function testItPushesLargePayloadsToADisk()
8282 ->with ([
8383 'QueueUrl ' => '/default ' ,
8484 'MessageBody ' => $ this ->mockedPointerPayload ,
85- 'DelaySeconds ' => 0 ,
8685 ])
8786 ->once ()
8887 ->andReturnSelf ();
@@ -120,7 +119,6 @@ public function testItAlwaysPushesPayloadsToADiskIfAlwaysPushIsEnabled()
120119 ->with ([
121120 'QueueUrl ' => '/default ' ,
122121 'MessageBody ' => $ this ->mockedPointerPayload ,
123- 'DelaySeconds ' => 0 ,
124122 ])
125123 ->once ()
126124 ->andReturnSelf ();
@@ -140,7 +138,7 @@ public function testItAlwaysPushesPayloadsToADiskIfAlwaysPushIsEnabled()
140138 $ sqsDiskQueue ->pushRaw ($ this ->mockedPayload );
141139 }
142140
143- public function testItDelaysAJob ()
141+ public function testItCanDelayAJobWhenPushedToDisk ()
144142 {
145143 $ this ->mockedFilesystemAdapter ->shouldReceive ('disk ' )
146144 ->with ('s3 ' )
@@ -175,6 +173,33 @@ public function testItDelaysAJob()
175173 $ sqsDiskQueue ->later (10 , 'foo ' );
176174 }
177175
176+ public function testItCanDelayAJobWhenNotPushedToDisk ()
177+ {
178+ $ this ->mockedFilesystemAdapter ->shouldReceive ('disk ' )
179+ ->never ();
180+
181+ $ this ->mockedSqsClient ->shouldReceive ('sendMessage ' )
182+ ->with (Mockery::on (function ($ arguments ) {
183+ return $ arguments ['DelaySeconds ' ] === 10 ;
184+ }))
185+ ->once ()
186+ ->andReturnSelf ();
187+
188+ $ this ->mockedSqsClient ->shouldReceive ('get ' )
189+ ->once ();
190+
191+ $ diskOptions = [
192+ 'always_store ' => false ,
193+ 'cleanup ' => true ,
194+ 'disk ' => 's3 ' ,
195+ 'prefix ' => 'prefix ' ,
196+ ];
197+
198+ $ sqsDiskQueue = new SqsDiskQueue ($ this ->mockedSqsClient , 'default ' , $ diskOptions );
199+ $ sqsDiskQueue ->setContainer ($ this ->mockedContainer );
200+ $ sqsDiskQueue ->later (10 , 'foo ' );
201+ }
202+
178203 public function testItCreatesANewSqsDiskJobWhenPopped ()
179204 {
180205 $ this ->mockedSqsClient ->shouldReceive ('receiveMessage ' )
0 commit comments