mirror of https://github.com/abpframework/abp.git
2 changed files with 72 additions and 1 deletions
@ -0,0 +1,71 @@ |
|||||
|
import { SpectatorService, SpyObject, createServiceFactory } from "@ngneat/spectator/jest"; |
||||
|
import { RememberMeService } from "../services/remember-me.service"; |
||||
|
import { AbpLocalStorageService } from "@abp/ng.core"; |
||||
|
|
||||
|
|
||||
|
|
||||
|
describe('RememberMeService', () => { |
||||
|
const key = 'remember_me'; |
||||
|
let spectator: SpectatorService<RememberMeService>; |
||||
|
let rememberMeService: RememberMeService; |
||||
|
let abpLocalStorageService: SpyObject<AbpLocalStorageService>; |
||||
|
|
||||
|
const createService = createServiceFactory({ |
||||
|
service: RememberMeService, |
||||
|
mocks: [AbpLocalStorageService] |
||||
|
}); |
||||
|
|
||||
|
|
||||
|
beforeEach(() => { |
||||
|
spectator = createService(); |
||||
|
rememberMeService = spectator.inject(RememberMeService); |
||||
|
abpLocalStorageService = spectator.inject(AbpLocalStorageService); |
||||
|
}); |
||||
|
|
||||
|
it('should be created', () => { |
||||
|
expect(1).toBe(1); |
||||
|
expect(rememberMeService).toBeTruthy(); |
||||
|
expect(abpLocalStorageService).toBeTruthy(); |
||||
|
}); |
||||
|
|
||||
|
it('should set remember me', () => { |
||||
|
rememberMeService.set(true); |
||||
|
expect(abpLocalStorageService.setItem).toHaveBeenCalledWith(key, 'true'); |
||||
|
expect(abpLocalStorageService.setItem).toHaveBeenCalledTimes(1); |
||||
|
}); |
||||
|
|
||||
|
it('should remove remember me', () => { |
||||
|
rememberMeService.remove(); |
||||
|
expect(abpLocalStorageService.removeItem).toHaveBeenCalledWith(key); |
||||
|
expect(abpLocalStorageService.removeItem).toBeCalledTimes(1); |
||||
|
}); |
||||
|
|
||||
|
it('if notting has ben setted, it should return false value', () => { |
||||
|
expect(rememberMeService.get()).toBe(false); |
||||
|
}); |
||||
|
|
||||
|
it('should return true value', () => { |
||||
|
abpLocalStorageService.getItem.mockReturnValueOnce('true'); |
||||
|
expect(rememberMeService.get()).toBe(true); |
||||
|
}); |
||||
|
|
||||
|
it('should return false value', () => { |
||||
|
abpLocalStorageService.getItem.mockReturnValueOnce('false'); |
||||
|
expect(rememberMeService.get()).toBe(false); |
||||
|
}); |
||||
|
|
||||
|
it('should return true when parsed token is setted to true', () => { |
||||
|
const data = { "remember_me": "True" }; |
||||
|
const base64_encoded = btoa(JSON.stringify(data)); |
||||
|
const tokenWithValueTrue = "random." + base64_encoded + ".random"; |
||||
|
expect(rememberMeService.getFromToken(tokenWithValueTrue)).toBe(true); |
||||
|
}); |
||||
|
|
||||
|
it('should return false when value is not setted(undefined)', () => { |
||||
|
const data = {}; |
||||
|
const base64_encoded = btoa(JSON.stringify(data)); |
||||
|
const tokenWithValueTrue = "random." + base64_encoded + ".random"; |
||||
|
expect(rememberMeService.getFromToken(tokenWithValueTrue)).toBe(false); |
||||
|
}); |
||||
|
|
||||
|
}); |
||||
Loading…
Reference in new issue