import mocha from 'mocha'; import chai from 'chai'; import { getNode } from './node'; import Iconify from '@iconify/iconify/lib/iconify'; const expect = chai.expect; const selector = 'span.iconify, i.iconify, span.iconify-inline, i.iconify-inline'; // Do not observe document.body! Iconify.stopObserving(document.documentElement); // Create node to observe const observedNode = getNode('iconify-api'); const ignoredNode = getNode('iconify-api'); Iconify.observe(observedNode); observedNode.innerHTML = '

Testing Iconify with API (should render SVG!)

'; ignoredNode.innerHTML = '
This node should not have icons! '; describe('Testing Iconify object with API', () => { it('Rendering icons with API', () => { // Icons should have been replaced by now let list = observedNode.querySelectorAll(selector); expect(list.length).to.be.equal(0); list = observedNode.querySelectorAll('svg.iconify'); expect(list.length).to.be.equal(4); // Icons in ignored node should not have been replaced list = ignoredNode.querySelectorAll(selector); expect(list.length).to.be.equal(1); list = ignoredNode.querySelectorAll('svg.iconify'); expect(list.length).to.be.equal(0); }); });