Files
twenty/front/src/testing/graphqlMocks.ts
T
Lucas Bordeau 5e2673a2a4 Lucas/t 366 on comment drawer when i have comments on the selected (#201)
* Fixed right drawer width and shared in theme

* Added date packages and tooltip

* Added date utils and tests

* Added comment thread components

* Fixed comment chip

* Fix from rebase

* Fix from rebase

* Fix margin right

* Fixed CSS and graphql
2023-06-07 10:48:44 +00:00

115 lines
3.0 KiB
TypeScript

import { graphql } from 'msw';
import { GraphqlQueryCompany } from '@/companies/interfaces/company.interface';
import { GraphqlQueryPerson } from '@/people/interfaces/person.interface';
import { GraphqlQueryUser } from '@/users/interfaces/user.interface';
import {
GetCompanyCommentsCountQuery,
GetPeopleCommentsCountQuery,
} from '../generated/graphql';
import { mockedCompaniesData } from './mock-data/companies';
import { mockedPeopleData } from './mock-data/people';
import { mockedUsersData } from './mock-data/users';
import { filterAndSortData, updateOneFromData } from './mock-data';
export const graphqlMocks = [
graphql.query('GetCompanies', (req, res, ctx) => {
const returnedMockedData = filterAndSortData<GraphqlQueryCompany>(
mockedCompaniesData,
req.variables.where,
req.variables.orderBy,
req.variables.limit,
);
return res(
ctx.data({
companies: returnedMockedData,
}),
);
}),
graphql.query('SearchCompanyQuery', (req, res, ctx) => {
const returnedMockedData = filterAndSortData<GraphqlQueryCompany>(
mockedCompaniesData,
req.variables.where,
req.variables.orderBy,
req.variables.limit,
);
return res(
ctx.data({
searchResults: returnedMockedData,
}),
);
}),
graphql.query('SearchUserQuery', (req, res, ctx) => {
const returnedMockedData = filterAndSortData<GraphqlQueryUser>(
mockedUsersData,
req.variables.where,
req.variables.orderBy,
req.variables.limit,
);
return res(
ctx.data({
searchResults: returnedMockedData,
}),
);
}),
graphql.query('GetCurrentUser', (req, res, ctx) => {
const customWhere = {
...req.variables.where,
id: {
equals: req.variables.uuid,
},
};
const returnedMockedData = filterAndSortData<GraphqlQueryUser>(
mockedUsersData,
customWhere,
req.variables.orderBy,
req.variables.limit,
);
return res(
ctx.data({
users: returnedMockedData,
}),
);
}),
graphql.query('GetPeople', (req, res, ctx) => {
const returnedMockedData = filterAndSortData<GraphqlQueryPerson>(
mockedPeopleData,
req.variables.where,
req.variables.orderBy,
req.variables.limit,
);
return res(
ctx.data({
people: returnedMockedData,
}),
);
}),
graphql.mutation('UpdatePeople', (req, res, ctx) => {
return res(
ctx.data({
updateOnePerson: updateOneFromData(
mockedPeopleData,
req.variables.id,
req.variables,
),
}),
);
}),
graphql.query('GetPeopleCommentsCount', (req, res, ctx) => {
const mockedData: GetPeopleCommentsCountQuery = {
people: [{ commentsCount: 12 }],
};
return res(ctx.data(mockedData));
}),
graphql.query('GetCompanyCommentsCount', (req, res, ctx) => {
const mockedData: GetCompanyCommentsCountQuery = {
companies: [{ commentsCount: 20 }],
};
return res(ctx.data(mockedData));
}),
];