From ff79add1d59375817a10331a35458cca3c419cfe Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Mon, 27 Nov 2023 19:38:32 +0100 Subject: test: add MSW to intercept GraphQL requests --- tests/msw/schema/index.ts | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 tests/msw/schema/index.ts (limited to 'tests/msw/schema/index.ts') diff --git a/tests/msw/schema/index.ts b/tests/msw/schema/index.ts new file mode 100644 index 0000000..3763616 --- /dev/null +++ b/tests/msw/schema/index.ts @@ -0,0 +1,38 @@ +import { addResolversToSchema } from '@graphql-tools/schema'; +import type { IResolvers } from '@graphql-tools/utils'; +import { buildSchema } from 'graphql'; +import { types } from './types'; + +/* eslint-disable camelcase -- We have no control on WP GraphQL types */ +const resolvers: IResolvers = { + Post_Acfposts_PostsInThematic: { + __resolveType() { + return 'Thematic'; + }, + }, + Post_Acfposts_PostsInTopic: { + __resolveType() { + return 'Topic'; + }, + }, + Thematic_Acfthematics_PostsInThematic: { + __resolveType() { + return 'Post'; + }, + }, + Topic_Acftopics_PostsInTopic: { + __resolveType() { + return 'Post'; + }, + }, +}; +/* eslint-enable camelcase */ + +// cSpell:ignore Acfposts Acfthematics Acftopics camelcase + +const schemaFromTypes = buildSchema(types.join('\n')); + +export const schema = addResolversToSchema({ + schema: schemaFromTypes, + resolvers, +}); -- cgit v1.2.3