import * as React from 'react';
import { Loader, loaderClassName } from 'src/components/Loader/Loader';
import { isConformant } from 'test/specs/commonTests';
import { mountWithProvider } from 'test/utils';
import { act } from 'react-dom/test-utils';
describe('Loader', () => {
isConformant(Loader, { constructorName: 'Loader' });
describe('delay', () => {
it('is "0" by default', () => {
const wrapper = mountWithProvider();
expect(wrapper.find(Loader).prop('delay')).toBe(0);
});
it('renders children only when "delay" is passed', () => {
jest.useFakeTimers();
const selector = `.${loaderClassName}`;
const wrapper = mountWithProvider();
expect(wrapper.find(selector).exists()).toBe(false);
act(jest.runAllTimers);
wrapper.update();
expect(wrapper.find(selector).exists()).toBe(true);
});
});
});