2
0
mirror of https://github.com/iconify/iconify.git synced 2024-09-29 13:39:08 +00:00
iconify/components/svelte/tests/offline/20-inline.test.ts

47 lines
1.3 KiB
TypeScript
Raw Normal View History

/**
* @jest-environment jsdom
*/
2021-05-01 20:38:56 +00:00
import { render } from '@testing-library/svelte';
import Icon from '../../offline';
2021-05-01 20:38:56 +00:00
const iconData = {
body: '<path d="M4 19h16v2H4zm5-4h11v2H9zm-5-4h16v2H4zm0-8h16v2H4zm5 4h11v2H9z" fill="currentColor"/>',
2021-05-01 20:38:56 +00:00
width: 24,
height: 24,
};
describe('Inline attribute', () => {
test('boolean true', () => {
const component = render(Icon, { icon: iconData, inline: true });
const node = component.container.querySelector('svg')!;
2021-05-01 20:38:56 +00:00
const style = node.style;
expect(style.verticalAlign).toBe('-0.125em');
2021-05-01 20:38:56 +00:00
});
test('string true', () => {
const component = render(Icon, { icon: iconData, inline: 'true' });
const node = component.container.querySelector('svg')!;
2021-05-01 20:38:56 +00:00
const style = node.style;
expect(style.verticalAlign).toBe('-0.125em');
2021-05-01 20:38:56 +00:00
});
test('false', () => {
const component = render(Icon, { icon: iconData, inline: false });
const node = component.container.querySelector('svg')!;
2021-05-01 20:38:56 +00:00
const style = node.style;
expect(style.verticalAlign).toBe('');
2021-05-01 20:38:56 +00:00
});
test('false string', () => {
// "false" should be ignored
2021-05-01 20:38:56 +00:00
const component = render(Icon, { icon: iconData, inline: 'false' });
const node = component.container.querySelector('svg')!;
2021-05-01 20:38:56 +00:00
const style = node.style;
expect(style.verticalAlign).toBe('');
2021-05-01 20:38:56 +00:00
});
});