UNPKG

dijit

Version:

Dijit provides a complete collection of user interface controls based on Dojo, giving you the power to create web applications that are highly optimized for usability, performance, internationalization, accessibility, but above all deliver an incredible u

95 lines (81 loc) 2.57 kB
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <title>dijit/registry unit test</title> <script src="boilerplate.js"></script> <script type="text/javascript"> require([ "doh/runner", "dojo/_base/array", "dojo/_base/declare", "dojo/dom", "dojo/parser", "dojo/_base/window", "dijit/_WidgetBase", "dijit/registry", "dojo/domReady!" ], function(doh, array, declare, dom, parser, win, _WidgetBase, registry){ declare("foo", _WidgetBase, { name: "", attr1: 0, attr2: 0 }); declare("bar", _WidgetBase, { name: "", attr1: 0, attr2: 0 }); declare("Baz", _WidgetBase, { name: "", attr1: 1, attr2: 1 }); doh.register("parse", function(){ parser.parse(); }); doh.register("dijit/registry", [ function byId(){ doh.is(registry.byId("three").name, "your"); doh.f(registry.byId("nonexistent")); }, function toArray(){ var wa = registry.toArray(); doh.is(4, wa.length, "length"); var wda = array.map(wa, function(w){ return w.domNode; }); var w = registry.byNode(wda[0]); doh.is(w.declaredClass, "foo"); }, function getEnclosingWidget(){ doh.is(registry.getEnclosingWidget(dom.byId("not-a-widget")), null); doh.is(registry.getEnclosingWidget(dom.byId("three")).name, "your"); doh.is(registry.getEnclosingWidget(dom.byId("three.one")).name, "your"); doh.is(registry.getEnclosingWidget(dom.byId("three.one.one")).name, "your"); }, function findWidgets(){ doh.is(3, registry.findWidgets(win.body()).length); doh.is(1, registry.findWidgets(dom.byId("threeWrapper")).length); }, function destroy(){ registry.byId("two").destroy(); registry.byId("four").destroy(); var names = array.map(registry.toArray(), function(widget){ return widget.name; }); doh.is(names.join(" "), "bob your"); } ]); doh.run(); }); </script> </head> <body> <h1>Dijit/registry Unit Test</h1> <div id="one" data-dojo-type="foo" data-dojo-props='name:"bob", attr1:10, attr2:10'></div> <div id="two" data-dojo-type="foo" data-dojo-props='name:"is", attr1:5, attr2:10'></div> <div id="threeWrapper"> <div id="three" data-dojo-type="bar" data-dojo-props='name:"your", attr1:5, attr2:5'> <div id="three.one"> <div id="three.one.one"></div> <div id="four" data-dojo-type="bar" data-dojo-props='name:"uncle", attr1:10, attr2:5'></div> </div> </div> </div> <div id="not-a-widget"></div> </body> </html>