]> source.dussan.org Git - jquery-ui.git/commitdiff
accordion unit tests: split tests into individual files
authorRichard Worth <rdworth@gmail.com>
Tue, 3 Feb 2009 08:23:48 +0000 (08:23 +0000)
committerRichard Worth <rdworth@gmail.com>
Tue, 3 Feb 2009 08:23:48 +0000 (08:23 +0000)
tests/unit/accordion/accordion.html
tests/unit/accordion/accordion.js [deleted file]
tests/unit/accordion/accordion_core.js
tests/unit/accordion/accordion_defaults.js
tests/unit/accordion/accordion_events.js
tests/unit/accordion/accordion_methods.js
tests/unit/accordion/accordion_options.js
tests/unit/accordion/accordion_tickets.js

index 3bd3ff17933e1b57fb15da50c1857939f076799f..f0a3772afe81f18003766b02dfa43c18804168f9 100644 (file)
        <script type="text/javascript" src="../../../external/qunit/testrunner.js"></script>
        <script type="text/javascript" src="../../../external/simulate/jquery.simulate.js"></script>
 
-       <script type="text/javascript" src="accordion.js"></script>
+       <script type="text/javascript" src="accordion_core.js"></script>
+       <script type="text/javascript" src="accordion_defaults.js"></script>
+       <script type="text/javascript" src="accordion_events.js"></script>
+       <script type="text/javascript" src="accordion_methods.js"></script>
+       <script type="text/javascript" src="accordion_options.js"></script>
+       <script type="text/javascript" src="accordion_tickets.js"></script>
 </head>
 <body>
 
