如何使用Http模块测试服务发送的Angular 2标头?

时间:2017-02-15 23:53:03

标签: unit-testing angular

在测试发出http GET,POST,PUT等请求的Angular 2服务时,有没有办法测试和验证正在发送的标头?

1 个答案:

答案 0 :(得分:7)

是的!如果在单元测试中使用Angular2 MockBackend模块,则可以订阅连接并检查其中的标题。例如:

var mockBackend = TestBed.get(MockBackend); 
mockBackend.connections.subscribe((connection: MockConnection) => {
      expect(connection.request.headers.get('Content-Type')).toEqu‌al('application/json‌​');         

      let options = new ResponseOptions({
         body: JSON.stringify({ data: 'returned' })
      });
      connection.mockRespond(new Response(options));
 });