1
0
mirror of https://github.com/webslides/WebSlides.git synced 2025-08-26 22:44:45 +02:00

Testing setup and first DOM tests

This commit is contained in:
Luis
2017-04-18 20:06:38 +02:00
parent 728e665fc9
commit 54e83e3a20
5 changed files with 256 additions and 2 deletions

40
test/dom.js Normal file
View File

@@ -0,0 +1,40 @@
import test from 'ava';
import DOM from '../src/js/utils/dom';
test('DOM.createNode', t => {
const div = DOM.createNode('div', 'my-id');
t.is(div.tagName, 'DIV');
t.is(div.id, 'my-id');
t.is(div.innerHTML, '');
});
test('DOM.once', t => {
const div = DOM.createNode('div');
DOM.once(div, 'click', () => div.classList.toggle('ok'));
div.click();
t.is(div.className, 'ok');
div.click();
t.is(div.className, 'ok');
});
test('DOM.hide', t => {
const div = DOM.createNode('div');
DOM.hide(div);
t.is(div.style.display, 'none');
});
test('DOM.show', t => {
const div = DOM.createNode('div');
DOM.hide(div);
DOM.show(div);
t.is(div.style.display, '');
});
test('DOM.fireEvent', t => {
const div = DOM.createNode('div');
div.addEventListener('toggle-class', () => div.classList.toggle('ok'));
DOM.fireEvent(div, 'toggle-class');
t.is(div.className, 'ok');
DOM.fireEvent(div, 'toggle-class');
t.is(div.className, '');
});

View File

@@ -0,0 +1,2 @@
import browserEnv from 'browser-env';
browserEnv();