@@ -80,10 +80,7 @@ public function testGenerateToken() {
8080 $ uid = 'user ' ;
8181 $ user = 'User ' ;
8282 $ password = 'passme ' ;
83- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
84- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
85- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
86- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
83+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
8784 $ type = IToken::PERMANENT_TOKEN ;
8885
8986 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
@@ -96,6 +93,22 @@ public function testGenerateToken() {
9693 $ this ->assertSame ($ password , $ this ->tokenProvider ->getPassword ($ actual , $ token ));
9794 }
9895
96+ public function testGenerateTokenInvalidName () {
97+ $ this ->expectException (\OC \Authentication \Exceptions \InvalidTokenException::class);
98+
99+ $ token = 'token ' ;
100+ $ uid = 'user ' ;
101+ $ user = 'User ' ;
102+ $ password = 'passme ' ;
103+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
104+ . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
105+ . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
106+ . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
107+ $ type = IToken::PERMANENT_TOKEN ;
108+
109+ $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
110+ }
111+
99112 public function testUpdateToken () {
100113 $ tk = new PublicKeyToken ();
101114 $ this ->mapper ->expects ($ this ->once ())
@@ -137,10 +150,7 @@ public function testGetPassword() {
137150 $ uid = 'user ' ;
138151 $ user = 'User ' ;
139152 $ password = 'passme ' ;
140- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
141- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
142- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
143- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
153+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
144154 $ type = IToken::PERMANENT_TOKEN ;
145155
146156 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
@@ -167,10 +177,7 @@ public function testGetPasswordInvalidToken() {
167177 $ uid = 'user ' ;
168178 $ user = 'User ' ;
169179 $ password = 'passme ' ;
170- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
171- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
172- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
173- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
180+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
174181 $ type = IToken::PERMANENT_TOKEN ;
175182
176183 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
@@ -183,10 +190,7 @@ public function testSetPassword() {
183190 $ uid = 'user ' ;
184191 $ user = 'User ' ;
185192 $ password = 'passme ' ;
186- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
187- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
188- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
189- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
193+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
190194 $ type = IToken::PERMANENT_TOKEN ;
191195
192196 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
@@ -246,12 +250,12 @@ public function testInvalidateOldTokens() {
246250 ['session_lifetime ' , $ defaultSessionLifetime , 150 ],
247251 ['remember_login_cookie_lifetime ' , $ defaultRememberMeLifetime , 300 ],
248252 ]);
249- $ this ->mapper ->expects ($ this ->at (0 ))
250- ->method ('invalidateOld ' )
251- ->with ($ this ->time - 150 );
252- $ this ->mapper ->expects ($ this ->at (1 ))
253+ $ this ->mapper ->expects ($ this ->exactly (2 ))
253254 ->method ('invalidateOld ' )
254- ->with ($ this ->time - 300 );
255+ ->withConsecutive (
256+ [$ this ->time - 150 ],
257+ [$ this ->time - 300 ]
258+ );
255259
256260 $ this ->tokenProvider ->invalidateOldTokens ();
257261 }
@@ -261,21 +265,18 @@ public function testRenewSessionTokenWithoutPassword() {
261265 $ uid = 'user ' ;
262266 $ user = 'User ' ;
263267 $ password = null ;
264- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
265- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
266- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
267- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
268+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
268269 $ type = IToken::PERMANENT_TOKEN ;
269270
270271 $ oldToken = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
271272
272273 $ this ->mapper
273- ->expects ($ this ->at ( 0 ))
274+ ->expects ($ this ->once ( ))
274275 ->method ('getToken ' )
275276 ->with (hash ('sha512 ' , 'oldId ' . '1f4h9s ' ))
276277 ->willReturn ($ oldToken );
277278 $ this ->mapper
278- ->expects ($ this ->at ( 1 ))
279+ ->expects ($ this ->once ( ))
279280 ->method ('insert ' )
280281 ->with ($ this ->callback (function (PublicKeyToken $ token ) use ($ user , $ uid , $ name ) {
281282 return $ token ->getUID () === $ uid &&
@@ -286,7 +287,7 @@ public function testRenewSessionTokenWithoutPassword() {
286287 $ token ->getPassword () === null ;
287288 }));
288289 $ this ->mapper
289- ->expects ($ this ->at ( 2 ))
290+ ->expects ($ this ->once ( ))
290291 ->method ('delete ' )
291292 ->with ($ this ->callback (function ($ token ) use ($ oldToken ) {
292293 return $ token === $ oldToken ;
@@ -300,21 +301,18 @@ public function testRenewSessionTokenWithPassword() {
300301 $ uid = 'user ' ;
301302 $ user = 'User ' ;
302303 $ password = 'password ' ;
303- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
304- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
305- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
306- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
304+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
307305 $ type = IToken::PERMANENT_TOKEN ;
308306
309307 $ oldToken = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
310308
311309 $ this ->mapper
312- ->expects ($ this ->at ( 0 ))
310+ ->expects ($ this ->once ( ))
313311 ->method ('getToken ' )
314312 ->with (hash ('sha512 ' , 'oldId ' . '1f4h9s ' ))
315313 ->willReturn ($ oldToken );
316314 $ this ->mapper
317- ->expects ($ this ->at ( 1 ))
315+ ->expects ($ this ->once ( ))
318316 ->method ('insert ' )
319317 ->with ($ this ->callback (function (PublicKeyToken $ token ) use ($ user , $ uid , $ name ) {
320318 return $ token ->getUID () === $ uid &&
@@ -326,7 +324,7 @@ public function testRenewSessionTokenWithPassword() {
326324 $ this ->tokenProvider ->getPassword ($ token , 'newId ' ) === 'password ' ;
327325 }));
328326 $ this ->mapper
329- ->expects ($ this ->at ( 2 ))
327+ ->expects ($ this ->once ( ))
330328 ->method ('delete ' )
331329 ->with ($ this ->callback (function ($ token ) use ($ oldToken ) {
332330 return $ token === $ oldToken ;
@@ -370,10 +368,7 @@ public function testGetExpiredToken() {
370368 $ uid = 'user ' ;
371369 $ user = 'User ' ;
372370 $ password = 'passme ' ;
373- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
374- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
375- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
376- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
371+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
377372 $ type = IToken::PERMANENT_TOKEN ;
378373
379374 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
@@ -438,10 +433,7 @@ public function testRotate() {
438433 $ uid = 'user ' ;
439434 $ user = 'User ' ;
440435 $ password = 'password ' ;
441- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
442- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
443- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
444- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
436+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
445437 $ type = IToken::PERMANENT_TOKEN ;
446438
447439 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
@@ -456,10 +448,7 @@ public function testRotateNoPassword() {
456448 $ uid = 'user ' ;
457449 $ user = 'User ' ;
458450 $ password = null ;
459- $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
460- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
461- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 '
462- . 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
451+ $ name = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 ' ;
463452 $ type = IToken::PERMANENT_TOKEN ;
464453
465454 $ actual = $ this ->tokenProvider ->generateToken ($ token , $ uid , $ user , $ password , $ name , $ type , IToken::DO_NOT_REMEMBER );
0 commit comments