1
角度単位テストをしているときにこのエラーが発生しました。あなたのテストの中にはフルページのリロードを行ったものがあります
警告:「成功しました! Chrome 58.0.3029(Windows 10 0.0.0)エラー 一部のテストでは、ページ全体がリロードされました。 クローム58.0.3029(Windowsの10 0.0.0):1 ERRORの0(0.503秒/ 0秒)
// strategyAdd.component.ts
export class StrategyAdd{
\t strategy = new Strategy();
status:string;
iscookies = ['','Yes','No'];
isuseragents = ['','Yes','No'];
constructor(private strategyService: StrategyTablesService,
\t \t \t \t \t \t private router:Router,
\t \t \t \t \t private location: Location
) { }
onClickCreate(strategy:Strategy):void {
strategy.starttime = this.getDate();
\t this.strategyService.createStrategy(strategy).subscribe((data) => {
\t \t this.status = data.json().status;
\t \t if(this.status=="succeed"){
\t \t \t alert("Add Success!");
\t \t \t location.reload();
\t \t }else{
\t \t \t alert("Add failed!");
\t \t }
\t },
\t error => console.log(error));
}
}
//// strategyAdd.component.spec.ts
class MockStrategyTablesService extends StrategyTablesService{
//noinspection JSAnnotator
createStrategy(strategy:Strategy){
var mockData={
"strategyid" : "12",
"status" : "succeed"
}
return Observable.of({
json:() => mockData
});
}
}
describe('override provide Service',()=>{
let comp;
let strategy = new Strategy();
beforeEach(()=>{
TestBed.configureTestingModule({
imports:[HttpModule,RouterTestingModule],
providers:[
StrategyAdd,
{provide:StrategyTablesService,useClass:MockStrategyTablesService},
//{provide:Router,useClass:RouterStub},
Location,
]
});
});
beforeEach(inject([StrategyAdd],s => {
comp = s;
}));
it('test onClickCreate',async(()=>{
comp.onClickCreate(strategy);
expect(comp.status).toEqual("success");
}));
});