[CORD-1182] Fixed login error, prevent app to reach dashboard
Change-Id: I7eae22b11820ec0fb43057fddcebc8292871665b
diff --git a/src/app/core/loader/loader.spec.ts b/src/app/core/loader/loader.spec.ts
index 1bcff9c..d4b88dd 100644
--- a/src/app/core/loader/loader.spec.ts
+++ b/src/app/core/loader/loader.spec.ts
@@ -3,6 +3,7 @@
import {xosLoader} from './loader';
let loaded = true;
+let authenticated = true;
const MockConfig = {
lastVisitedUrl: '/test'
@@ -17,6 +18,15 @@
onboard: null
};
+const MockAuth = {
+ isAuthenticated: jasmine.createSpy('isAuthenticated')
+ .and.callFake(() => authenticated)
+};
+
+const MockState = {
+ go: jasmine.createSpy('state.go')
+};
+
describe('The XosLoader component', () => {
beforeEach(() => {
angular
@@ -24,6 +34,8 @@
.value('XosConfig', MockConfig)
.value('XosModelDiscoverer', MockDiscover)
.value('XosOnboarder', MockOnboarder)
+ .value('AuthService', MockAuth)
+ .value('$state', MockState)
.component('xosLoader', xosLoader);
angular.mock.module('loader');
});
@@ -99,6 +111,24 @@
});
});
+ describe('when user is not authenticated', () => {
+
+ beforeEach(() => {
+ loaded = false;
+ authenticated = false;
+ compileElement();
+ isolatedScope.run();
+ });
+
+ it('should redirect to the login page', () => {
+ expect(MockState.go).toHaveBeenCalledWith('xos.login');
+ });
+
+ afterEach(() => {
+ authenticated = true;
+ });
+ });
+
describe('when models are not loaded', () => {
beforeEach(() => {