diff --git a/tests/unit/accordion/accordion.js b/tests/unit/accordion/accordion.js
deleted file mode 100644 (file)
index 5fa7845..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- * accordion unit tests
- */
-(function($) {
-
-module("accordion");
-
-jQuery.ui.accordion.defaults.animated = false;
-
-function state(accordion) {
-       var args = $.makeArray(arguments).slice(1);
-       $.each(args, function(i, n) {
-               equals(accordion.find(".ui-accordion-content").eq(i).is(":visible"), n);
-       });
-}
-
-$.fn.triggerEvent = function(type, target) {
-       return this.triggerHandler(type, [jQuery.event.fix({ type: type, target: target })]);
-};
-
-test("basics", function() {
-       state($('#list1').accordion(), 1, 0, 0);
-});
-
-test("autoHeight", function() {
-       $('#navigation').accordion({ autoHeight: false });
-       equals( $('#navigation > li:eq(0) > ul').height(), 80 );
-       equals( $('#navigation > li:eq(1) > ul').height(), 112 );
-       equals( $('#navigation > li:eq(2) > ul').height(), 48 );
-       $('#navigation').accordion("destroy").accordion({ autoHeight: true });
-       equals( $('#navigation > li:eq(0) > ul').height(), 112 );
-       equals( $('#navigation > li:eq(1) > ul').height(), 112 );
-       equals( $('#navigation > li:eq(2) > ul').height(), 112 );
-});
-
-test("activate, numeric", function() {
-       var ac = $('#list1').accordion({ active: 1 });
-       state(ac, 0, 1, 0);
-       ac.accordion("activate", 2);
-       state(ac, 0, 0, 1);
-       ac.accordion("activate", 0);
-       state(ac, 1, 0, 0);
-       ac.accordion("activate", 1);
-       state(ac, 0, 1, 0);
-       ac.accordion("activate", 2);
-       state(ac, 0, 0, 1);
-       ac.accordion("activate", -1);
-       state(ac, 0, 0, 1);
-});
-
-test("activate, boolean and numeric, collapsible:true", function() {
-       var ac = $('#list1').accordion({collapsible: true}).accordion("activate", 2);
-       state(ac, 0, 0, 1);
-       ok("x", "----");
-       ac.accordion("activate", 0);
-       state(ac, 1, 0, 0);
-       ok("x", "----");
-       ac.accordion("activate", -1);
-       state(ac, 0, 0, 0);
-});
-
-test("activate, boolean, collapsible:false", function() {
-       var ac = $('#list1').accordion().accordion("activate", 2);
-       state(ac, 0, 0, 1);
-       ac.accordion("activate", -1);
-       state(ac, 0, 0, 1);
-});
-
-test("activate, string expression", function() {
-       var ac = $('#list1').accordion({ active: "a:last" });
-       state(ac, 0, 0, 1);
-       ac.accordion("activate", ":first");
-       state(ac, 1, 0, 0);
-       ac.accordion("activate", ":eq(1)");
-       state(ac, 0, 1, 0);
-       ac.accordion("activate", ":last");
-       state(ac, 0, 0, 1);
-});
-
-test("activate, jQuery or DOM element", function() {
-       var ac = $('#list1').accordion({ active: $("#list1 a:last") });
-       state(ac, 0, 0, 1);
-       ac.accordion("activate", $("#list1 a:first"));
-       state(ac, 1, 0, 0);
-       ac.accordion("activate", $("#list1 a")[1]);
-       state(ac, 0, 1, 0);
-});
-
-function state2(accordion) {
-       var args = $.makeArray(arguments).slice(1);
-       $.each(args, function(i, n) {
-               equals(accordion.find("div").eq(i).is(":visible"), n);
-       });
-}
-
-test("handle click on header-descendant", function() {
-       var ac = $('#navigation').accordion({ autoHeight: false });
-       ac.triggerEvent("click", $('#navigation span:contains(Bass)')[0]);
-       state2(ac, 0, 1, 0);
-});
-
-test("active:false", function() {
-       $("#list1").accordion({
-               active: false,
-               collapsible: true
-       });
-       equals( $("#list1 a.selected").size(), 0, "no headers selected" );
-});
-
-test("accordionchange event, open closed and close again", function() {
-       expect(8);
-       $("#list1").accordion({
-               active: false,
-               collapsible: true
-       })
-       .one("accordionchange", function(event, ui) {
-               equals( ui.oldHeader.size(), 0 );
-               equals( ui.oldContent.size(), 0 );
-               equals( ui.newHeader.size(), 1 );
-               equals( ui.newContent.size(), 1 );
-       })
-       .accordion("activate", 0)
-       .one("accordionchange", function(event, ui) {
-               equals( ui.oldHeader.size(), 1 );
-               equals( ui.oldContent.size(), 1 );
-               equals( ui.newHeader.size(), 0 );
-               equals( ui.newContent.size(), 0 );
-       })
-       .accordion("activate", 0);
-});
-
-test("accessibility", function () {
-       expect(9);
-       var ac = $('#list1').accordion().accordion("activate", 1);
-       var headers = $(".ui-accordion-header");
-
-       equals( headers.eq(1).attr("tabindex"), "0", "active header should have tabindex=0");
-       equals( headers.eq(0).attr("tabindex"), "-1", "inactive header should have tabindex=-1");
-       equals( ac.attr("role"), "tablist", "main role");
-       equals( headers.attr("role"), "tab", "tab roles");
-       equals( headers.next().attr("role"), "tabpanel", "tabpanel roles");
-       equals( headers.eq(1).attr("aria-expanded"), "true", "active tab has aria-expanded");
-       equals( headers.eq(0).attr("aria-expanded"), "false", "inactive tab has aria-expanded");
-       ac.accordion("activate", 0);
-       equals( headers.eq(0).attr("aria-expanded"), "true", "newly active tab has aria-expanded");
-       equals( headers.eq(1).attr("aria-expanded"), "false", "newly inactive tab has aria-expanded");
-});
-
-
-})(jQuery);
index eb74d1cefb9d88a04e9d52cd44e568c8469ea9ac..5248420379e35142228bd80ce2a0e53b4bcc7f10 100644 (file)
@@ -1,12 +1,52 @@
 /*
  * accordion_core.js
  */
