X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/bb6014754664dd6365a2b6592e97e23fc36b1f21..f05e6a9cece7e3b118134136ee81bd7477ad10a0:/src/common/api/common-resource-service.test.ts?ds=sidebyside diff --git a/src/common/api/common-resource-service.test.ts b/src/common/api/common-resource-service.test.ts index d28abc45..7093b59c 100644 --- a/src/common/api/common-resource-service.test.ts +++ b/src/common/api/common-resource-service.test.ts @@ -7,19 +7,36 @@ import axios from "axios"; import MockAdapter from "axios-mock-adapter"; describe("CommonResourceService", () => { - - const axiosMock = new MockAdapter(axios); + const axiosInstance = axios.create(); + const axiosMock = new MockAdapter(axiosInstance); beforeEach(() => { axiosMock.reset(); }); + it("#create", async () => { + axiosMock + .onPost("/resource/") + .reply(200, { owner_uuid: "ownerUuidValue" }); + + const commonResourceService = new CommonResourceService(axiosInstance, "resource"); + const resource = await commonResourceService.create({ ownerUuid: "ownerUuidValue" }); + expect(resource).toEqual({ ownerUuid: "ownerUuidValue" }); + }); + + it("#create maps request params to snake case", async () => { + axiosInstance.post = jest.fn(() => Promise.resolve({data: {}})); + const commonResourceService = new CommonResourceService(axiosInstance, "resource"); + await commonResourceService.create({ ownerUuid: "ownerUuidValue" }); + expect(axiosInstance.post).toHaveBeenCalledWith("/resource/", {owner_uuid: "ownerUuidValue"}); + }); + it("#delete", async () => { axiosMock .onDelete("/resource/uuid") .reply(200, { deleted_at: "now" }); - const commonResourceService = new CommonResourceService(axios, "resource"); + const commonResourceService = new CommonResourceService(axiosInstance, "resource"); const resource = await commonResourceService.delete("uuid"); expect(resource).toEqual({ deletedAt: "now" }); }); @@ -29,7 +46,7 @@ describe("CommonResourceService", () => { .onGet("/resource/uuid") .reply(200, { modified_at: "now" }); - const commonResourceService = new CommonResourceService(axios, "resource"); + const commonResourceService = new CommonResourceService(axiosInstance, "resource"); const resource = await commonResourceService.get("uuid"); expect(resource).toEqual({ modifiedAt: "now" }); }); @@ -47,7 +64,7 @@ describe("CommonResourceService", () => { items_available: 20 }); - const commonResourceService = new CommonResourceService(axios, "resource"); + const commonResourceService = new CommonResourceService(axiosInstance, "resource"); const resource = await commonResourceService.list({ limit: 10, offset: 1 }); expect(resource).toEqual({ kind: "kind",