Fixed login tests

This commit is contained in:
mauriziovitale84
2016-06-13 16:46:29 +01:00
parent 7205b18815
commit 295bcfbb43
4 changed files with 66 additions and 30 deletions

View File

@@ -35,8 +35,10 @@ export module AlfrescoApiMock {
if (loginRequest.userId === 'fake-username' && loginRequest.password === 'fake-password') { if (loginRequest.userId === 'fake-username' && loginRequest.password === 'fake-password') {
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
resolve({ resolve({
entry: {
userId: 'fake-username', userId: 'fake-username',
ticket: 'TICKET_blah' id: 'fake-post-token'
}
}); });
}); });
} else { } else {

View File

@@ -75,7 +75,7 @@ describe('AlfrescoAuthentication', () => {
service.login('fake-username', 'fake-password') service.login('fake-username', 'fake-password')
.subscribe(() => { .subscribe(() => {
expect(service.isLoggedIn()).toBe(true); expect(service.isLoggedIn()).toBe(true);
expect(service.token).toEqual('fake-post-token'); expect(service.getToken()).toEqual('fake-post-token');
expect(localStorage.getItem('token')).toBeDefined(); expect(localStorage.getItem('token')).toBeDefined();
expect(localStorage.getItem('token')).toEqual('fake-post-token'); expect(localStorage.getItem('token')).toEqual('fake-post-token');
} }
@@ -83,13 +83,12 @@ describe('AlfrescoAuthentication', () => {
}); });
it('should return false and token undefined on log out', () => { it('should return false and token undefined on log out', () => {
service.token = 'fake-token';
localStorage.setItem('token', 'fake-token'); localStorage.setItem('token', 'fake-token');
service.logout() service.logout()
.subscribe(() => { .subscribe(() => {
expect(service.isLoggedIn()).toBe(false); expect(service.isLoggedIn()).toBe(false);
expect(service.token).not.toBeDefined(); expect(service.getToken()).toBe(null);
expect(localStorage.getItem('token')).not.toBeDefined(); expect(localStorage.getItem('token')).toBe(null);
} }
); );
}); });

View File

@@ -27,18 +27,11 @@ export class TranslationMock {
public onLangChange: EventEmitter<LangChangeEvent> = new EventEmitter<LangChangeEvent>(); public onLangChange: EventEmitter<LangChangeEvent> = new EventEmitter<LangChangeEvent>();
setDefaultLang() {
console.log('mock');
}
use() {
console.log('mock');
}
public get(key: string|Array<string>, interpolateParams?: Object): Observable<string|any> { public get(key: string|Array<string>, interpolateParams?: Object): Observable<string|any> {
if (!key) {
throw new Error('Parameter "key" required');
}
return Observable.of(key); return Observable.of(key);
} }
addTranslationFolder() {
}
} }

View File

@@ -73,15 +73,13 @@ describe('AlfrescoLogin', () => {
let element = fixture.nativeElement; let element = fixture.nativeElement;
expect(element.querySelector('h2').innerText).toEqual('login');
expect(element.querySelector('[for="username"]')).toBeDefined(); expect(element.querySelector('[for="username"]')).toBeDefined();
expect(element.querySelector('[for="username"]').innerText).toEqual('username'); expect(element.querySelector('[for="username"]').innerText).toEqual('LOGIN.LABEL.USERNAME');
expect(element.querySelector('#username-error').innerText).toEqual('input-required-message'); expect(element.querySelector('#username-error').innerText).toEqual('LOGIN.MESSAGES.USERNAME-REQUIRED');
expect(element.querySelector('[for="password"]')).toBeDefined(); expect(element.querySelector('[for="password"]')).toBeDefined();
expect(element.querySelector('[for="password"]').innerText).toEqual('password'); expect(element.querySelector('[for="password"]').innerText).toEqual('LOGIN.LABEL.PASSWORD');
expect(element.querySelector('#password-required').innerText).toEqual('input-required-message'); expect(element.querySelector('#password-required').innerText).toEqual('LOGIN.MESSAGES.PASSWORD-REQUIRED');
}); });
})); }));
@@ -122,8 +120,8 @@ describe('AlfrescoLogin', () => {
expect(component.formError).toBeDefined(true); expect(component.formError).toBeDefined(true);
expect(component.formError.username).toBeDefined(true); expect(component.formError.username).toBeDefined(true);
expect(component.formError.username).toEqual('input-min-message'); expect(component.formError.username).toEqual('LOGIN.MESSAGES.USERNAME-MIN');
expect(compiled.querySelector('#username-error').innerText).toEqual('input-min-message'); expect(compiled.querySelector('#username-error').innerText).toEqual('LOGIN.MESSAGES.USERNAME-MIN');
}); });
})); }));
@@ -230,7 +228,7 @@ describe('AlfrescoLogin', () => {
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.error).toBe(true); expect(fixture.componentInstance.error).toBe(true);
expect(compiled.querySelector('#login-error').innerText).toEqual('login-error-message'); expect(compiled.querySelector('#login-error').innerText).toEqual('LOGIN.MESSAGES.LOGIN-ERROR');
}); });
})); }));
@@ -258,7 +256,7 @@ describe('AlfrescoLogin', () => {
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.error).toBe(true); expect(fixture.componentInstance.error).toBe(true);
expect(compiled.querySelector('#login-error').innerText).toEqual('login-error-message'); expect(compiled.querySelector('#login-error').innerText).toEqual('LOGIN.MESSAGES.LOGIN-ERROR');
}); });
})); }));
@@ -286,7 +284,7 @@ describe('AlfrescoLogin', () => {
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.error).toBe(true); expect(fixture.componentInstance.error).toBe(true);
expect(compiled.querySelector('#login-error').innerText).toEqual('login-error-message'); expect(compiled.querySelector('#login-error').innerText).toEqual('LOGIN.MESSAGES.LOGIN-ERROR');
}); });
})); }));
@@ -318,7 +316,7 @@ describe('AlfrescoLogin', () => {
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.error).toBe(false); expect(fixture.componentInstance.error).toBe(false);
expect(compiled.querySelector('#login-success').innerHTML).toEqual('login-success-message'); expect(compiled.querySelector('#login-success').innerHTML).toEqual('LOGIN.MESSAGES.LOGIN-SUCCESS');
expect(component.onSuccess.emit).toHaveBeenCalledWith({value: 'Login OK'}); expect(component.onSuccess.emit).toHaveBeenCalledWith({value: 'Login OK'});
}); });
})); }));
@@ -351,9 +349,53 @@ describe('AlfrescoLogin', () => {
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.error).toBe(true); expect(fixture.componentInstance.error).toBe(true);
expect(compiled.querySelector('#login-error').innerText).toEqual('login-error-message'); expect(compiled.querySelector('#login-error').innerText).toEqual('LOGIN.MESSAGES.LOGIN-ERROR');
expect(component.onError.emit).toHaveBeenCalledWith({value: 'Login KO'}); expect(component.onError.emit).toHaveBeenCalledWith({value: 'Login KO'});
}); });
})); }));
it('should render the password in clear when the toggleShowPassword is call',
injectAsync([TestComponentBuilder], (tcb: TestComponentBuilder) => {
return tcb
.createAsync(AlfrescoLoginComponent)
.then((fixture) => {
let component = fixture.componentInstance;
let compiled = fixture.debugElement.nativeElement;
fixture.detectChanges();
component.isPasswordShow = false;
component.toggleShowPassword();
fixture.detectChanges();
expect(component.isPasswordShow).toBe(true);
expect(compiled.querySelector('#password').type).toEqual('text');
});
}));
it('should render the hide password when the password is in clear and the toggleShowPassword is call',
injectAsync([TestComponentBuilder], (tcb: TestComponentBuilder) => {
return tcb
.createAsync(AlfrescoLoginComponent)
.then((fixture) => {
let component = fixture.componentInstance;
let compiled = fixture.debugElement.nativeElement;
fixture.detectChanges();
component.isPasswordShow = true;
component.toggleShowPassword();
fixture.detectChanges();
expect(component.isPasswordShow).toBe(false);
expect(compiled.querySelector('#password').type).toEqual('password');
});
}));
}); });