Marie
2025-01-06 17:57:32 +01:00
committed by GitHub
parent b22a598d7d
commit a9b95bcf03
30 changed files with 503 additions and 328 deletions

View File

@ -1,18 +1,18 @@
import { formatColumnNameFromCompositeFieldAndSubfield } from 'src/engine/twenty-orm/utils/format-column-name-from-composite-field-and-subfield.util';
import { formatColumnNamesFromCompositeFieldAndSubfields } from 'src/engine/twenty-orm/utils/format-column-names-from-composite-field-and-subfield.util';
describe('formatColumnNameFromCompositeFieldAndSubfield', () => {
describe('formatColumnNamesFromCompositeFieldAndSubfields', () => {
it('should return fieldName when subFieldName is not defined', () => {
const result = formatColumnNameFromCompositeFieldAndSubfield('firstName');
const result = formatColumnNamesFromCompositeFieldAndSubfields('firstName');
expect(result).toBe('firstName');
expect(result).toEqual(['firstName']);
});
it('should return concatenated fieldName and capitalized subFieldName when subFieldName is defined', () => {
const result = formatColumnNameFromCompositeFieldAndSubfield(
'user',
const result = formatColumnNamesFromCompositeFieldAndSubfields('user', [
'firstName',
);
'lastName',
]);
expect(result).toBe('userFirstName');
expect(result).toEqual(['userFirstName', 'userLastName']);
});
});

View File

@ -1,13 +0,0 @@
import { capitalize } from 'src/utils/capitalize';
import { isDefined } from 'src/utils/is-defined';
export const formatColumnNameFromCompositeFieldAndSubfield = (
fieldName: string,
subFieldName?: string,
): string => {
if (isDefined(subFieldName)) {
return `${fieldName}${capitalize(subFieldName)}`;
}
return fieldName;
};

View File

@ -0,0 +1,15 @@
import { capitalize } from 'src/utils/capitalize';
import { isDefined } from 'src/utils/is-defined';
export const formatColumnNamesFromCompositeFieldAndSubfields = (
fieldName: string,
subFieldNames?: string[],
): string[] => {
if (isDefined(subFieldNames)) {
return subFieldNames.map(
(subFieldName) => `${fieldName}${capitalize(subFieldName)}`,
);
}
return [fieldName];
};