Fix all broken CIs (#7439)
Fix all the broken CIs :p This includes an ongoing effort to simplify test maintenance by having 1 unique source of truth about metadata and data mocks (that will later be generated from a unique source of seeds: dev = demo = test) Regressions: - Unit line coverage: 60 > 55 - Storybook Pages branch coverage: 40 > 35 We will need to write tests to increase those coverage - RelationFieldDisplay perf: 0.2ms to 0.22ms > We might have a regression here - Removed perf story about RawJSON > We will need to re-add it
This commit is contained in:
committed by
Charles Bochet
parent
bd305c8432
commit
d8c4af9279
@ -2,7 +2,7 @@ import { ReactNode, useEffect, useState } from 'react';
|
||||
import { useSetRecoilState } from 'recoil';
|
||||
|
||||
import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadataItemsState';
|
||||
import { generatedMockObjectMetadataItems } from '~/testing/mock-data/objectMetadataItems';
|
||||
import { generatedMockObjectMetadataItems } from '~/testing/mock-data/generatedMockObjectMetadataItems';
|
||||
|
||||
export const JestObjectMetadataItemSetter = ({
|
||||
children,
|
||||
|
||||
@ -0,0 +1,37 @@
|
||||
import { getRecordNodeFromRecord } from '@/object-record/cache/utils/getRecordNodeFromRecord';
|
||||
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
||||
import { prefillRecord } from '@/object-record/utils/prefillRecord';
|
||||
import { generatedMockObjectMetadataItems } from '~/testing/mock-data/generatedMockObjectMetadataItems';
|
||||
|
||||
export const generateEmptyJestRecordNode = ({
|
||||
objectNameSingular,
|
||||
input,
|
||||
withDepthOneRelation = false,
|
||||
}: {
|
||||
objectNameSingular: string;
|
||||
input: Record<string, unknown>;
|
||||
withDepthOneRelation?: boolean;
|
||||
}) => {
|
||||
const objectMetadataItem = generatedMockObjectMetadataItems.find(
|
||||
(item) => item.nameSingular === objectNameSingular,
|
||||
);
|
||||
|
||||
if (!objectMetadataItem) {
|
||||
throw new Error(
|
||||
`ObjectMetadataItem not found for objectNameSingular: ${objectNameSingular} while generating empty Jest record node`,
|
||||
);
|
||||
}
|
||||
|
||||
const prefilledRecord = prefillRecord({ objectMetadataItem, input });
|
||||
|
||||
return getRecordNodeFromRecord({
|
||||
record: prefilledRecord,
|
||||
objectMetadataItem,
|
||||
objectMetadataItems: generatedMockObjectMetadataItems,
|
||||
recordGqlFields: withDepthOneRelation
|
||||
? generateDepthOneRecordGqlFields({
|
||||
objectMetadataItem,
|
||||
})
|
||||
: undefined,
|
||||
});
|
||||
};
|
||||
@ -5,7 +5,7 @@ import { MutableSnapshot, RecoilRoot } from 'recoil';
|
||||
import { SnackBarProviderScope } from '@/ui/feedback/snack-bar-manager/scopes/SnackBarProviderScope';
|
||||
import { JestObjectMetadataItemSetter } from '~/testing/jest/JestObjectMetadataItemSetter';
|
||||
|
||||
export const getJestHookWrapper = ({
|
||||
export const getJestMetadataAndApolloMocksWrapper = ({
|
||||
apolloMocks,
|
||||
onInitializeRecoilSnapshot,
|
||||
}: {
|
||||
Reference in New Issue
Block a user