diff options
Diffstat (limited to 'Timeline/ClientApp/src/app/user/user-login-success')
4 files changed, 0 insertions, 128 deletions
diff --git a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.css b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.css deleted file mode 100644 index b1101e2a..00000000 --- a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.css +++ /dev/null @@ -1,22 +0,0 @@ -.login-success-message { - color: green; -} - -.username { - color: blue; -} - -:host { - display: flex; - flex-wrap: wrap; -} - -:host p { - margin-top: 0.3em; - margin-bottom: 0.3em; - width: 100%; -} - -.logout-button { - margin-left: auto; -} diff --git a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.html b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.html deleted file mode 100644 index 685f6299..00000000 --- a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.html +++ /dev/null @@ -1,6 +0,0 @@ -<p *ngIf="displayLoginSuccessMessage" class="mat-body login-success-message"> - Login succeeds! -</p> -<p class="mat-body">You have been login as <span class="username">{{ userInfo.username }}</span>.</p> -<p class="mat-body">Your roles are <span class="roles">{{ userInfo.roles.join(', ') }}</span>.</p> -<a mat-flat-button class="logout-button" [routerLink]="['..','logout']">Logout</a> diff --git a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.spec.ts b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.spec.ts deleted file mode 100644 index 3eba2696..00000000 --- a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.spec.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { By } from '@angular/platform-browser'; -import { ActivatedRoute } from '@angular/router'; - -import { RouterLinkStubDirective } from '../../test-utilities/router-link.mock'; -import { MockActivatedRoute } from '../../test-utilities/activated-route.mock'; -import { createMockInternalUserService } from '../internal-user-service/internal-user.service.mock'; - -import { UserLoginSuccessComponent } from './user-login-success.component'; -import { InternalUserService } from '../internal-user-service/internal-user.service'; - - -describe('UserLoginSuccessComponent', () => { - let component: UserLoginSuccessComponent; - let fixture: ComponentFixture<UserLoginSuccessComponent>; - - let mockInternalUserService: jasmine.SpyObj<InternalUserService>; - let mockActivatedRoute: MockActivatedRoute; - - const mockUserInfo = { - username: 'crupest', - roles: ['superman', 'coder'] - }; - - beforeEach(async(() => { - mockInternalUserService = createMockInternalUserService(); - mockActivatedRoute = new MockActivatedRoute(); - - // mock currentUserInfo property. because it only has a getter so cast it to any first. - (<any>mockInternalUserService).currentUserInfo = mockUserInfo; - - TestBed.configureTestingModule({ - declarations: [UserLoginSuccessComponent, RouterLinkStubDirective], - providers: [ - { provide: InternalUserService, useValue: mockInternalUserService }, - { provide: ActivatedRoute, useValue: mockActivatedRoute } - ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(UserLoginSuccessComponent); - component = fixture.componentInstance; - }); - - it('should create', () => { - fixture.detectChanges(); - expect(component).toBeTruthy(); - }); - - it('user info should work well', () => { - fixture.detectChanges(); - - expect((fixture.debugElement.query(By.css('p.login-success-message')))).toBeFalsy(); - - expect((fixture.debugElement.query(By.css('span.username')).nativeElement as HTMLSpanElement).textContent) - .toBe(mockUserInfo.username); - expect((fixture.debugElement.query(By.css('span.roles')).nativeElement as HTMLSpanElement).textContent) - .toBe(mockUserInfo.roles.join(', ')); - }); - - it('login success message should display well', () => { - mockActivatedRoute.pushSnapshotWithParamMap({ fromlogin: 'true' }); - fixture.detectChanges(); - expect((fixture.debugElement.query(By.css('p.login-success-message')))).toBeTruthy(); - }); - - it('logout button should be set well', () => { - fixture.detectChanges(); - const routerLinkDirective: RouterLinkStubDirective = - fixture.debugElement.query(By.css('a')).injector.get(RouterLinkStubDirective); - expect(routerLinkDirective.linkParams).toEqual(['..', 'logout']); - }); -}); diff --git a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.ts b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.ts deleted file mode 100644 index 2ae584d6..00000000 --- a/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ActivatedRoute } from '@angular/router'; - -import { UserInfo } from '../entities'; -import { InternalUserService } from '../internal-user-service/internal-user.service'; -import { throwIfNullOrUndefined } from 'src/app/utilities/language-untilities'; - -@Component({ - selector: 'app-user-login-success', - templateUrl: './user-login-success.component.html', - styleUrls: ['./user-login-success.component.css'] -}) -export class UserLoginSuccessComponent implements OnInit { - - displayLoginSuccessMessage = false; - - userInfo!: UserInfo; - - constructor(private route: ActivatedRoute, private userService: InternalUserService) { } - - ngOnInit() { - this.userInfo = throwIfNullOrUndefined(this.userService.currentUserInfo, () => 'Route error. No login now!'); - this.displayLoginSuccessMessage = this.route.snapshot.paramMap.get('fromlogin') === 'true'; - } -} |