UNPKG

fonteva-design-guide

Version:

## Dev, Build and Test

62 lines (47 loc) 1.7 kB
import { createElement } from 'lwc'; import LOADER from 'c/pfmLoader'; describe('c-pfm-loader', () => { afterEach(() => { // The jsdom instance is shared across test cases in a single file so reset the DOM while (document.body.firstChild) { document.body.removeChild(document.body.firstChild); } }); it('start loader', () => { const element = createElement('c-pfm-loader', { is: LOADER }); document.body.appendChild(element); element.start(); // Verify loader started const loader = element.shadowRoot.querySelector('.js-loader'); return Promise.resolve().then(() => { expect(loader).not.toBeNull(); }); }); it('start loader by prop', () => { const element = createElement('c-pfm-loader', { is: LOADER }); document.body.appendChild(element); element.show = true; // Verify loader started const loader = element.shadowRoot.querySelector('.js-loader'); expect(loader).not.toBeNull(); }); it('end loader', done => { const element = createElement('c-pfm-loader', { is: LOADER }); document.body.appendChild(element); element.start(); element.end(); // The class is removed from the pfmLoader after 1 second, so delay the check setTimeout(()=>{ // Verify loader ended const loader = element.shadowRoot.querySelector('.js-loader'); expect(loader).toBeNull(); done(); }, 1500); }); });