UNPKG

mercury

Version:

A truly modular frontend framework

42 lines (31 loc) 864 B
'use strict'; var mercury = require('../index.js'); var h = mercury.h; var event = require('synthetic-dom-events'); var document = require('global/document'); var test = require('tape'); test('events happen', function t(assert) { var callCount = 0; var click = mercury.input(); click(function onClick() { callCount++; }); function render(onClick) { return h('button', { 'ev-click': mercury.event(onClick) }, 'Click Me'); } var div = document.createElement('div'); mercury.app(div, mercury.value(click), render, { document: document }); document.body.appendChild(div); // action div.childNodes[0].dispatchEvent( event('click', {bubbles: true}) ); // assert assert.equal(callCount, 1); document.body.removeChild(div); assert.end(); });