Files
medusa-store/packages/medusa-react/test/hooks/admin/publishable-api-keys/queries.test.ts
2023-03-03 10:09:16 +01:00

63 lines
1.9 KiB
TypeScript

import { renderHook } from "@testing-library/react-hooks/dom"
import { fixtures } from "../../../../mocks/data"
import {
useAdminPublishableApiKey,
useAdminPublishableApiKeys,
useAdminPublishableApiKeySalesChannels,
} from "../../../../src"
import { createWrapper } from "../../../utils"
describe("useAdminPublishableApiKey hook", () => {
test("returns an publishable api key", async () => {
const publishable_api_key = fixtures.get("publishable_api_key")
const { result, waitFor } = renderHook(
() => useAdminPublishableApiKey(publishable_api_key.id),
{
wrapper: createWrapper(),
}
)
await waitFor(() => result.current.isSuccess)
expect(result.current.response.status).toEqual(200)
expect(result.current.publishable_api_key).toEqual(publishable_api_key)
})
})
describe("useAdminPublishableApiKeys hook", () => {
test("returns a list of publishable api keys", async () => {
const publishable_api_key = fixtures.get("publishable_api_key")
const { result, waitFor } = renderHook(() => useAdminPublishableApiKeys(), {
wrapper: createWrapper(),
})
await waitFor(() => result.current.isSuccess)
expect(result.current.response.status).toEqual(200)
expect(result.current.publishable_api_keys).toEqual(
expect.arrayContaining([publishable_api_key])
)
})
})
describe("useAdminPublishableApiKeySalesChannels hook", () => {
test("returns a list of sales channels of a publishable api key", async () => {
const publishable_api_key = fixtures.get("publishable_api_key")
const { result, waitFor } = renderHook(
() => useAdminPublishableApiKeySalesChannels(publishable_api_key.id),
{
wrapper: createWrapper(),
}
)
await waitFor(() => result.current.isSuccess)
expect(result.current.response.status).toEqual(200)
expect(result.current.sales_channels).toEqual(
fixtures.get("sales_channels")
)
})
})