diff options
| author | 杨宇千 <crupest@outlook.com> | 2019-03-06 23:29:12 +0800 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-03-06 23:29:12 +0800 | 
| commit | 4b37c96de2c7d3fe046a6f342d2da8ef03d3c807 (patch) | |
| tree | e5618cddfa6f637d7033ae5b52e6da825eb53c63 /Timeline/ClientApp/src/app/user/user-login-success | |
| parent | aca753fba19a221f1aec65030ba4aec4bc34f576 (diff) | |
| parent | b5e01c4571061cbaf5915aa4c0f1b7126ef1ed18 (diff) | |
| download | timeline-4b37c96de2c7d3fe046a6f342d2da8ef03d3c807.tar.gz timeline-4b37c96de2c7d3fe046a6f342d2da8ef03d3c807.tar.bz2 timeline-4b37c96de2c7d3fe046a6f342d2da8ef03d3c807.zip  | |
Merge pull request #3 from crupest/user
Develop user dialog.
Diffstat (limited to 'Timeline/ClientApp/src/app/user/user-login-success')
4 files changed, 73 insertions, 0 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 new file mode 100644 index 00000000..6486142b --- /dev/null +++ b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.css @@ -0,0 +1,7 @@ +.login-success-message { +  color: green; +} + +.username { +  color: blue; +} 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 new file mode 100644 index 00000000..e156f0f8 --- /dev/null +++ b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.html @@ -0,0 +1,5 @@ +<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> 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 new file mode 100644 index 00000000..ba015ae6 --- /dev/null +++ b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.spec.ts @@ -0,0 +1,39 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { UserLoginSuccessComponent } from './user-login-success.component'; +import { By } from '@angular/platform-browser'; + +describe('UserLoginSuccessComponent', () => { +  let component: UserLoginSuccessComponent; +  let fixture: ComponentFixture<UserLoginSuccessComponent>; + +  const mockUserInfo = { +    username: 'crupest', +    roles: ['superman', 'coder'] +  }; + +  beforeEach(async(() => { +    TestBed.configureTestingModule({ +      declarations: [UserLoginSuccessComponent] +    }) +      .compileComponents(); +  })); + +  beforeEach(() => { +    fixture = TestBed.createComponent(UserLoginSuccessComponent); +    component = fixture.componentInstance; +    component.userInfo = mockUserInfo; +    fixture.detectChanges(); +  }); + +  it('should create', () => { +    expect(component).toBeTruthy(); +  }); + +  it('should work well', () => { +    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(', ')); +  }); +}); 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 new file mode 100644 index 00000000..99de5970 --- /dev/null +++ b/Timeline/ClientApp/src/app/user/user-login-success/user-login-success.component.ts @@ -0,0 +1,22 @@ +import { Component, OnInit, Input } from '@angular/core'; +import { UserInfo } from '../user-info'; + +@Component({ +  selector: 'app-user-login-success', +  templateUrl: './user-login-success.component.html', +  styleUrls: ['./user-login-success.component.css'] +}) +export class UserLoginSuccessComponent implements OnInit { + +  @Input() +  displayLoginSuccessMessage = false; + +  @Input() +  userInfo: UserInfo; + +  constructor() { } + +  ngOnInit() { +  } + +}  | 
