Angular2: Синхронная асинхронность MockBackend

Решил сделать заметку по не очевидному моменту юнит-тестирования Angular2, а именно: когда вы мокаете Http сервис, заменяя XHRBackend на MockBackend:

  TestBed.configureTestingModule({
      imports: [HttpModule],
      providers: [{provide: XHRBackend, useClass: MockBackend}]
  });

а потом с помощью mockBackend подменяете ответ от сервера:

    mockBackend.connections.subscribe((connection: MockConnection) => {
      connection.mockRespond(new Response(new ResponseOptions({body: JSON.stringify(mockUser)})));
    })

subscribe на http Observable становится внезапно синхронным:

console.log(1);
this._http.get('/').subscribe((data) => {
      console.log(2);
    });
console.log(3);

соотвественно выведет: 1 2 3.

Подробно вопрсос освещен на стеке.