widget.html revision d3c5729464159cab52ada7ff4b6c26b91bd4dcb4
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai #console .yui3-console-entry {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai padding:2px;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai min-height:0;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai #console .yui3-console-entry-fail .yui3-console-entry-cat {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai background-color:red;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai #console .yui3-console-entry-pass .yui3-console-entry-cat {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai background-color:green;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai #console .yui3-console-entry-perf .yui3-console-entry-cat {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai background-color:blue;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai position:static;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai html, body {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai height:100%;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen DesaiYUI({useBrowserConsole:false}).use('test', 'widget', 'console', function (Y) {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var suite = new Y.Test.Suite("Widget Tests");
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai name : "getSkinName",
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai "testGetSkinNameNotRendered" : function () {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var w = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai "testGetSkinNameFromBB": function () {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var bb = Y.Node.create( '<div class="yui3-skin-foo"><div></div></div>' ),
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai cb = bb.one( 'div' ),
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai boundingBox: bb,
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai contentBox: cb
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai "testGetSkinNameFromBody": function () {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var w = new Y.Widget().render(),
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai body = Y.one( 'body' );
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai body.removeClass( "yui3-skin-sam" );
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai body.addClass( "yui3-skin-sam" );
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai "testGetSkinNameFromAncestor": function () {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var w = new Y.Widget().render( '#testbed' ),
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai body = Y.one( 'body' );
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai body.addClass( "yui3-skin-sam" );
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai name:"destroy",
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai testRenderedDestroy: function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var w = new Y.Widget().render();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai } catch(e) {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai Y.Assert.fail("w.destroy() on a rendered widget threw an exception" + e);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai testUnrenderedDestroy: function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var w = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai } catch(e) {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai Y.Assert.fail("w.destroy() on an unrendered widget threw an exception" + e);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai name:"clone",
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai testWidgetClone : function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a2 = Y.clone(a1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a3 = Y.clone(a2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b2 = Y.clone(b1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b3 = Y.clone(b2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c2 = Y.clone(c1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c3 = Y.clone(c2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai testWidgetHashClone : function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai // When Widget's are properties of an object it seems to break apart
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai // something not passed to the recursive call maybe?
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c = new Y.Widget();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var o2 = Y.clone(o1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var o3 = Y.clone(o2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai testBaseClone : function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a = new Y.Base();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b = new Y.Base();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c = new Y.Base();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai // Base works fine
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a2 = Y.clone(a1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a3 = Y.clone(a2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b2 = Y.clone(b1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b3 = Y.clone(b2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c2 = Y.clone(c1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c3 = Y.clone(c2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai testBaseHashClone : function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var a = new Y.Base();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var b = new Y.Base();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var c = new Y.Base();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var o2 = Y.clone(o1);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var o3 = Y.clone(o2);
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai var console;
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai Y.one("#btnRun").set("disabled", false).on("click", function() {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai if (!console) {
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai console = new Y.Console({
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai id:"console",
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai width:"100%",
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai height:"90%",
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai verbose : false,
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai printTimeout: 0,
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai newestOnTop : false,
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai entryTemplate: '<pre class="{entry_class} {cat_class} {src_class}">'+
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai '<span class="{entry_cat_class}">{label}</span>'+
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai '<span class="{entry_content_class}">{message}</span>'+
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai }).render();
d3c5729464159cab52ada7ff4b6c26b91bd4dcb4Satyen Desai<p><input type="button" value="Run Tests" id="btnRun" disabled=true></p>