@@ -75,7 +75,21 @@ public function testPopProperlyPopsJobOffOfIron()
75
75
$ crypt = m::mock ('Illuminate\Contracts\Encryption\Encrypter ' );
76
76
$ queue ->setEncrypter ($ crypt );
77
77
$ queue ->setContainer (m::mock ('Illuminate\Container\Container ' ));
78
- $ iron ->shouldReceive ('reserveMessage ' )->once ()->with ('default ' )->andReturn ($ job = m::mock ('IronMQ_Message ' ));
78
+ $ iron ->shouldReceive ('reserveMessage ' )->once ()->with ('default ' , 60 )->andReturn ($ job = m::mock ('IronMQ_Message ' ));
79
+ $ job ->body = 'foo ' ;
80
+ $ crypt ->shouldReceive ('decrypt ' )->once ()->with ('foo ' )->andReturn ('foo ' );
81
+ $ result = $ queue ->pop ();
82
+
83
+ $ this ->assertInstanceOf ('Collective\IronQueue\Jobs\IronJob ' , $ result );
84
+ }
85
+
86
+ public function testPopProperlyPopsJobOffOfIronWithCustomTimeout ()
87
+ {
88
+ $ queue = new Collective \IronQueue \IronQueue ($ iron = m::mock ('IronMQ\IronMQ ' ), m::mock ('Illuminate\Http\Request ' ), 'default ' , true , 120 );
89
+ $ crypt = m::mock ('Illuminate\Contracts\Encryption\Encrypter ' );
90
+ $ queue ->setEncrypter ($ crypt );
91
+ $ queue ->setContainer (m::mock ('Illuminate\Container\Container ' ));
92
+ $ iron ->shouldReceive ('reserveMessage ' )->once ()->with ('default ' , 120 )->andReturn ($ job = m::mock ('IronMQ_Message ' ));
79
93
$ job ->body = 'foo ' ;
80
94
$ crypt ->shouldReceive ('decrypt ' )->once ()->with ('foo ' )->andReturn ('foo ' );
81
95
$ result = $ queue ->pop ();
@@ -89,14 +103,31 @@ public function testPopProperlyPopsJobOffOfIronWithoutEncryption()
89
103
$ crypt = m::mock ('Illuminate\Contracts\Encryption\Encrypter ' );
90
104
$ queue ->setEncrypter ($ crypt );
91
105
$ queue ->setContainer (m::mock ('Illuminate\Container\Container ' ));
92
- $ iron ->shouldReceive ('reserveMessage ' )->once ()->with ('default ' )->andReturn ($ job = m::mock ('IronMQ_Message ' ));
106
+ $ iron ->shouldReceive ('reserveMessage ' )->once ()->with ('default ' , 60 )->andReturn ($ job = m::mock ('IronMQ_Message ' ));
93
107
$ job ->body = 'foo ' ;
94
108
$ crypt ->shouldReceive ('decrypt ' )->never ();
95
109
$ result = $ queue ->pop ();
96
110
97
111
$ this ->assertInstanceOf ('Collective\IronQueue\Jobs\IronJob ' , $ result );
98
112
}
99
113
114
+ public function testDeleteJobWithExpiredReservationIdThrowsAnException ()
115
+ {
116
+ $ queue = new Collective \IronQueue \IronQueue ($ iron = m::mock ('IronMQ\IronMQ ' ), m::mock ('Illuminate\Http\Request ' ), 'default ' , false , 30 );
117
+ //$crypt = m::mock('Illuminate\Contracts\Encryption\Encrypter');
118
+ //$queue->setEncrypter($crypt);
119
+ //$queue->setContainer(m::mock('Illuminate\Container\Container'));
120
+ $ iron ->shouldReceive ('deleteMessage ' )->with ('default ' , 1 , 'def456 ' )->andThrow ('IronCore\HttpException ' , '{"msg":"Reservation has timed out"} ' );
121
+
122
+ //$job->body = 'foo';
123
+ //$crypt->shouldReceive('decrypt')->never();
124
+
125
+ // 'def456' refers to a reservation id that expired
126
+ $ queue ->deleteMessage ('default ' , 1 , 'def456 ' );
127
+
128
+ //$this->assertInstanceOf('Collective\IronQueue\Jobs\IronJob', $result);
129
+ }
130
+
100
131
public function testPushedJobsCanBeMarshaled ()
101
132
{
102
133
$ queue = $ this ->getMock ('Collective\IronQueue\IronQueue ' , ['createPushedIronJob ' ], [$ iron = m::mock ('IronMQ\IronMQ ' ), $ request = m::mock ('Illuminate\Http\Request ' ), 'default ' , true ]);
0 commit comments