@@ -239,6 +239,85 @@ describe('<Users> Current User', function() {
239239 expect ( Backendless . UserService . currentUser ) . to . be . equal ( user )
240240 } )
241241
242+ it ( 'should keep current user token after hard user reload' , async ( ) => {
243+ const objectId = Utils . objectId ( )
244+ const userToken = Utils . uid ( )
245+
246+ const req1 = prepareMockRequest ( { ...getTestUserObject ( ) , objectId, 'user-token' : userToken } )
247+
248+ const user1 = await Backendless . UserService . login ( '[email protected] ' , '123456' ) 249+
250+ expect ( req1 ) . to . deep . include ( {
251+ method : 'POST' ,
252+ path : `${ APP_PATH } /users/login` ,
253+ headers : { 'Content-Type' : 'application/json' } ,
254+ } )
255+
256+ expect ( user1 ) . to . deep . equal ( {
257+ ___class : 'Users' ,
258+ 259+ name : 'Bob Miller' ,
260+ objectId,
261+ password : '123456' ,
262+ 'user-token' : userToken ,
263+ } )
264+
265+ const user2 = await Backendless . UserService . getCurrentUser ( )
266+
267+ expect ( user2 ) . to . deep . equal ( {
268+ ___class : 'Users' ,
269+ 270+ name : 'Bob Miller' ,
271+ objectId,
272+ password : '123456' ,
273+ 'user-token' : userToken ,
274+ } )
275+
276+ const req2 = prepareMockRequest ( true )
277+ const isLoginValid1 = await Backendless . UserService . isValidLogin ( )
278+
279+ expect ( req2 ) . to . deep . include ( {
280+ method : 'GET' ,
281+ path : `${ APP_PATH } /users/isvalidusertoken/${ userToken } ` ,
282+ headers : { 'user-token' : userToken } ,
283+ } )
284+
285+ expect ( isLoginValid1 ) . to . be . equal ( true )
286+
287+ const currentUserRes = { ...user1 }
288+ delete currentUserRes [ 'user-token' ]
289+
290+ const req3 = prepareMockRequest ( currentUserRes )
291+
292+ const user3 = await Backendless . UserService . getCurrentUser ( true )
293+
294+ expect ( req3 ) . to . deep . include ( {
295+ method : 'GET' ,
296+ path : `${ APP_PATH } /data/Users/${ objectId } ` ,
297+ headers : { 'user-token' : userToken } ,
298+ } )
299+
300+ expect ( user3 ) . to . deep . equal ( {
301+ ___class : 'Users' ,
302+ 303+ name : 'Bob Miller' ,
304+ objectId,
305+ password : '123456' ,
306+ 'user-token' : userToken ,
307+ } )
308+
309+ const req4 = prepareMockRequest ( true )
310+ const isLoginValid2 = await Backendless . UserService . isValidLogin ( )
311+
312+ expect ( req4 ) . to . deep . include ( {
313+ method : 'GET' ,
314+ path : `${ APP_PATH } /users/isvalidusertoken/${ userToken } ` ,
315+ headers : { 'user-token' : userToken } ,
316+ } )
317+
318+ expect ( isLoginValid2 ) . to . be . equal ( true )
319+ } )
320+
242321 describe ( 'User Token' , ( ) => {
243322 it ( 'should get current user token' , async ( ) => {
244323 const token1 = 'test-1'
0 commit comments