FlatObjectMetadataMaps utils coverage (#13695)
# Introduction ```ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/add-flat-field-metadata-in-flat-object-metadata-maps-or-throw.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/delete-field-from-flat-object-metadata-maps-or-throw.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/find-flat-field-metadata-in-flat-object-metadata-maps.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/replace-flat-object-metadata-in-flat-object-metadata-maps-or-throw.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/replace-flat-field-metadata-in-flat-object-metadata-maps-or-throw.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/find-flat-object-metadata-in-flat-object-metadata-maps.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/add-flat-object-metadata-to-flat-object-metadata-maps-or-throw.spec.ts PASS twenty-server src/engine/metadata-modules/flat-object-metadata-maps/utils/__tests__/delete-object-from-flat-object-metadata-maps-or-throw.spec.ts =============================== Coverage summary =============================== Statements : 0.43% ( 159/36564 ) Branches : 0.16% ( 26/16182 ) Functions : 0.27% ( 25/9110 ) Lines : 0.4% ( 142/35006 ) ================================================================================ Test Suites: 8 passed, 8 total Tests: 20 passed, 20 total Snapshots: 9 passed, 9 total Time: 7.639 s ``` ## Tests utils Introduced three tests utils: - expect-flat-field-metadata-to-be-in-flat-object-metadata-maps.util - expect-flat-object-metadata-to-strictly-be-in-flat-object-metadata-maps.util - expect-to-be-defined.util
This commit is contained in:
+42
@@ -0,0 +1,42 @@
|
||||
import { FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type';
|
||||
import { FlatObjectMetadataWithFlatFieldMaps } from 'src/engine/metadata-modules/flat-object-metadata-maps/types/flat-object-metadata-with-flat-field-metadata-maps.type';
|
||||
import { fromObjectMetadataItemWithFieldMapsToFlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/utils/from-object-metadata-item-with-field-maps-to-flat-object-metadata.util';
|
||||
import { ObjectMetadataItemWithFieldMaps } from 'src/engine/metadata-modules/types/object-metadata-item-with-field-maps';
|
||||
import { ObjectMetadataMaps } from 'src/engine/metadata-modules/types/object-metadata-maps';
|
||||
|
||||
export type FromObjectMetadataItemWithFieldMapsToFlatObjectWithFlatFieldMetadataMapsArgs =
|
||||
{
|
||||
objectMetadataItemWithFieldMaps: ObjectMetadataItemWithFieldMaps;
|
||||
objectMetadataMaps: ObjectMetadataMaps;
|
||||
};
|
||||
export const fromObjectMetadataItemWithFieldMapsToFlatObjectWithFlatFieldMetadataMaps =
|
||||
({
|
||||
objectMetadataItemWithFieldMaps,
|
||||
objectMetadataMaps,
|
||||
}: FromObjectMetadataItemWithFieldMapsToFlatObjectWithFlatFieldMetadataMapsArgs): FlatObjectMetadataWithFlatFieldMaps => {
|
||||
const flatObjectMetadata =
|
||||
fromObjectMetadataItemWithFieldMapsToFlatObjectMetadata({
|
||||
objectMetadataItemWithFieldMaps,
|
||||
objectMetadataMaps,
|
||||
});
|
||||
|
||||
const initialAccumulator: Record<string, FlatFieldMetadata> = {};
|
||||
|
||||
const fieldsById = flatObjectMetadata.flatFieldMetadatas.reduce(
|
||||
(acc, flatFieldMetadata) => ({
|
||||
...acc,
|
||||
[flatFieldMetadata.id]: flatFieldMetadata,
|
||||
}),
|
||||
initialAccumulator,
|
||||
);
|
||||
|
||||
const { fieldIdByJoinColumnName, fieldIdByName } =
|
||||
objectMetadataItemWithFieldMaps;
|
||||
|
||||
return {
|
||||
...flatObjectMetadata,
|
||||
fieldsById,
|
||||
fieldIdByJoinColumnName,
|
||||
fieldIdByName,
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user