Angular HTTP测试找不到请求

发布于 2025-01-22 22:50:21 字数 1386 浏览 2 评论 0 原文

我正在进行茉莉测试嘲笑http请求,但是我会遇到以下错误:

失败:预期一个匹配条件的匹配请求“匹配URL: https://myurl.net/api/api/v2 /operationalAreas/1/设备?pagenumber = 1& pagesize = 10& needpaging = true& filter = id = id:%3c%3E:6。收到的请求是:get https://myurl.net/api/v2/operationalareas/1/equipments?pagenumber=1&; a>。

如您所见,URL是相同的,但无论如何它都会显示错误。

测试就是这样:

it(
    'should do my test',
    waitForAsync(() => {
      spyOn(service, 'allTypes').and.returnValue(getAllTypesMock);

      service.getFromPage(1).subscribe((page) => {
        expect(page.items.length).toEqual(9);
      });

      service.allTypes().subscribe(() => {
        const req = httpMock.expectOne(
          `${environment.myUrl}api/v2/OperationalAreas/1/Equipments?PageNumber=1&PageSize=10&NeedPaging=TRUE&Filter=id:%3C%3E:6.`
        );
        expect(req.request.method).toBe('GET');
        req.flush(getPage1TenResponseDTO);
      });
    })
  );

有什么想法吗?

I'm doing a Jasmine test mocking a HTTP request, but I'm getting the following error:

Failed: Expected one matching request for criteria "Match URL: https://myurl.net/api/v2/OperationalAreas/1/Equipments?PageNumber=1&PageSize=10&NeedPaging=TRUE&Filter=id:%3C%3E:6.", found none. Requests received are: GET https://myurl.net/api/v2/OperationalAreas/1/Equipments?PageNumber=1&PageSize=10&NeedPaging=TRUE&Filter=id:%3C%3E:6.

As you can see, the URL is identical, but it displays an error anyway.

The test is something like that:

it(
    'should do my test',
    waitForAsync(() => {
      spyOn(service, 'allTypes').and.returnValue(getAllTypesMock);

      service.getFromPage(1).subscribe((page) => {
        expect(page.items.length).toEqual(9);
      });

      service.allTypes().subscribe(() => {
        const req = httpMock.expectOne(
          `${environment.myUrl}api/v2/OperationalAreas/1/Equipments?PageNumber=1&PageSize=10&NeedPaging=TRUE&Filter=id:%3C%3E:6.`
        );
        expect(req.request.method).toBe('GET');
        req.flush(getPage1TenResponseDTO);
      });
    })
  );

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

﹏半生如梦愿梦如真 2025-01-29 22:50:21

实际上,解决方案很简单。

我只是在URL末尾放了一个额外的点(。)。而且,由于错误消息本身有一个时期,这使我感到困惑。

因此,我只是删除了点,一切都很好。

The solution was quite simple, actually.

I just put an extra dot (.) at the end of the url. And, as the error message itself has a period, that confused me.

So I just remove the dot and everything just worked fine.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文