n8n/packages/nodes-base/nodes/Google/Drive/test/v2/utils.test.ts
2023-06-27 11:51:41 +03:00

126 lines
2.5 KiB
TypeScript

import {
prepareQueryString,
setFileProperties,
setUpdateCommonParams,
} from '../../v2/helpers/utils';
describe('test GoogleDriveV2, prepareQueryString', () => {
it('should return id, name', () => {
const fields = undefined;
const result = prepareQueryString(fields);
expect(result).toEqual('id, name');
});
it('should return *', () => {
const fields = ['*'];
const result = prepareQueryString(fields);
expect(result).toEqual('*');
});
it('should return string joined by ,', () => {
const fields = ['id', 'name', 'mimeType'];
const result = prepareQueryString(fields);
expect(result).toEqual('id, name, mimeType');
});
});
describe('test GoogleDriveV2, setFileProperties', () => {
it('should return empty object', () => {
const body = {};
const options = {};
const result = setFileProperties(body, options);
expect(result).toEqual({});
});
it('should return object with properties', () => {
const body = {};
const options = {
propertiesUi: {
propertyValues: [
{
key: 'propertyKey1',
value: 'propertyValue1',
},
{
key: 'propertyKey2',
value: 'propertyValue2',
},
],
},
};
const result = setFileProperties(body, options);
expect(result).toEqual({
properties: {
propertyKey1: 'propertyValue1',
propertyKey2: 'propertyValue2',
},
});
});
it('should return object with appProperties', () => {
const body = {};
const options = {
appPropertiesUi: {
appPropertyValues: [
{
key: 'appPropertyKey1',
value: 'appPropertyValue1',
},
{
key: 'appPropertyKey2',
value: 'appPropertyValue2',
},
],
},
};
const result = setFileProperties(body, options);
expect(result).toEqual({
appProperties: {
appPropertyKey1: 'appPropertyValue1',
appPropertyKey2: 'appPropertyValue2',
},
});
});
});
describe('test GoogleDriveV2, setUpdateCommonParams', () => {
it('should return empty object', () => {
const qs = {};
const options = {};
const result = setUpdateCommonParams(qs, options);
expect(result).toEqual({});
});
it('should return qs with params', () => {
const options = {
useContentAsIndexableText: true,
keepRevisionForever: true,
ocrLanguage: 'en',
trashed: true,
includePermissionsForView: 'published',
};
const qs = setUpdateCommonParams({}, options);
expect(qs).toEqual({
useContentAsIndexableText: true,
keepRevisionForever: true,
ocrLanguage: 'en',
});
});
});