From 24f14a8b4d16f540d127ae6a0b5ceebd1157f4fd Mon Sep 17 00:00:00 2001
From: Steve James <4stevejames@gmail.com>
Date: Mon, 5 Feb 2018 18:53:49 -0800
Subject: [PATCH 1/6] Updating to QUnit 2.5, some spec formatting
---
tests/unit/core.js | 377 +++++-------
tests/unit/events.js | 223 ++++---
tests/unit/filter.js | 60 +-
tests/unit/html.js | 32 +-
tests/unit/index.htm | 11 +-
tests/unit/methods.js | 155 ++---
tests/unit/options.js | 364 +++++------
tests/unit/qunit.css | 196 ------
tests/unit/qunit.js | 1341 -----------------------------------------
tests/unit/setup.js | 14 +
10 files changed, 555 insertions(+), 2218 deletions(-)
delete mode 100644 tests/unit/qunit.css
delete mode 100644 tests/unit/qunit.js
create mode 100644 tests/unit/setup.js
diff --git a/tests/unit/core.js b/tests/unit/core.js
index f5fd824..dcfafa9 100644
--- a/tests/unit/core.js
+++ b/tests/unit/core.js
@@ -1,214 +1,169 @@
-var el;
-var body = document.body;
-
-function button(){
- return el.next();
-}
-
-function menu(){
- return el.multiselect("widget");
-}
-
-function header(){
- return menu().find('.ui-multiselect-header');
-}
-
-QUnit.done = function(){
- $("select").hide();
-};
-
-(function($){
-
- module("core");
-
- test("init", function(){
- expect(6);
-
- el = $("select").multiselect(), $header = header();
- ok( $header.find('a.ui-multiselect-all').css('display') !== 'none', 'select all is visible' );
- ok( $header.find('a.ui-multiselect-none').css('display') !== 'none', 'select none is visible' );
- ok( $header.find('a.ui-multiselect-close').css('display') !== 'none', 'close link is visible' );
- ok( menu().is(':hidden'), 'menu is hidden');
- ok( el.is(":hidden"), 'the original select is hidden');
- ok( el.attr('tabIndex') == 2, 'button inherited the correct tab index');
- el.multiselect("destroy");
- });
-
- test("name space separation", function(){
- expect(1);
-
- var form = $('
').appendTo(body),
- data;
-
- el1 = $('')
- .appendTo(form)
- .multiselect();
-
- el2 = $('')
- .appendTo(form)
- .multiselect();
-
- notEqual(el1.multiselect('widget').find('input').eq(0).attr('id'), el2.multiselect('widget').find('input').eq(0).attr('id'), 'name spaces for multiple widgets are different');
-
- el1.multiselect('destroy');
- el2.multiselect('destroy');
- form.remove();
- });
-
- test("form submission", function(){
- expect(3);
-
- var form = $('').appendTo(body),
- data;
-
- el = $('')
- .appendTo(form)
- .multiselect()
- .multiselect("checkAll");
-
- data = form.serialize();
- equals( data, 'test=foo&test=bar', 'after checking all and serializing the form, the correct keys were serialized');
-
- el.multiselect("uncheckAll");
- data = form.serialize();
- equals( data.length, 0, 'after unchecking all and serializing the form, nothing was serialized');
-
- // re-check all and destroy, exposing original select
- el.multiselect("checkAll").multiselect("destroy");
- data = form.serialize();
- equals( data, 'test=foo&test=bar', 'after checking all, destroying the widget, and serializing the form, the correct keys were serialized');
-
+(function ($) {
+ var form, data;
+
+ QUnit.module("core", {
+ beforeEach: function () {
+ form = $('').appendTo(body);
+ data = null;
+ },
+ afterEach: function () {
form.remove();
- });
-
- test("form submission, optgroups", function(){
- expect(4);
-
- var form = $('').appendTo(body),
- data;
-
- el = $('')
- .appendTo(form)
- .multiselect()
- .multiselect("checkAll");
-
- data = form.serialize();
- equals( data, 'test=foo&test=bar&test=baz&test=bax', 'after checking all and serializing the form, the correct keys were serialized');
-
- el.multiselect("uncheckAll");
- data = form.serialize();
- equals( data.length, 0, 'after unchecking all and serializing the form, nothing was serialized');
-
- // re-check all and destroy, exposing original select
- el.multiselect("checkAll").multiselect("destroy");
- data = form.serialize();
- equals( data, 'test=foo&test=bar&test=baz&test=bax', 'after checking all, destroying the widget, and serializing the form, the correct keys were serialized');
-
- // reset option tags
- el.find("option").each(function(){
- this.selected = false;
- });
-
- // test checking one option in both optgroups
- el.multiselect();
-
- // finds the first input in each optgroup (assumes 2 options per optgroup)
- el.multiselect("widget").find('.ui-multiselect-checkboxes li:not(.ui-multiselect-optgroup-label) input:even').each(function( i ){
- this.click();
- });
-
- data = form.serialize();
- equals( data, 'test=foo&test=baz', 'after manually checking one input in each group, the correct two are serialized');
-
+ }
+ });
+
+ QUnit.test("init", function (assert) {
+ el = $("select").multiselect(), $header = header();
+ assert.ok($header.find('a.ui-multiselect-all').css('display') !== 'none', 'select all is visible');
+ assert.ok($header.find('a.ui-multiselect-none').css('display') !== 'none', 'select none is visible');
+ assert.ok($header.find('a.ui-multiselect-close').css('display') !== 'none', 'close link is visible');
+ assert.ok(menu().is(':hidden'), 'menu is hidden');
+ assert.ok(el.is(":hidden"), 'the original select is hidden');
+ assert.ok(el.attr('tabIndex') == 2, 'button inherited the correct tab index');
+ el.multiselect("destroy");
+ });
+
+ QUnit.test("name space separation", function (assert) {
+ var el1 = $('')
+ .appendTo(form)
+ .multiselect();
+
+ var el2 = $('')
+ .appendTo(form)
+ .multiselect();
+
+ assert.notEqual(el1.multiselect('widget').find('input').eq(0).attr('id'), el2.multiselect('widget').find('input').eq(0).attr('id'), 'name spaces for multiple widgets are different');
+
+ el1.multiselect('destroy');
+ el2.multiselect('destroy');
+ });
+
+ QUnit.test("form submission", function (assert) {
+ el = $('')
+ .appendTo(form)
+ .multiselect()
+ .multiselect("checkAll");
+
+ data = form.serialize();
+ assert.equal(data, 'test=foo&test=bar', 'after checking all and serializing the form, the correct keys were serialized');
+
+ el.multiselect("uncheckAll");
+ data = form.serialize();
+ assert.equal(data.length, 0, 'after unchecking all and serializing the form, nothing was serialized');
+
+ // re-check all and destroy, exposing original select
+ el.multiselect("checkAll").multiselect("destroy");
+ data = form.serialize();
+ assert.equal(data, 'test=foo&test=bar', 'after checking all, destroying the widget, and serializing the form, the correct keys were serialized');
+ });
+
+ QUnit.test("form submission, optgroups", function (assert) {
+ el = $('')
+ .appendTo(form)
+ .multiselect()
+ .multiselect("checkAll");
+
+ data = form.serialize();
+ assert.equal(data, 'test=foo&test=bar&test=baz&test=bax', 'after checking all and serializing the form, the correct keys were serialized');
+
+ el.multiselect("uncheckAll");
+ data = form.serialize();
+ assert.equal(data.length, 0, 'after unchecking all and serializing the form, nothing was serialized');
+
+ // re-check all and destroy, exposing original select
+ el.multiselect("checkAll").multiselect("destroy");
+ data = form.serialize();
+ assert.equal(data, 'test=foo&test=bar&test=baz&test=bax', 'after checking all, destroying the widget, and serializing the form, the correct keys were serialized');
+
+ // reset option tags
+ el.find("option").each(function () {
+ this.selected = false;
+ });
+
+ // test checking one option in both optgroups
+ el.multiselect();
+
+ // finds the first input in each optgroup (assumes 2 options per optgroup)
+ el.multiselect("widget").find('.ui-multiselect-checkboxes li:not(.ui-multiselect-optgroup-label) input:even').each(function (i) {
+ this.click();
+ });
+
+ data = form.serialize();
+ assert.equal(data, 'test=foo&test=baz', 'after manually checking one input in each group, the correct two are serialized');
+
+ el.multiselect('destroy');
+ });
+
+ QUnit.test("form submission, single select", function (assert) {
+ // Use an underlying single-select here.
+ el = $('')
+ .appendTo(form)
+ .multiselect();
+
+ // select multiple radios to ensure that, in the underlying select, only one
+ // will remain selected
+ radios = menu().find(":radio");
+ radios[0].click();
+ radios[2].click();
+ radios[1].click();
+
+ data = form.serialize();
+ assert.equal(data, 'test=bar', 'the form serializes correctly after clicking on multiple radio buttons');
+ assert.equal(radios.filter(":checked").length, 1, 'Only one radio button is selected');
+
+ // uncheckAll method
+ el.multiselect("uncheckAll");
+ data = form.serialize();
+ assert.equal(data.length, 0, 'After unchecking all, nothing was serialized');
+ assert.equal(radios.filter(":checked").length, 0, 'No radio buttons are selected');
+
+ // checkAll method
+ el.multiselect("checkAll");
+ data = form.serialize();
+ assert.equal(el.multiselect("getChecked").length, 1, 'After checkAll, only one radio is selected');
+ assert.equal(radios.filter(":checked").length, 1, 'One radio is selected');
+
+ // expose original
+ el.multiselect("destroy");
+ data = form.serialize();
+ assert.equal(data, 'test=baz', 'after destroying the widget and serializing the form, the correct key was serialized: ' + data);
+ });
+
+ QUnit.test("form reset, nothing pre-selected", function (assert) {
+ var noneSelected = 'Please check something';
+
+ el = $('')
+ .appendTo(form)
+ .multiselect({ noneSelectedText: noneSelected, selectedList: 0 })
+ .multiselect("checkAll");
+
+ // trigger reset
+ var done = assert.async();
+ form.trigger("reset");
+
+ setTimeout(function () {
+ assert.equal(menu().find(":checked").length, 0, "no checked checkboxes");
+ assert.equal(button().text(), noneSelected, "none selected text");
el.multiselect('destroy');
- form.remove();
- });
-
- test("form submission, single select", function(){
- expect(7);
-
- var form = $('').appendTo("body"),
- radios, data;
-
- // Use an underlying single-select here.
- el = $('')
- .appendTo(form)
- .multiselect();
-
- // select multiple radios to ensure that, in the underlying select, only one
- // will remain selected
- radios = menu().find(":radio");
- radios[0].click();
- radios[2].click();
- radios[1].click();
-
- data = form.serialize();
- equals( data, 'test=bar', 'the form serializes correctly after clicking on multiple radio buttons');
- equals( radios.filter(":checked").length, 1, 'Only one radio button is selected');
-
- // uncheckAll method
- el.multiselect("uncheckAll");
- data = form.serialize();
- equals( data.length, 0, 'After unchecking all, nothing was serialized');
- equals( radios.filter(":checked").length, 0, 'No radio buttons are selected');
-
- // checkAll method
- el.multiselect("checkAll");
- data = form.serialize();
- equals( el.multiselect("getChecked").length, 1, 'After checkAll, only one radio is selected');
- equals( radios.filter(":checked").length, 1, 'One radio is selected');
-
- // expose original
- el.multiselect("destroy");
- data = form.serialize();
- equals( data, 'test=baz', 'after destroying the widget and serializing the form, the correct key was serialized: ' + data);
-
- form.remove();
- });
-
- asyncTest("form reset, nothing pre-selected", function(){
- expect(2);
-
- var form = $('').appendTo(body),
- noneSelected = 'Please check something';
-
- el = $('')
- .appendTo(form)
- .multiselect({ noneSelectedText: noneSelected, selectedList: 0 })
- .multiselect("checkAll");
-
- // trigger reset
- form.trigger("reset");
-
- setTimeout(function(){
- equals( menu().find(":checked").length, 0, "no checked checkboxes" );
- equals( button().text(), noneSelected, "none selected text");
- el.multiselect('destroy');
- form.remove();
- start();
- }, 10);
- });
-
- asyncTest("form reset, pre-selected options", function(){
- expect(2);
-
- var form = $('').appendTo(body);
-
- el = $('')
- .appendTo(form)
- .multiselect({ selectedText: '# of # selected', selectedList: 0 })
- .multiselect("uncheckAll");
-
- // trigger reset
- form.trigger("reset");
-
- setTimeout(function(){
- equals( menu().find(":checked").length, 2, "two checked checkboxes" );
- equals( button().text(), "2 of 2 selected", "selected text" );
- el.multiselect('destroy');
- form.remove();
- start();
- }, 10);
- });
-
+ done();
+ }, 10);
+ });
+
+ QUnit.test("form reset, pre-selected options", function (assert) {
+ el = $('')
+ .appendTo(form)
+ .multiselect({ selectedText: '# of # selected', selectedList: 0 })
+ .multiselect("uncheckAll");
+
+ // trigger reset
+ var done = assert.async();
+ form.trigger("reset");
+
+ setTimeout(function () {
+ assert.equal(menu().find(":checked").length, 2, "two checked checkboxes");
+ assert.equal(button().text(), "2 of 2 selected", "selected text");
+ el.multiselect('destroy');
+ done();
+ }, 10);
+ });
+
})(jQuery);
diff --git a/tests/unit/events.js b/tests/unit/events.js
index ab39c04..4093053 100644
--- a/tests/unit/events.js
+++ b/tests/unit/events.js
@@ -1,32 +1,30 @@
(function($){
- module("events");
-
- test("multiselectopen", function(){
- expect(27);
+ QUnit.module("events");
+ QUnit.test("multiselectopen", function(assert){
// inject widget
el = $("").appendTo(body);
el.multiselect({
open: function(e,ui){
- ok( true, 'option: multiselect("open") fires open callback' );
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectopen', 'option: event type in callback');
- equals(menu().css("display"), 'block', 'menu display css property equals block');
- same(ui, {}, 'option: ui hash in callback');
+ assert.ok( true, 'option: multiselect("open") fires open callback' );
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectopen', 'option: event type in callback');
+ assert.equal(menu().css("display"), 'block', 'menu display css property assert.equal block');
+ assert.propEqual(ui, {}, 'option: ui hash in callback');
}
})
.bind("multiselectopen", function(e,ui){
- ok(true, 'event: multiselect("open") fires multiselectopen event');
- equals(this, el[0], 'event: context of event');
- same(ui, {}, 'event: ui hash');
+ assert.ok(true, 'event: multiselect("open") fires multiselectopen event');
+ assert.equal(this, el[0], 'event: context of event');
+ assert.propEqual(ui, {}, 'event: ui hash');
});
// now try to open it..
el.multiselect("open");
// make sure the width of the menu and button are equivalent
- equals( button().outerWidth(), menu().outerWidth(), 'button and menu widths are equivalent');
+ assert.equal( button().outerWidth(), menu().outerWidth(), 'button and menu widths are equivalent');
// close
el.multiselect("close");
@@ -46,33 +44,31 @@
.appendTo(body)
.multiselect()
.bind("multiselectbeforeopen", function(){
- ok( true, "event: binding multiselectbeforeopen to return false (prevent from opening)" );
+ assert.ok( true, "event: binding multiselectbeforeopen to return false (prevent from opening)" );
return false;
})
.multiselect("open");
- ok( !el.multiselect("isOpen"), "multiselect is not open after multiselect('open')" );
+ assert.ok( !el.multiselect("isOpen"), "multiselect is not open after multiselect('open')" );
el.multiselect("destroy").remove();
});
- test("multiselectclose", function(){
- expect(25);
-
+ QUnit.test("multiselectclose", function(assert){
// inject widget
el = $("").appendTo(body);
el.multiselect({
close: function(e,ui){
- ok( true, 'option: multiselect("close") fires close callback' );
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectclose', 'option: event type in callback');
- equals(menu().css("display"), 'none', 'menu display css property equals none');
- same(ui, {}, 'option: ui hash');
+ assert.ok( true, 'option: multiselect("close") fires close callback' );
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectclose', 'option: event type in callback');
+ assert.equal(menu().css("display"), 'none', 'menu display css property assert.equal none');
+ assert.propEqual(ui, {}, 'option: ui hash');
}
})
.bind("multiselectclose", function(e,ui){
- ok(true, 'multiselect("close") fires multiselectclose event');
- equals(this, el[0], 'event: context of event');
- same(ui, {}, 'event: ui hash');
+ assert.ok(true, 'multiselect("close") fires multiselectclose event');
+ assert.equal(this, el[0], 'event: context of event');
+ assert.propEqual(ui, {}, 'event: ui hash');
})
.multiselect("open")
.multiselect("close")
@@ -86,28 +82,26 @@
button().find("span:first").click();
// make sure that the menu is actually closed. see issue #68
- ok( el.multiselect('isOpen') === false, 'menu is indeed closed' );
+ assert.ok( el.multiselect('isOpen') === false, 'menu is indeed closed' );
el.multiselect("destroy").remove();
});
- test("multiselectbeforeclose", function(){
- expect(8);
-
+ QUnit.test("multiselectbeforeclose", function(assert){
// inject widget
el = $("").appendTo(body);
el.multiselect({
beforeclose: function(e,ui){
- ok( true, 'option: multiselect("beforeclose") fires close callback' );
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectbeforeclose', 'option: event type in callback');
- same(ui, {}, 'option: ui hash');
+ assert.ok( true, 'option: multiselect("beforeclose") fires close callback' );
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectbeforeclose', 'option: event type in callback');
+ assert.propEqual(ui, {}, 'option: ui hash');
}
})
.bind("multiselectbeforeclose", function(e,ui){
- ok(true, 'multiselect("beforeclose") fires multiselectclose event');
- equals(this, el[0], 'event: context of event');
- same(ui, {}, 'event: ui hash');
+ assert.ok(true, 'multiselect("beforeclose") fires multiselectclose event');
+ assert.equal(this, el[0], 'event: context of event');
+ assert.propEqual(ui, {}, 'event: ui hash');
})
.multiselect("open")
.multiselect("close");
@@ -123,29 +117,26 @@
});
el.multiselect('open').multiselect('close');
- ok( menu().is(':visible') && el.multiselect("isOpen"), "returning false inside callback prevents menu from closing" );
+ assert.ok( menu().is(':visible') && el.multiselect("isOpen"), "returning false inside callback prevents menu from closing" );
el.multiselect("destroy").remove();
});
- test("multiselectclick with multiple widgets", function() {
- expect(3);
+ QUnit.test("multiselectclick with multiple widgets", function(assert) {
var first = $("").appendTo(body).multiselect();
var second = $("").appendTo(body).multiselect();
- equals($('.ui-multiselect').length, 2, "two mutliselects are on the page");
+ assert.equal($('.ui-multiselect').length, 2, "two mutliselects are on the page");
first.multiselect("refresh");
second.multiselect("refresh");
$label = $(second.multiselect("getLabels")[0]);
$wrongInput = $(first.multiselect("getLabels")[0]).find("input");
$label.click();
- equals($label.find("input").prop("checked"), true, "the input for that label should be checked");
- equals($wrongInput.prop("checked"), false, "the input for the corresponding label on the first widget should not be checked");
+ assert.equal($label.find("input").prop("checked"), true, "the input for that label should be checked");
+ assert.equal($wrongInput.prop("checked"), false, "the input for the corresponding label on the first widget should not be checked");
first.multiselect("destroy").remove();
second.multiselect("destroy").remove();
});
- test("multiselectclick", function(){
- expect(28);
-
+ QUnit.test("multiselectclick", function(assert){
var times = 0;
// inject widget
@@ -154,39 +145,39 @@
el.multiselect({
click: function(e,ui){
- ok(true, 'option: triggering the click event on the second checkbox fires the click callback' );
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectclick', 'option: event type in callback');
- equals(ui.value, "2", "option: ui.value equals");
- equals(ui.text, "Option 2", "option: ui.text equals");
+ assert.ok(true, 'option: triggering the click event on the second checkbox fires the click callback' );
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectclick', 'option: event type in callback');
+ assert.equal(ui.value, "2", "option: ui.value assert.equal");
+ assert.equal(ui.text, "Option 2", "option: ui.text assert.equal");
if(times === 0) {
- equals(ui.checked, true, "option: ui.checked equals");
+ assert.equal(ui.checked, true, "option: ui.checked assert.equal");
} else if(times === 1) {
- equals(ui.checked, false, "option: ui.checked equals");
+ assert.equal(ui.checked, false, "option: ui.checked assert.equal");
}
}
})
.bind("multiselectclick", function(e,ui){
- ok(true, 'event: triggering the click event on the second checkbox triggers multiselectclick');
- equals(this, el[0], 'event: context of event');
- equals(ui.value, "2", "event: ui.value equals");
- equals(ui.text, "Option 2", "event: ui.text equals");
+ assert.ok(true, 'event: triggering the click event on the second checkbox triggers multiselectclick');
+ assert.equal(this, el[0], 'event: context of event');
+ assert.equal(ui.value, "2", "event: ui.value assert.equal");
+ assert.equal(ui.text, "Option 2", "event: ui.text assert.equal");
if(times === 0) {
- equals(ui.checked, true, "option: ui.checked equals");
+ assert.equal(ui.checked, true, "option: ui.checked assert.equal");
} else if(times === 1) {
- equals(ui.checked, false, "option: ui.checked equals");
+ assert.equal(ui.checked, false, "option: ui.checked assert.equal");
}
})
.bind("change", function(e){
if(++times === 1){
- equals(el.val().join(), "2", "event: select element val() within the change event is correct" );
+ assert.equal(el.val().join(), "2", "event: select element val() within the change event is correct" );
} else {
- equals(el.val(), null, "event: select element val() within the change event is correct" );
+ assert.equal(el.val(), null, "event: select element val() within the change event is correct" );
}
- ok(true, "event: the select's change event fires");
+ assert.ok(true, "event: the select's change event fires");
})
.multiselect("open");
@@ -198,100 +189,94 @@
lastInput[0].click();
// make sure it has focus
- equals(true, lastInput.is(":focus"), "The input has focus");
+ assert.equal(true, lastInput.is(":focus"), "The input has focus");
// make sure menu isn't closed automatically
- equals( true, el.multiselect('isOpen'), 'menu stays open' );
+ assert.equal( true, el.multiselect('isOpen'), 'menu stays open' );
el.multiselect("destroy").remove();
});
- test("multiselectcheckall", function(){
- expect(10);
-
+ QUnit.test("multiselectcheckall", function(assert){
// inject widget
el = $('').appendTo(body);
el.multiselect({
checkAll: function(e,ui){
- ok( true, 'option: multiselect("checkAll") fires checkall callback' );
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectcheckall', 'option: event type in callback');
- same(ui, {}, 'option: ui hash in callback');
+ assert.ok( true, 'option: multiselect("checkAll") fires checkall callback' );
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectcheckall', 'option: event type in callback');
+ assert.propEqual(ui, {}, 'option: ui hash in callback');
}
})
.bind("multiselectcheckall", function(e,ui){
- ok( true, 'event: multiselect("checkall") fires multiselectcheckall event' );
- equals(this, el[0], 'event: context of event');
- same(ui, {}, 'event: ui hash');
+ assert.ok( true, 'event: multiselect("checkall") fires multiselectcheckall event' );
+ assert.equal(this, el[0], 'event: context of event');
+ assert.propEqual(ui, {}, 'event: ui hash');
})
.bind("change", function(){
- ok(true, "event: the select's change event fires");
- equals( el.val().join(), "1,2", "event: select element val() within the change event is correct" );
+ assert.ok(true, "event: the select's change event fires");
+ assert.equal( el.val().join(), "1,2", "event: select element val() within the change event is correct" );
})
.multiselect("open")
.multiselect("checkAll");
- equals(menu().find("input").first().is(":focus"), true, "The first input has focus");
+ assert.equal(menu().find("input").first().is(":focus"), true, "The first input has focus");
el.multiselect("destroy").remove();
});
- test("multiselectuncheckall", function(){
- expect(10);
-
+ QUnit.test("multiselectuncheckall", function(assert){
// inject widget
el = $('').appendTo(body);
el.multiselect({
uncheckAll: function(e,ui){
- ok( true, 'option: multiselect("uncheckAll") fires uncheckall callback' );
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectuncheckall', 'option: event type in callback');
- same(ui, {}, 'option: ui hash in callback');
+ assert.ok( true, 'option: multiselect("uncheckAll") fires uncheckall callback' );
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectuncheckall', 'option: event type in callback');
+ assert.propEqual(ui, {}, 'option: ui hash in callback');
}
})
.bind("multiselectuncheckall", function(e,ui){
- ok( true, 'event: multiselect("uncheckall") fires multiselectuncheckall event' );
- equals(this, el[0], 'event: context of event');
- same(ui, {}, 'event: ui hash');
+ assert.ok( true, 'event: multiselect("uncheckall") fires multiselectuncheckall event' );
+ assert.equal(this, el[0], 'event: context of event');
+ assert.propEqual(ui, {}, 'event: ui hash');
})
.bind("change", function(){
- ok(true, "event: the select's change event fires");
- equals( el.val(), null, "event: select element val() within the change event is correct" );
+ assert.ok(true, "event: the select's change event fires");
+ assert.equal( el.val(), null, "event: select element val() within the change event is correct" );
})
.multiselect("open")
.multiselect("uncheckAll");
- equals(menu().find("input").first().is(":focus"), true, "The first input has focus");
+ assert.equal(menu().find("input").first().is(":focus"), true, "The first input has focus");
el.multiselect("destroy").remove();
});
- test("multiselectbeforeoptgrouptoggle", function(){
- expect(10);
-
+ QUnit.test("multiselectbeforeoptgrouptoggle", function(assert){
// inject widget
el = $('')
.appendTo(body);
el.bind("change", function(){
- ok(true, "the select's change event fires");
+ assert.ok(true, "the select's change event fires");
})
.multiselect({
beforeoptgrouptoggle: function(e,ui){
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectbeforeoptgrouptoggle', 'option: event type in callback');
- equals(ui.label, "Set One", 'option: ui.label equals');
- equals(ui.inputs.length, 2, 'option: number of inputs in the ui.inputs key');
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectbeforeoptgrouptoggle', 'option: event type in callback');
+ assert.equal(ui.label, "Set One", 'option: ui.label assert.equal');
+ assert.equal(ui.inputs.length, 2, 'option: number of inputs in the ui.inputs key');
}
})
.bind("multiselectbeforeoptgrouptoggle", function(e,ui){
- ok( true, 'option: multiselect("uncheckall") fires multiselectuncheckall event' );
- equals(this, el[0], 'event: context of event');
- equals(ui.label, "Set One", 'event: ui.label equals');
- equals(ui.inputs.length, 2, 'event: number of inputs in the ui.inputs key');
+ assert.ok( true, 'option: multiselect("uncheckall") fires multiselectuncheckall event' );
+ assert.equal(this, el[0], 'event: context of event');
+ assert.equal(ui.label, "Set One", 'event: ui.label assert.equal');
+ assert.equal(ui.inputs.length, 2, 'event: number of inputs in the ui.inputs key');
})
.multiselect("open");
@@ -302,51 +287,49 @@
// test return false preventing checkboxes from activating
el.bind("change", function(){
- ok( true ); // should not fire
+ assert.ok( true ); // should not fire
}).multiselect({
beforeoptgrouptoggle: function(){
return false;
},
// if this fires the expected count will be off. just a redundant way of checking that return false worked
optgrouptoggle: function(){
- ok( true );
+ assert.ok( true );
}
}).appendTo( body );
var label = menu().find("li.ui-multiselect-optgroup-label a").click();
- equals( menu().find(":input:checked").length, 0, "when returning false inside the optgrouptoggle handler, no checkboxes are checked" );
+ assert.equal( menu().find(":input:checked").length, 0, "when returning false inside the optgrouptoggle handler, no checkboxes are checked" );
el.multiselect("destroy").remove();
});
- test("multiselectoptgrouptoggle", function(){
- expect(12);
-
+ QUnit.test("multiselectoptgrouptoggle", function(assert){
// inject widget
el = $('').appendTo(body);
el.multiselect({
optgrouptoggle: function(e,ui){
- equals(this, el[0], "option: context of callback");
- equals(e.type, 'multiselectoptgrouptoggle', 'option: event type in callback');
- equals(ui.label, "Set One", 'option: ui.label equals');
- equals(ui.inputs.length, 2, 'option: number of inputs in the ui.inputs key');
- equals(ui.checked, true, 'option: ui.checked equals true');
+ assert.equal(this, el[0], "option: context of callback");
+ assert.equal(e.type, 'multiselectoptgrouptoggle', 'option: event type in callback');
+ assert.equal(ui.label, "Set One", 'option: ui.label assert.equal');
+ assert.equal(ui.inputs.length, 2, 'option: number of inputs in the ui.inputs key');
+ assert.equal(ui.checked, true, 'option: ui.checked assert.equal true');
}
})
.bind("multiselectoptgrouptoggle", function(e,ui){
- ok( true, 'option: multiselect("uncheckall") fires multiselectuncheckall event' );
- equals(this, el[0], 'event: context of event');
- equals(ui.label, "Set One", 'event: ui.label equals');
- equals(ui.inputs.length, 2, 'event: number of inputs in the ui.inputs key');
- equals(ui.checked, true, 'event: ui.checked equals true');
+ assert.ok( true, 'option: multiselect("uncheckall") fires multiselectuncheckall event' );
+ assert.equal(this, el[0], 'event: context of event');
+ assert.equal(ui.label, "Set One", 'event: ui.label assert.equal');
+ assert.equal(ui.inputs.length, 2, 'event: number of inputs in the ui.inputs key');
+ assert.equal(ui.checked, true, 'event: ui.checked assert.equal true');
})
.multiselect("open");
// trigger native click event on optgroup
menu().find(".ui-multiselect-optgroup a").click();
- equals(menu().find(":input:checked").length, 2, "both checkboxes are actually checked" );
+ assert.equal(menu().find(":input:checked").length, 2, "both checkboxes are actually checked" );
- equals(menu().find("input").first().is(":focus"), true, "The first input has focus");
+ assert.equal(menu().find("input").first().is(":focus"), true, "The first input has focus");
el.multiselect("destroy").remove();
});
diff --git a/tests/unit/filter.js b/tests/unit/filter.js
index 95a9a59..1615bfe 100644
--- a/tests/unit/filter.js
+++ b/tests/unit/filter.js
@@ -25,11 +25,11 @@
message || (message = "searching for '#'");
message = message.replace("#", term);
searchFor(term);
- equals( getVisible().length, expected, message );
+ QUnit.assert.equal( getVisible().length, expected, message );
}
- module("filter widget - multiple select", {
- setup: function() {
+ QUnit.module("filter widget - multiple select", {
+ beforeEach: function() {
el = $('