mirror of
https://github.com/stefanpejcic/openpanel
synced 2025-06-26 18:28:26 +00:00
96 lines
2.7 KiB
TypeScript
96 lines
2.7 KiB
TypeScript
import gql from "graphql-tag";
|
|
import dataProvider from "../../src/index";
|
|
import { createClient, getApiUrl } from "../gqlClient";
|
|
import "./index.mock";
|
|
|
|
describe("with meta.fields", () => {
|
|
describe.each(["hasura-default", "graphql-default"] as const)(
|
|
"custom with %s naming convention",
|
|
(namingConvention) => {
|
|
const apiUrl = getApiUrl(namingConvention);
|
|
const operation =
|
|
namingConvention === "hasura-default"
|
|
? "posts_aggregate"
|
|
: "postsAggregate";
|
|
|
|
it("correct get query response", async () => {
|
|
const response = await dataProvider(createClient(namingConvention), {
|
|
namingConvention,
|
|
}).custom?.({
|
|
url: apiUrl,
|
|
method: "get",
|
|
meta: {
|
|
operation,
|
|
fields: [
|
|
{
|
|
operation: "aggregate",
|
|
fields: ["count"],
|
|
variables: {},
|
|
},
|
|
],
|
|
variables: {},
|
|
},
|
|
});
|
|
|
|
expect(response?.data.aggregate.count).toBe(283);
|
|
});
|
|
},
|
|
);
|
|
});
|
|
|
|
describe("with gql", () => {
|
|
it.each(["gqlQuery", "gqlMutation"] as const)(
|
|
"correct response with hasura-default & %s",
|
|
async (gqlOperation) => {
|
|
const apiUrl = getApiUrl("hasura-default");
|
|
|
|
const response = await dataProvider(createClient("hasura-default"), {
|
|
namingConvention: "hasura-default",
|
|
}).custom?.({
|
|
url: apiUrl,
|
|
method: "get",
|
|
meta: {
|
|
[gqlOperation]: gql`
|
|
query GetPost {
|
|
posts_aggregate {
|
|
aggregate {
|
|
count
|
|
}
|
|
}
|
|
}
|
|
`,
|
|
},
|
|
});
|
|
|
|
expect(response?.data.posts_aggregate.aggregate.count).toBe(318);
|
|
},
|
|
);
|
|
|
|
it.each(["gqlQuery", "gqlMutation"] as const)(
|
|
"correct response with graphql-default & %s",
|
|
async (gqlOperation) => {
|
|
const apiUrl = getApiUrl("graphql-default");
|
|
|
|
const response = await dataProvider(createClient("graphql-default"), {
|
|
namingConvention: "graphql-default",
|
|
}).custom?.({
|
|
url: apiUrl,
|
|
method: "get",
|
|
meta: {
|
|
[gqlOperation]: gql`
|
|
query GetPost {
|
|
postsAggregate {
|
|
aggregate {
|
|
count
|
|
}
|
|
}
|
|
}
|
|
`,
|
|
},
|
|
});
|
|
|
|
expect(response?.data.postsAggregate.aggregate.count).toBe(318);
|
|
},
|
|
);
|
|
});
|