Skip to content

Commit 19589b4

Browse files
committed
Fixed Karma unit tests
1 parent cd54ae1 commit 19589b4

File tree

5 files changed

+89
-13
lines changed

5 files changed

+89
-13
lines changed

src/app/app.component.spec.ts

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,41 @@
11
import { TestBed, async } from '@angular/core/testing';
22
import { AppComponent } from './app.component';
3+
import {
4+
RouterTestingModule
5+
} from '@angular/router/testing';
6+
import { Component } from '@angular/core';
7+
38
describe('AppComponent', () => {
49
beforeEach(async(() => {
510
TestBed.configureTestingModule({
611
declarations: [
7-
AppComponent
12+
AppComponent,
13+
MockAppMessagesComponent
814
],
15+
imports: [ RouterTestingModule ]
916
}).compileComponents();
1017
}));
1118
it('should create the app', async(() => {
1219
const fixture = TestBed.createComponent(AppComponent);
1320
const app = fixture.debugElement.componentInstance;
1421
expect(app).toBeTruthy();
1522
}));
16-
it(`should have as title 'app'`, async(() => {
23+
it(`should have as title 'Tour of Heroes'`, async(() => {
1724
const fixture = TestBed.createComponent(AppComponent);
1825
const app = fixture.debugElement.componentInstance;
19-
expect(app.title).toEqual('app');
26+
expect(app.title).toEqual('Tour of Heroes');
2027
}));
2128
it('should render title in a h1 tag', async(() => {
2229
const fixture = TestBed.createComponent(AppComponent);
2330
fixture.detectChanges();
2431
const compiled = fixture.debugElement.nativeElement;
25-
expect(compiled.querySelector('h1').textContent).toContain('Welcome to app!');
32+
expect(compiled.querySelector('h1').textContent).toContain('Tour of Heroes');
2633
}));
2734
});
35+
36+
@Component({
37+
selector: 'app-messages',
38+
template: ''
39+
})
40+
class MockAppMessagesComponent {
41+
}

src/app/dashboard/dashboard.component.spec.ts

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,36 @@
1-
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
1+
import { async, ComponentFixture, TestBed, getTestBed } from '@angular/core/testing';
22

33
import { DashboardComponent } from './dashboard.component';
4+
import { RouterModule } from '@angular/router';
5+
import { Component } from '@angular/core';
6+
import { HeroService } from '../hero.service';
7+
import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
8+
import { MessageService } from '../message.service';
49

510
describe('DashboardComponent', () => {
611
let component: DashboardComponent;
712
let fixture: ComponentFixture<DashboardComponent>;
13+
let httpMock: HttpTestingController;
14+
let injector: TestBed;
815

916
beforeEach(async(() => {
1017
TestBed.configureTestingModule({
11-
declarations: [ DashboardComponent ]
18+
declarations: [
19+
DashboardComponent,
20+
MockAppHeroSearchComponent
21+
],
22+
imports: [
23+
RouterModule,
24+
HttpClientTestingModule
25+
],
26+
providers: [
27+
HeroService,
28+
MessageService
29+
]
1230
})
1331
.compileComponents();
32+
injector = getTestBed();
33+
httpMock = injector.get(HttpTestingController);
1434
}));
1535

1636
beforeEach(() => {
@@ -23,3 +43,9 @@ describe('DashboardComponent', () => {
2343
expect(component).toBeTruthy();
2444
});
2545
});
46+
@Component({
47+
selector: 'app-hero-search',
48+
template: ''
49+
})
50+
class MockAppHeroSearchComponent {
51+
}

src/app/hero-search/hero-search.component.spec.ts

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,32 @@
1-
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
1+
import { async, ComponentFixture, TestBed, getTestBed } from '@angular/core/testing';
2+
import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
23

34
import { HeroSearchComponent } from './hero-search.component';
5+
import { RouterModule } from '@angular/router';
6+
import { HeroService } from '../hero.service';
7+
import { MessageService } from '../message.service';
48

59
describe('HeroSearchComponent', () => {
610
let component: HeroSearchComponent;
711
let fixture: ComponentFixture<HeroSearchComponent>;
12+
let httpMock: HttpTestingController;
13+
let injector: TestBed;
814

915
beforeEach(async(() => {
1016
TestBed.configureTestingModule({
11-
declarations: [ HeroSearchComponent ]
17+
declarations: [HeroSearchComponent],
18+
imports: [
19+
RouterModule,
20+
HttpClientTestingModule
21+
],
22+
providers: [
23+
HeroService,
24+
MessageService
25+
]
1226
})
13-
.compileComponents();
27+
.compileComponents();
28+
injector = getTestBed();
29+
httpMock = injector.get(HttpTestingController);
1430
}));
1531

1632
beforeEach(() => {

src/app/heroes/heroes.component.spec.ts

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,32 @@
1-
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
1+
import { async, ComponentFixture, TestBed, getTestBed } from '@angular/core/testing';
2+
import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
23

34
import { HeroesComponent } from './heroes.component';
5+
import { RouterModule } from '@angular/router';
6+
import { HeroService } from '../hero.service';
7+
import { MessageService } from '../message.service';
48

59
describe('HeroesComponent', () => {
610
let component: HeroesComponent;
711
let fixture: ComponentFixture<HeroesComponent>;
12+
let httpMock: HttpTestingController;
13+
let injector: TestBed;
814

915
beforeEach(async(() => {
1016
TestBed.configureTestingModule({
11-
declarations: [ HeroesComponent ]
17+
declarations: [HeroesComponent],
18+
imports: [
19+
RouterModule,
20+
HttpClientTestingModule
21+
],
22+
providers: [
23+
HeroService,
24+
MessageService
25+
]
1226
})
13-
.compileComponents();
27+
.compileComponents();
28+
injector = getTestBed();
29+
httpMock = injector.get(HttpTestingController);
1430
}));
1531

1632
beforeEach(() => {

src/app/messages/messages.component.spec.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
11
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
22

33
import { MessagesComponent } from './messages.component';
4+
import { MessageService } from '../message.service';
45

56
describe('MessagesComponent', () => {
67
let component: MessagesComponent;
78
let fixture: ComponentFixture<MessagesComponent>;
89

910
beforeEach(async(() => {
1011
TestBed.configureTestingModule({
11-
declarations: [ MessagesComponent ]
12+
declarations: [ MessagesComponent ],
13+
providers: [
14+
MessageService
15+
]
1216
})
1317
.compileComponents();
1418
}));

0 commit comments

Comments
 (0)