+
+jQuery.ui.accordion.defaults.animated = false;
+
+function state(accordion) {
+       var args = $.makeArray(arguments).slice(1);
+       $.each(args, function(i, n) {
+               equals(accordion.find(".ui-accordion-content").eq(i).is(":visible"), n);
+       });
+}
+
+function state2(accordion) {
+       var args = $.makeArray(arguments).slice(1);
+       $.each(args, function(i, n) {
+               equals(accordion.find("div").eq(i).is(":visible"), n);
+       });
+}
+
+$.fn.triggerEvent = function(type, target) {
+       return this.triggerHandler(type, [jQuery.event.fix({ type: type, target: target })]);
+};
+
 (function($) {
 
 module("accordion: core");
 
-test("testname", function() {
-       ok(false, "missing test - untested code is broken code.");
+test("handle click on header-descendant", function() {
+       var ac = $('#navigation').accordion({ autoHeight: false });
+       ac.triggerEvent("click", $('#navigation span:contains(Bass)')[0]);
+       state2(ac, 0, 1, 0);
+});
+
+test("accessibility", function () {
+       expect(9);
+       var ac = $('#list1').accordion().accordion("activate", 1);
+       var headers = $(".ui-accordion-header");
+
+       equals( headers.eq(1).attr("tabindex"), "0", "active header should have tabindex=0");
+       equals( headers.eq(0).attr("tabindex"), "-1", "inactive header should have tabindex=-1");
+       equals( ac.attr("role"), "tablist", "main role");
+       equals( headers.attr("role"), "tab", "tab roles");
+       equals( headers.next().attr("role"), "tabpanel", "tabpanel roles");
+       equals( headers.eq(1).attr("aria-expanded"), "true", "active tab has aria-expanded");
+       equals( headers.eq(0).attr("aria-expanded"), "false", "inactive tab has aria-expanded");
+       ac.accordion("activate", 0);
+       equals( headers.eq(0).attr("aria-expanded"), "true", "newly active tab has aria-expanded");
+       equals( headers.eq(1).attr("aria-expanded"), "false", "newly inactive tab has aria-expanded");
 });
 
 })(jQuery);
index c6897a23f5028614da78f724f6be3993a4eee1be..96482a2a191e222c7353e395a41a261b68cd217e 100644 (file)
@@ -3,7 +3,20 @@
  */
 
 var accordion_defaults = {
-       disabled: false
+       active: null,
+       animated: false,
+       autoHeight: true,
+       collapsible: false,
+       clearStyle: false,
+       disabled: false,
+       event: "click",
+       fillSpace: false,
+       header: "> li > :first-child,> :not(li):even",
+       icons: { "header": "ui-icon-triangle-1-e", "headerSelected": "ui-icon-triangle-1-s" },
+       navigation: false,
+       navigationFilter: function() {
+      return this.href.toLowerCase() == location.href.toLowerCase();
+    }
 };
 
 commonWidgetTests('accordion', { defaults: accordion_defaults });
index c7bcf565e634e1c629d96cc294f5d7c691ec14d5..e9e14996ce384dc02d6399078df939d20a563eb6 100644 (file)
@@ -5,8 +5,26 @@
 
 module("accordion: events");
 
-test("testname", function() {
-       ok(false, "missing test - untested code is broken code.");
+test("accordionchange event, open closed and close again", function() {
+       expect(8);
+       $("#list1").accordion({
+               active: false,
+               collapsible: true
+       })
+       .one("accordionchange", function(event, ui) {
+               equals( ui.oldHeader.size(), 0 );
+               equals( ui.oldContent.size(), 0 );
+               equals( ui.newHeader.size(), 1 );
+               equals( ui.newContent.size(), 1 );
+       })
+       .accordion("activate", 0)
+       .one("accordionchange", function(event, ui) {
+               equals( ui.oldHeader.size(), 1 );
+               equals( ui.oldContent.size(), 1 );
+               equals( ui.newHeader.size(), 0 );
+               equals( ui.newContent.size(), 0 );
+       })
+       .accordion("activate", 0);
 });
 
 })(jQuery);
index f234ec293067601c903e9f42d10fba668acda057..8b3a491a8e709a9782552dc592f326f79f4e967d 100644 (file)
@@ -5,8 +5,73 @@
 
 module("accordion: methods");
 
-test("testname", function() {
-       ok(false, "missing test - untested code is broken code.");
+test("init", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("destroy", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("enable", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("disable", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("activate, numeric", function() {
+       var ac = $('#list1').accordion({ active: 1 });
+       state(ac, 0, 1, 0);
+       ac.accordion("activate", 2);
+       state(ac, 0, 0, 1);
+       ac.accordion("activate", 0);
+       state(ac, 1, 0, 0);
+       ac.accordion("activate", 1);
+       state(ac, 0, 1, 0);
+       ac.accordion("activate", 2);
+       state(ac, 0, 0, 1);
+       ac.accordion("activate", -1);
+       state(ac, 0, 0, 1);
+});
+
+test("activate, boolean and numeric, collapsible:true", function() {
+       var ac = $('#list1').accordion({collapsible: true}).accordion("activate", 2);
+       state(ac, 0, 0, 1);
+       ok("x", "----");
+       ac.accordion("activate", 0);
+       state(ac, 1, 0, 0);
+       ok("x", "----");
+       ac.accordion("activate", -1);
+       state(ac, 0, 0, 0);
+});
+
+test("activate, boolean, collapsible:false", function() {
+       var ac = $('#list1').accordion().accordion("activate", 2);
+       state(ac, 0, 0, 1);
+       ac.accordion("activate", -1);
+       state(ac, 0, 0, 1);
+});
+
+test("activate, string expression", function() {
+       var ac = $('#list1').accordion({ active: "a:last" });
+       state(ac, 0, 0, 1);
+       ac.accordion("activate", ":first");
+       state(ac, 1, 0, 0);
+       ac.accordion("activate", ":eq(1)");
+       state(ac, 0, 1, 0);
+       ac.accordion("activate", ":last");
+       state(ac, 0, 0, 1);
+});
+
+test("activate, jQuery or DOM element", function() {
+       var ac = $('#list1').accordion({ active: $("#list1 a:last") });
+       state(ac, 0, 0, 1);
+       ac.accordion("activate", $("#list1 a:first"));
+       state(ac, 1, 0, 0);
+       ac.accordion("activate", $("#list1 a")[1]);
+       state(ac, 0, 1, 0);
 });
 
 })(jQuery);
index 3def620df6a61892ea17cd9f321dc86788fbc609..61d27ee3e8e32352ac563d831f27eeb03873fa4e 100644 (file)
@@ -5,8 +5,130 @@
 
 module("accordion: options");
 
-test("testname", function() {
-       ok(false, "missing test - untested code is broken code.");
+test("{ active: first child }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ active: Selector }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ active: Element }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ active: jQuery Object }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ active: true }", function() {
+       $("#list1").accordion({
+               active: true,
+               collapsible: false
+       });
+       equals( $("#list1 .ui-accordion-header.ui-state-active").size(), 1, "one header selected" );
+});
+
+test("{ active: false }", function() {
+       $("#list1").accordion({
+               active: false,
+               collapsible: true
+       });
+       equals( $("#list1 .ui-accordion-header.ui-state-active").size(), 0, "no headers selected" );
+});
+
+test("{ active: Number }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ animated: false }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ animated: true }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ animated: String }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ autoHeight: true }, default", function() {
+       $('#navigation').accordion({ autoHeight: true });
+       equals( $('#navigation > li:eq(0) > ul').height(), 112 );
+       equals( $('#navigation > li:eq(1) > ul').height(), 112 );
+       equals( $('#navigation > li:eq(2) > ul').height(), 112 );
+});
+
+test("{ autoHeight: false }", function() {
+       $('#navigation').accordion({ autoHeight: false });
+       equals( $('#navigation > li:eq(0) > ul').height(), 80 );
+       equals( $('#navigation > li:eq(1) > ul').height(), 112 );
+       equals( $('#navigation > li:eq(2) > ul').height(), 48 );
+});
+
+test("{ clearStyle: false }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ clearStyle: true }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ collapsible: false }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ collapsible: true }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ event: 'click' }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ event: 'mouseover' }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ fillSpace: false }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ fillSpace: true }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ header: '> li > :first-child,> :not(li):even' }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ header: Selector }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ header: jQuery Object }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ icons: { 'header': 'ui-icon-triangle-1-e', 'headerSelected': 'ui-icon-triangle-1-s' } }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ icons: { 'header': 'ui-icon-foo', 'headerSelected': 'ui-icon-bar' } }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ navigation: false }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ navigation: true }", function() {
+       ok(false, 'missing test - untested code is broken code');
+});
+
+test("{ navigationFilter: Function }, default", function() {
+       ok(false, 'missing test - untested code is broken code');
 });
 
 })(jQuery);
index f36d4c971f3dc0ac4a35731306bfa82765dad00a..98d8fbe4c0cb293ac09268a2b72580271629235b 100644 (file)
@@ -5,8 +5,4 @@
 
 module("accordion: tickets");
 
-test("testname", function() {
-       ok(false, "missing test - untested code is broken code.");
-});
-
 })(jQuery);