REST API调用的测试顺序-“没有当前规范”

时间:2019-04-03 13:34:11

标签: angular rest testing observable

我正在尝试测试作为REST服务的创建/删除的顺序。下面的示例始终在IDE中传递,但在Karma / Jasmine调试器中给出了错误。

"expect' was used when there was no current spec, 
this could be because an asynchronous test timed out"

每个测试都可以运行。


it("should return the number of deleted items after creation", done => {
  const ex1 = sgformsService.getOrCreate("Endoskopie", 9999, "2019-03-20");
  const ex2 = sgformsService.deleteByParameter(
    "Endoskopie",
    9999,
    "2019-03-20"
  );
  const ex = ex2.pipe(concat(ex1)).subscribe((val: number) => {
    expect(val).toEqual(7);
    done();
  });
});

1 个答案:

答案 0 :(得分:0)

我还没有完全理解如何返回值,并且期望只返回最后一个。这是有效的解决方案:

 it('should return the number of deleted items after creation', done => {
      const ex1 = sgformsService.getOrCreate('Endoskopie', 9999, '2019-03-20')
      const ex2 = sgformsService.deleteByParameter('Endoskopie', 9999, '2019-03-20')
      const ex= ex1.pipe(concat(ex2))
        .subscribe((val: number|SgformsBase[]) => {
          if (typeof(val) === "number") {
            expect(val).toEqual(7)
            done()
          }
      });
  })