ObjectMetadataServiceV2.updateOne (#13891)
# Introduction Last service to get migrated, `updateOne` object metadata service v2
This commit is contained in:
+63
-34
@@ -139,39 +139,6 @@ exports[`Workspace migration builder field actions test suite It should build an
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder field actions test suite It should build an update_field action 1`] = `
|
||||
[
|
||||
{
|
||||
"fieldMetadataId": Any<String>,
|
||||
"objectMetadataId": Any<String>,
|
||||
"type": "update_field",
|
||||
"updates": [
|
||||
{
|
||||
"from": "Opportunity stage",
|
||||
"property": "description",
|
||||
"to": "new description",
|
||||
},
|
||||
{
|
||||
"from": "IconProgressCheck",
|
||||
"property": "icon",
|
||||
"to": "new icon",
|
||||
},
|
||||
{
|
||||
"from": true,
|
||||
"property": "isActive",
|
||||
"to": false,
|
||||
},
|
||||
{
|
||||
"from": "stage",
|
||||
"property": "name",
|
||||
"to": "new name",
|
||||
},
|
||||
],
|
||||
"workspaceId": Any<String>,
|
||||
},
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder field actions test suite It should build an update_field action for a RELATION field 1`] = `
|
||||
[
|
||||
{
|
||||
@@ -195,6 +162,50 @@ exports[`Workspace migration builder field actions test suite It should build an
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder field actions test suite It should build an update_field action for custom fields 1`] = `
|
||||
[
|
||||
{
|
||||
"fieldMetadataId": Any<String>,
|
||||
"objectMetadataId": Any<String>,
|
||||
"type": "update_field",
|
||||
"updates": [
|
||||
{
|
||||
"from": null,
|
||||
"property": "description",
|
||||
"to": "new description",
|
||||
},
|
||||
{
|
||||
"from": null,
|
||||
"property": "icon",
|
||||
"to": "new icon",
|
||||
},
|
||||
],
|
||||
"workspaceId": Any<String>,
|
||||
},
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder field actions test suite It should build an update_field action for standard field 1`] = `
|
||||
[
|
||||
{
|
||||
"fieldMetadataId": Any<String>,
|
||||
"objectMetadataId": Any<String>,
|
||||
"type": "update_field",
|
||||
"updates": [
|
||||
{
|
||||
"from": null,
|
||||
"property": "standardOverrides",
|
||||
"to": {
|
||||
"description": "new description",
|
||||
"icon": "new icon",
|
||||
},
|
||||
},
|
||||
],
|
||||
"workspaceId": Any<String>,
|
||||
},
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder field actions test suite It should not infer any actions as from and to fields are identical 1`] = `[]`;
|
||||
|
||||
exports[`Workspace migration builder index actions test suite It should build a delete_index action 1`] = `
|
||||
@@ -1633,7 +1644,7 @@ exports[`Workspace migration builder object actions test suite It should build a
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder object actions test suite It should build an update_object action with all object updated fields 1`] = `
|
||||
exports[`Workspace migration builder object actions test suite It should build an update_object for custom object 1`] = `
|
||||
[
|
||||
{
|
||||
"objectMetadataId": Any<String>,
|
||||
@@ -1654,4 +1665,22 @@ exports[`Workspace migration builder object actions test suite It should build a
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder object actions test suite It should build an update_object for standard object 1`] = `
|
||||
[
|
||||
{
|
||||
"objectMetadataId": Any<String>,
|
||||
"type": "update_object",
|
||||
"updates": [
|
||||
{
|
||||
"from": null,
|
||||
"property": "standardOverrides",
|
||||
"to": {
|
||||
"description": "Updated description",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`Workspace migration builder object actions test suite It should not infer any actions as from and to are identical 1`] = `[]`;
|
||||
|
||||
+23
-3
@@ -123,7 +123,7 @@ const basicCrudTestCases: WorkspaceMigrationBuilderTestCase[] = [
|
||||
},
|
||||
},
|
||||
{
|
||||
title: 'It should build an update_field action',
|
||||
title: 'It should build an update_field action for standard field',
|
||||
context: {
|
||||
input: {
|
||||
fromFlatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
@@ -132,9 +132,29 @@ const basicCrudTestCases: WorkspaceMigrationBuilderTestCase[] = [
|
||||
flatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
flatFieldMetadata: getFlatFieldMetadataMock({
|
||||
...OPPORTUNITY_FLAT_FIELDS_MOCK.stage,
|
||||
standardOverrides: {
|
||||
description: 'new description',
|
||||
icon: 'new icon',
|
||||
},
|
||||
}),
|
||||
}),
|
||||
},
|
||||
expectedActionsTypeCounter: {
|
||||
updateField: 1,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
title: 'It should build an update_field action for custom fields',
|
||||
context: {
|
||||
input: {
|
||||
fromFlatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
toFlatObjectMetadataMaps:
|
||||
replaceFlatFieldMetadataInFlatObjectMetadataMapsOrThrow({
|
||||
flatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
flatFieldMetadata: getFlatFieldMetadataMock({
|
||||
...PET_FLAT_FIELDS_MOCK.species,
|
||||
description: 'new description',
|
||||
name: 'new name',
|
||||
isActive: false,
|
||||
icon: 'new icon',
|
||||
}),
|
||||
}),
|
||||
|
||||
+23
-2
@@ -5,6 +5,7 @@ import { deleteObjectFromFlatObjectMetadataMapsOrThrow } from 'src/engine/metada
|
||||
import { replaceFlatObjectMetadataInFlatObjectMetadataMapsOrThrow } from 'src/engine/metadata-modules/flat-object-metadata-maps/utils/replace-flat-object-metadata-in-flat-object-metadata-maps-or-throw.util';
|
||||
import { COMPANY_FLAT_OBJECT_MOCK } from 'src/engine/metadata-modules/flat-object-metadata/__mocks__/company-flat-object.mock';
|
||||
import { getFlatObjectMetadataMock } from 'src/engine/metadata-modules/flat-object-metadata/__mocks__/get-flat-object-metadata.mock';
|
||||
import { OPPORTUNITY_FLAT_OBJECT_MOCK } from 'src/engine/metadata-modules/flat-object-metadata/__mocks__/opportunity-flat-object.mock';
|
||||
import { PET_FLAT_OBJECT_MOCK } from 'src/engine/metadata-modules/flat-object-metadata/__mocks__/pet-flat-object.mock';
|
||||
import { ROCKET_FLAT_OBJECT_MOCK } from 'src/engine/metadata-modules/flat-object-metadata/__mocks__/rocket-flat-object.mock';
|
||||
import { fromFlatObjectMetadatasToFlatObjectMetadataMaps } from 'src/engine/metadata-modules/flat-object-metadata/utils/from-flat-object-metadatas-to-flat-object-metadata-maps.util';
|
||||
@@ -13,8 +14,7 @@ import { type WorkspaceMigrationBuilderTestCase } from 'src/engine/workspace-man
|
||||
export const WORKSPACE_MIGRATION_OBJECT_BUILDER_TEST_CASES: WorkspaceMigrationBuilderTestCase[] =
|
||||
[
|
||||
{
|
||||
title:
|
||||
'It should build an update_object action with all object updated fields',
|
||||
title: 'It should build an update_object for custom object',
|
||||
context: {
|
||||
input: {
|
||||
fromFlatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
@@ -34,6 +34,27 @@ export const WORKSPACE_MIGRATION_OBJECT_BUILDER_TEST_CASES: WorkspaceMigrationBu
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
title: 'It should build an update_object for standard object',
|
||||
context: {
|
||||
input: {
|
||||
fromFlatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
toFlatObjectMetadataMaps:
|
||||
replaceFlatObjectMetadataInFlatObjectMetadataMapsOrThrow({
|
||||
flatObjectMetadataMaps: FLAT_OBJECT_METADATA_MAPS_MOCKS,
|
||||
flatObjectMetadata: getFlatObjectMetadataMock({
|
||||
...OPPORTUNITY_FLAT_OBJECT_MOCK,
|
||||
standardOverrides: {
|
||||
description: 'Updated description',
|
||||
},
|
||||
}),
|
||||
}),
|
||||
},
|
||||
expectedActionsTypeCounter: {
|
||||
updateObject: 1,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
title: 'It should build a create_object action',
|
||||
context: {
|
||||
|
||||
+1
-1
@@ -1,8 +1,8 @@
|
||||
import { type FromTo } from 'twenty-shared/types';
|
||||
|
||||
import { type FieldMetadataEntity } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||
import { type FlatFieldMetadataPropertiesToCompare } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata-properties-to-compare.type';
|
||||
import { type FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type';
|
||||
import { type FlatFieldMetadataPropertiesToCompare } from 'src/engine/metadata-modules/flat-field-metadata/utils/compare-two-flat-field-metadata.util';
|
||||
|
||||
export type CreateFieldAction = {
|
||||
type: 'create_field';
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
import { type FromTo } from 'twenty-shared/types';
|
||||
|
||||
import { type FlatObjectMetadataPropertiesToCompare } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata-properties-to-compare.type';
|
||||
import { type FlatObjectMetadataWithoutFields } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type';
|
||||
import { type FlatObjectMetadataPropertiesToCompare } from 'src/engine/metadata-modules/flat-object-metadata/utils/compare-two-flat-object-metadata.util';
|
||||
import { type ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||
import { type CreateFieldAction } from 'src/engine/workspace-manager/workspace-migration-v2/workspace-migration-builder-v2/types/workspace-migration-field-action-v2';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user