vanillajs-browser-helpers
Version:
Collection of convenience code snippets (helpers) that aims to make it a little easier to work with vanilla JS in the browser
50 lines (36 loc) • 1.26 kB
text/typescript
import { insertHtml, byId, removeElement, createElement, generateId } from './assets/helpers';
import findUniqueNodeCollection from '../findUniqueNodeCollection';
const testID = generateId('AddClass');
describe('"findUniqueNodeCollection"', () => {
const find = (cn: string) => document.getElementsByClassName(cn);
beforeAll(() => insertHtml(`
<div id="${testID}">
<div class="one item" />
<div class="two item special" />
<div class="three item" />
<div class="four item" />
<div class="five special" />
<div class="six item special" />
</div>
`));
afterAll(() => removeElement(testID));
it('Finds unique element list from given selector', () => {
const nodes = findUniqueNodeCollection('special', find);
expect(nodes.map((n) => n.className)).toEqual([
'two item special',
'five special',
'six item special'
]);
});
it('Finds unique element list from given list of selectors', () => {
const nodes = findUniqueNodeCollection(['item', 'special'], find);
expect(nodes.map((n) => n.className)).toEqual([
'one item',
'two item special',
'three item',
'four item',
'six item special',
'five special'
]);
});
});