@@ -24,13 +24,14 @@ public function setUp()
2424 'sadd ' ,
2525 'srem ' ,
2626 'getPrefix ' ,
27+ 'llen ' ,
2728 'rename ' ,
2829 'sismember ' ,
2930 ))
3031 ->getMock ();
3132 }
3233
33- public function createDataProvider ()
34+ public function pauseDataProvider ()
3435 {
3536 return array (
3637 array (true , true ),
@@ -39,10 +40,10 @@ public function createDataProvider()
3940 }
4041
4142 /**
42- * @dataProvider createDataProvider
43+ * @dataProvider pauseDataProvider
4344 * @param bool $saddSuccess
4445 */
45- public function testCreate ($ saddSuccess , $ returnSuccess )
46+ public function testPause ($ saddSuccess , $ returnSuccess )
4647 {
4748 $ this ->redisMock
4849 ->expects ($ this ->once ())
@@ -54,22 +55,32 @@ public function testCreate($saddSuccess, $returnSuccess)
5455 $ this ->assertEquals ($ returnSuccess , $ pauser ->pause ('upgrade:test ' ));
5556 }
5657
57- public function removeDataProvider ()
58+ public function resumeDataProvider ()
5859 {
5960 return array (
60- array (true , true ),
61- array (false , false ),
61+ array (true , true , true ),
62+ array (true , false , false ),
63+ array (false , true , true ),
64+ array (false , false , true ),
6265 );
6366 }
6467
6568 /**
66- * @dataProvider removeDataProvider
69+ * @dataProvider resumeDataProvider
70+ * @param bool $isPaused
6771 * @param bool $sremSuccess
72+ * @param bool $returnSuccess
6873 */
69- public function testRemove ( $ sremSuccess , $ returnSuccess )
74+ public function testResume ( $ isPaused , $ sremSuccess , $ returnSuccess )
7075 {
7176 $ this ->redisMock
7277 ->expects ($ this ->once ())
78+ ->method ('sismember ' )
79+ ->with ($ this ->equalTo ('pauses ' ))
80+ ->willReturn ($ isPaused );
81+
82+ $ this ->redisMock
83+ ->expects ($ isPaused ? $ this ->once () : $ this ->never ())
7384 ->method ('srem ' )
7485 ->with ($ this ->equalTo ('pauses ' ), $ this ->equalTo ('upgrade:test2 ' ))
7586 ->willReturn ($ sremSuccess );
@@ -81,20 +92,29 @@ public function testRemove($sremSuccess, $returnSuccess)
8192 public function renameDataprovider ()
8293 {
8394 return array (
84- array (true , true ),
85- array (false , false ),
95+ array (1 , true , true ),
96+ array (1 , false , false ),
97+ array (0 , true , true ),
98+ array (0 , false , true ),
8699 );
87100 }
88101
89102 /**
90103 * @dataProvider renameDataProvider
104+ * @param int $queueLength
91105 * @param bool $renameSuccess
92106 * @param bool $expectedResult
93107 */
94- public function testRenameToTemp ($ renameSuccess , $ expectedResult )
108+ public function testRenameToTemp ($ queueLength , $ renameSuccess , $ expectedResult )
95109 {
96110 $ this ->redisMock
97111 ->expects ($ this ->once ())
112+ ->method ('llen ' )
113+ ->with ($ this ->equalTo ('queue:upgrade:test3 ' ))
114+ ->willReturn ($ queueLength );
115+
116+ $ this ->redisMock
117+ ->expects ($ queueLength ? $ this ->once () : $ this ->never ())
98118 ->method ('rename ' )
99119 ->with ($ this ->equalTo ('queue:upgrade:test3 ' ), $ this ->equalTo ('resqueFaker:temp:upgrade:test3 ' ))
100120 ->willReturn ($ renameSuccess );
@@ -105,13 +125,20 @@ public function testRenameToTemp($renameSuccess, $expectedResult)
105125
106126 /**
107127 * @dataProvider renameDataProvider Reuses the renaming provider because the cases are the same
128+ * @param int $queueLength
108129 * @param bool $renameSuccess
109130 * @param bool $expectedResult
110131 */
111- public function testRenameBackFromTemp ($ renameSuccess , $ expectedResult )
132+ public function testRenameBackFromTemp ($ queueLength , $ renameSuccess , $ expectedResult )
112133 {
113134 $ this ->redisMock
114135 ->expects ($ this ->once ())
136+ ->method ('llen ' )
137+ ->with ($ this ->equalTo ('temp:upgrade:test3 ' ))
138+ ->willReturn ($ queueLength );
139+
140+ $ this ->redisMock
141+ ->expects ($ queueLength ? $ this ->once () : $ this ->never ())
115142 ->method ('rename ' )
116143 ->with ($ this ->equalTo ('temp:upgrade:test3 ' ), $ this ->equalTo ('resqueFaker:queue:upgrade:test3 ' ))
117144 ->willReturn ($ renameSuccess );
@@ -120,7 +147,7 @@ public function testRenameBackFromTemp($renameSuccess, $expectedResult)
120147 $ this ->assertEquals ($ expectedResult , $ pauser ->renameBackFromTemp ('upgrade:test3 ' ));
121148 }
122149
123- public function existsDataProvider ()
150+ public function isPausedDataProvider ()
124151 {
125152 return array (
126153 array (true , true ),
@@ -129,11 +156,11 @@ public function existsDataProvider()
129156 }
130157
131158 /**
132- * @dataProvider existsDataProvider
159+ * @dataProvider isPausedDataProvider
133160 * @param bool $existsSuccess
134161 * @param bool $expectedResult
135162 */
136- public function testExists ($ existsSuccess , $ expectedResult )
163+ public function testIsPaused ($ existsSuccess , $ expectedResult )
137164 {
138165 $ this ->redisMock
139166 ->expects ($ this ->once ())
0 commit comments