diff options
Diffstat (limited to 'src/pybind/mgr/dashboard/frontend/src/app/shared/services/auth-storage.service.spec.ts')
-rw-r--r-- | src/pybind/mgr/dashboard/frontend/src/app/shared/services/auth-storage.service.spec.ts | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/auth-storage.service.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/auth-storage.service.spec.ts new file mode 100644 index 000000000..f202c095f --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/auth-storage.service.spec.ts @@ -0,0 +1,47 @@ +import { AuthStorageService } from './auth-storage.service'; + +describe('AuthStorageService', () => { + let service: AuthStorageService; + const username = 'foobar'; + + beforeEach(() => { + service = new AuthStorageService(); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); + + it('should store username', () => { + service.set(username, ''); + expect(localStorage.getItem('dashboard_username')).toBe(username); + }); + + it('should remove username', () => { + service.set(username, ''); + service.remove(); + expect(localStorage.getItem('dashboard_username')).toBe(null); + }); + + it('should be loggedIn', () => { + service.set(username, ''); + expect(service.isLoggedIn()).toBe(true); + }); + + it('should not be loggedIn', () => { + service.remove(); + expect(service.isLoggedIn()).toBe(false); + }); + + it('should be SSO', () => { + service.set(username, {}, true); + expect(localStorage.getItem('sso')).toBe('true'); + expect(service.isSSO()).toBe(true); + }); + + it('should not be SSO', () => { + service.set(username); + expect(localStorage.getItem('sso')).toBe('false'); + expect(service.isSSO()).toBe(false); + }); +}); |