UNPKG

marko-widgets

Version:

Module to support binding of behavior to rendered UI components rendered on the server or client

35 lines (27 loc) 1.07 kB
var expect = require('chai').expect; module.exports = function(helpers) { var widget = helpers.mount(require('./index'), {}); var received1 = []; var received2 = []; widget.handleTestEvent1 = function() { received1.push({ args: arguments, widget: arguments[arguments.length -1] }); }; widget.handleTestEvent2 = function() { received2.push({ args: arguments, widget: arguments[arguments.length -1] }); }; widget.getWidget('customEvents').emitTestEvent1(); expect(received1.length).to.equal(1); expect(received1[0].args.length).to.equal(3); // ['a', 'b', sourceWidget] expect(received1[0].widget).to.equal(widget.getWidget('customEvents')); require('raptor-pubsub').channel('customEvents-' + widget.id).emit('emitTestEvent2'); expect(received1.length).to.equal(1); expect(received2.length).to.equal(1); expect(received2[0].args.length).to.equal(1); // [sourceWidget] expect(received2[0].widget).to.be.an('object'); };