Skip to content

Commit

Permalink
SHIBUI-1031 Fixing unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
rmathis committed Dec 12, 2018
1 parent 0798d47 commit 38789fb
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 23 deletions.
77 changes: 60 additions & 17 deletions ui/src/app/user/admin/service/admin.service.spec.ts
Original file line number Diff line number Diff line change
@@ -1,37 +1,80 @@
import { TestBed, async, inject } from '@angular/core/testing';
import { HttpModule } from '@angular/http';
import { AdminService } from './admin.service';
import { HttpTestingController, HttpClientTestingModule } from '@angular/common/http/testing';
import { HttpRequest, HttpClientModule } from '@angular/common/http';
import { Admin } from '../model/admin';

let users = <Admin[]>[
{
resourceId: 'abc',
role: 'SUPER_ADMIN',
email: 'foo@bar.com',
name: {
first: 'Jane',
last: 'Doe'
}
},
{
resourceId: 'def',
role: 'DELEGATED_ADMIN',
email: 'bar@baz.com',
name: {
first: 'John',
last: 'Doe'
}
}
];

describe('Admin Service', () => {
let service: AdminService;
// let service: AdminService;

beforeEach(() => {
TestBed.configureTestingModule({
imports: [HttpModule],
imports: [
HttpClientModule,
HttpClientTestingModule
],
providers: [
AdminService
]
});
service = TestBed.get(AdminService);
// service = TestBed.get(AdminService);
});

it('should instantiate', () => {
expect(service).toBeDefined();
});
describe('query', () => {
it(`should send an expected query request`, async(inject([AdminService, HttpTestingController],
(service: AdminService, backend: HttpTestingController) => {
service.query().subscribe();

describe('query method', () => {
it('should return a list of users', () => {
expect(true).toBe(false);
});
backend.expectOne((req: HttpRequest<any>) => {
return req.url === '/api/users'
&& req.method === 'GET';
}, `GET admin collection`);
}
)));
});
describe('update method', () => {
it('should send an http put request', () => {
expect(true).toBe(false);
});
it(`should send an expected put request`, async(inject([AdminService, HttpTestingController],
(service: AdminService, backend: HttpTestingController) => {
service.update({...users[0]}).subscribe();

backend.expectOne((req: HttpRequest<any>) => {
return req.url === '/api/users/abc'
&& req.method === 'PUT';
}, `PUT admin user`);
}
)));
});
describe('remove method', () => {
it('should send an http delete request', () => {
expect(true).toBe(false);
});
it(`should send an expected delete request`, async(inject([AdminService, HttpTestingController],
(service: AdminService, backend: HttpTestingController) => {
service.remove(users[0].resourceId).subscribe();

backend.expectOne((req: HttpRequest<any>) => {
return req.url === '/api/users/abc'
&& req.method === 'DELETE';
}, `DELETE admin user`);
}
)));
});
});
7 changes: 1 addition & 6 deletions ui/src/app/user/user.component.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
import { Component, ChangeDetectionStrategy } from '@angular/core';
import { Store } from '@ngrx/store';

import * as fromRoot from '../app.reducer';

@Component({
selector: 'user-page',
Expand All @@ -11,7 +8,5 @@ import * as fromRoot from '../app.reducer';
})
export class UserPageComponent {

constructor(
private store: Store<fromRoot.State>
) {}
constructor() {}
}

0 comments on commit 38789fb

Please sign in to comment.