Bạn có thể cho tôi biết làm thế nào để kiểm tra HttpInterceptor được cung cấp bởi Angular 4. Tôi đã tạo ra một interceptor theo các ví dụ nhưng không chắc chắn làm thế nào để kiểm tra nó. Dưới đây là đánh chặn của tôi và tôi muốn kiểm tra nếu các tiêu đề tùy chỉnh được thêm vào và khi trạng thái phản hồi là 401 window.location.href được thực hiện.Kiểm thử đơn vị HttpInterceptor từ Angular 4
export class MyInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
const headers = new HttpHeaders();
this.addHeader(headers); // This will add headers
const changedReq = req.clone({ headers: headers });
return next.handle(req)
.catch(err => {
if (err instanceof HttpErrorResponse) {
switch (err.status) {
case 302:
case 401:
window.location.href = "http//google.com";
break;
default:
throw new Error(this.getErrorMessage(err));
}
}
return Observable.throw(err);
});
}
Cảm ơn nhưng tôi không hiểu yourMock là gì trong trường hợp này. Tôi muốn thực hiện cuộc gọi http.get và muốn kiểm tra xem máy đánh chặn đã thêm các tiêu đề và muốn giả lập phản hồi hay không. – Angad
bạn có thể bỏ qua điều đó. nó không cần thiết nếu bạn không chế giễu bất cứ điều gì. –