2
0
mirror of https://github.com/iconify/iconify.git synced 2024-12-14 06:28:24 +00:00
iconify/packages/utils/spec/icon/mergeIconDataSpec.mjs

77 lines
1.2 KiB
JavaScript
Raw Normal View History

2021-09-20 20:53:49 +00:00
import { mergeIconData } from '@iconify/utils/lib/icon/merge';
describe('Testing merging icon data', () => {
it('Test', () => {
// Nothing to merge
const icon = {
body: '<g />',
};
const expected = {
body: '<g />',
};
// Check hint manually: supposed to be IconifyIcon
const result = mergeIconData(icon, {});
expect(result).toEqual(expected);
// TypeScript full icon test
const icon2 = {
body: '<g />',
width: 24,
height: 24,
left: 0,
top: 0,
rotate: 0,
hFlip: false,
vFlip: false,
};
const expected2 = {
body: '<g />',
width: 24,
height: 24,
left: 0,
top: 0,
rotate: 0,
hFlip: false,
vFlip: false,
};
// Check hint manually: supposed to be Required<IconifyIcon>
const result2 = mergeIconData(icon2, {});
expect(result2).toEqual(expected2);
// Copy values
expect(
mergeIconData(
{
body: '<g />',
width: 24,
},
{
height: 32,
}
)
).toEqual({
body: '<g />',
width: 24,
height: 32,
});
// Override values
expect(
mergeIconData(
{
body: '<g />',
width: 24,
height: 24,
},
{
height: 32,
}
)
).toEqual({
body: '<g />',
width: 24,
height: 32,
});
});
});