Skip to content

Commit c93641f

Browse files
committed
Test for defining a DOM element
Breaking test for #145
1 parent 61f1c05 commit c93641f

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

define-test.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ var define = require("can-define");
44
var stache = require("can-stache");
55
var CanList = require("can-list");
66
var canBatch = require("can-event/batch/batch");
7+
var domDispatch = require("can-util/dom/dispatch/dispatch");
78
var isArray = require("can-util/js/is-array/is-array");
89
var each = require("can-util/js/each/each");
910
var types = require("can-types");
@@ -1504,3 +1505,23 @@ QUnit.test('setter with default value causes an infinite loop (#142)', function(
15041505
var a = new A();
15051506
QUnit.equal(a.val, 'hello', 'creating an instance should not cause an inifinte loop');
15061507
});
1508+
1509+
QUnit.test('Works with DOM elements', function(){
1510+
var el = document.createElement('div');
1511+
define(el, { foo: 'string' });
1512+
1513+
var events = 0;
1514+
el.addEventListener('foo', function(){
1515+
events++;
1516+
});
1517+
1518+
el.addEventListener('some-event', function(){
1519+
events++;
1520+
});
1521+
1522+
el.foo = 'bar';
1523+
QUnit.equal(events, 1, 'An event occurred');
1524+
1525+
domDispatch.call(el, "some-event");
1526+
QUnit.equal(events, 2, 'Another event');
1527+
});

0 commit comments

Comments
 (0)