mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-06 16:03:52 +00:00
73 lines
1.5 KiB
TypeScript
73 lines
1.5 KiB
TypeScript
import { makeString } from 'ontime-utils';
|
|
|
|
import { isEmptyObject, removeUndefined } from '../parserUtils.js';
|
|
|
|
describe('isEmptyObject()', () => {
|
|
test('finds an empty object', () => {
|
|
const isEmpty = isEmptyObject({});
|
|
expect(isEmpty).toBe(true);
|
|
});
|
|
test('resolves an object with methods', () => {
|
|
const isEmpty = isEmptyObject({ test: 'yes' });
|
|
expect(isEmpty).toBe(false);
|
|
});
|
|
});
|
|
|
|
describe('removeUndefined()', () => {
|
|
test('it removes undefined keys from object', () => {
|
|
const obj = {
|
|
first: 'yes',
|
|
second: undefined,
|
|
third: 'yes',
|
|
};
|
|
expect(removeUndefined(obj)).toStrictEqual({
|
|
first: 'yes',
|
|
third: 'yes',
|
|
});
|
|
});
|
|
test('it handles falsy values object', () => {
|
|
const obj = {
|
|
first: '',
|
|
second: 0,
|
|
third: 'null',
|
|
};
|
|
expect(removeUndefined(obj)).toStrictEqual(obj);
|
|
});
|
|
});
|
|
|
|
describe('makeString()', () => {
|
|
it('converts variables to string', () => {
|
|
const cases = [
|
|
{
|
|
val: 2,
|
|
expected: '2',
|
|
},
|
|
{
|
|
val: 2.22222222,
|
|
expected: '2.22222222',
|
|
},
|
|
{
|
|
val: ['testing'],
|
|
expected: 'testing',
|
|
},
|
|
{
|
|
val: ' testing ',
|
|
expected: 'testing',
|
|
},
|
|
{
|
|
val: { doing: 'testing' },
|
|
expected: 'fallback',
|
|
},
|
|
{
|
|
val: undefined,
|
|
expected: 'fallback',
|
|
},
|
|
];
|
|
|
|
cases.forEach(({ val, expected }) => {
|
|
const converted = makeString(val, 'fallback');
|
|
expect(converted).toBe(expected);
|
|
});
|
|
});
|
|
});
|