@@ -287,6 +287,45 @@ describe('ParseUser', () => {
287
287
} ) ;
288
288
} ) ;
289
289
290
+ it ( 'can hydrate a user with sessionToken in server environment' , async ( ) => {
291
+ ParseUser . enableUnsafeCurrentUser ( ) ;
292
+ ParseUser . _clearCache ( ) ;
293
+ const user = await ParseUser . hydrate ( {
294
+ objectId : 'uid3' ,
295
+ username : 'username' ,
296
+ sessionToken : '123abc' ,
297
+ } ) ;
298
+ expect ( user . id ) . toBe ( 'uid3' ) ;
299
+ expect ( user . isCurrent ( ) ) . toBe ( true ) ;
300
+ expect ( user . existed ( ) ) . toBe ( true ) ;
301
+ } ) ;
302
+
303
+ it ( 'can hydrate a user with sessionToken in non server environment' , async ( ) => {
304
+ ParseUser . disableUnsafeCurrentUser ( ) ;
305
+ ParseUser . _clearCache ( ) ;
306
+ const user = await ParseUser . hydrate ( {
307
+ objectId : 'uid3' ,
308
+ username : 'username' ,
309
+ sessionToken : '123abc' ,
310
+ } ) ;
311
+ expect ( user . id ) . toBe ( 'uid3' ) ;
312
+ expect ( user . isCurrent ( ) ) . toBe ( false ) ;
313
+ expect ( user . existed ( ) ) . toBe ( true ) ;
314
+ } ) ;
315
+
316
+ it ( 'can hydrate a user without sessionToken' , async ( ) => {
317
+ ParseUser . enableUnsafeCurrentUser ( ) ;
318
+ ParseUser . _clearCache ( ) ;
319
+ await ParseUser . logOut ( ) ;
320
+ const user = await ParseUser . hydrate ( {
321
+ objectId : 'uid3' ,
322
+ username : 'username' ,
323
+ } ) ;
324
+ expect ( user . id ) . toBe ( 'uid3' ) ;
325
+ expect ( user . isCurrent ( ) ) . toBe ( false ) ;
326
+ expect ( user . existed ( ) ) . toBe ( true ) ;
327
+ } ) ;
328
+
290
329
it ( 'can send a password reset request' , ( ) => {
291
330
CoreManager . setRESTController ( {
292
331
request ( method , path , body ) {
0 commit comments