diff --git a/src/components/InlineLoading/InlineLoading.test.js b/src/components/InlineLoading/InlineLoading.test.js new file mode 100644 index 00000000..12b3b473 --- /dev/null +++ b/src/components/InlineLoading/InlineLoading.test.js @@ -0,0 +1,18 @@ +import { render } from '@testing-library/svelte'; +import Component from './InlineLoading.svelte'; + +test('InlineLoading', () => { + const { container, rerender } = render(Component, { + description: 'description', + iconDescription: 'icon description' + }); + + expect(container.querySelector('.bx--inline-loading')).toHaveTextContent('description'); + expect(container.querySelector('.bx--loading')).toBeInTheDocument(); + + rerender({ props: { status: 'error' } }); + expect(container.querySelector('.bx--inline-loading--error')).toBeInTheDocument(); + + rerender({ props: { status: 'finished' } }); + expect(container.querySelector('.bx--inline-loading__checkmark-container')).toBeInTheDocument(); +}); diff --git a/src/components/Loading/Loading.test.js b/src/components/Loading/Loading.test.js new file mode 100644 index 00000000..72fffb04 --- /dev/null +++ b/src/components/Loading/Loading.test.js @@ -0,0 +1,18 @@ +import { render } from '@testing-library/svelte'; +import Component from './Loading.svelte'; + +test('Loading', () => { + const { container, rerender } = render(Component); + + let element = container.querySelector('.bx--loading-overlay'); + + expect(element).toBeInTheDocument(); + expect(element).not.toHaveClass('bx--loading-overlay--stop'); + expect(element.querySelector('.bx--loading__stroke')).toHaveAttribute('r', '37.5'); + + rerender({ props: { active: false, small: true, withOverlay: false } }); + + element = container.querySelector('.bx--loading'); + expect(element).toHaveClass('bx--loading--small', 'bx--loading--stop'); + expect(element.querySelector('.bx--loading__background')).toHaveAttribute('r', '26.8125'); +});