diff options
author | crupest <crupest@outlook.com> | 2019-03-11 21:01:28 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2019-03-11 21:01:28 +0800 |
commit | 6e8434fa885bdb7ef9fd0f09a8cd29c0e17cef5b (patch) | |
tree | ee57954f1bbe2c1b944d648b2887fc63a865a289 /Timeline/ClientApp/src/app/user/internal-user-service | |
parent | 6f02dc7094d1304501e7ffd6c39ecf89369202c7 (diff) | |
download | timeline-6e8434fa885bdb7ef9fd0f09a8cd29c0e17cef5b.tar.gz timeline-6e8434fa885bdb7ef9fd0f09a8cd29c0e17cef5b.tar.bz2 timeline-6e8434fa885bdb7ef9fd0f09a8cd29c0e17cef5b.zip |
Use strict check of typescript compiler.
Diffstat (limited to 'Timeline/ClientApp/src/app/user/internal-user-service')
-rw-r--r-- | Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.spec.ts | 4 | ||||
-rw-r--r-- | Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.ts | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.spec.ts b/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.spec.ts index 4db28768..613a8fa6 100644 --- a/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.spec.ts +++ b/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.spec.ts @@ -49,7 +49,7 @@ describe('InternalUserService', () => { const httpController = TestBed.get(HttpTestingController) as HttpTestingController; httpController.expectOne((request: HttpRequest<CreateTokenRequest>) => - request.url === createTokenUrl && + request.url === createTokenUrl && request.body !== null && request.body.username === 'user' && request.body.password === 'user').flush(<CreateTokenResponse>{ token: 'test-token', @@ -73,7 +73,7 @@ describe('InternalUserService', () => { const mockToken = 'mock-token'; const tokenValidateRequestMatcher = (req: HttpRequest<ValidateTokenRequest>) => { - return req.url === validateTokenUrl && req.body.token === mockToken; + return req.url === validateTokenUrl && req.body !== null && req.body.token === mockToken; }; beforeEach(() => { diff --git a/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.ts b/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.ts index 91a67e5b..4767bd16 100644 --- a/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.ts +++ b/Timeline/ClientApp/src/app/user/internal-user-service/internal-user.service.ts @@ -5,6 +5,8 @@ import { Router } from '@angular/router'; import { Observable, of, throwError, BehaviorSubject } from 'rxjs'; import { map, catchError, retry } from 'rxjs/operators'; +import { nullIfUndefined } from '../../utilities/language-untilities'; + import { AlreadyLoginError, BadCredentialsError, BadNetworkError, UnknownError } from './errors'; import { createTokenUrl, validateTokenUrl, CreateTokenRequest, @@ -23,7 +25,7 @@ export type UserLoginState = 'nologin' | 'invalidlogin' | 'success'; }) export class InternalUserService { - private token: string; + private token: string | null = null; private userInfoSubject = new BehaviorSubject<UserInfo | null>(null); get currentUserInfo(): UserInfo | null { @@ -36,7 +38,7 @@ export class InternalUserService { constructor(private httpClient: HttpClient, private router: Router) { } - userRouteNavigate(commands: any[]) { + userRouteNavigate(commands: any[] | null) { this.router.navigate([{ outlets: { user: commands @@ -57,7 +59,7 @@ export class InternalUserService { }), map(result => { if (result.isValid) { - this.userInfoSubject.next(result.userInfo); + this.userInfoSubject.next(nullIfUndefined(result.userInfo)); return <UserLoginState>'success'; } else { this.token = null; |