Skip to content

Commit

Permalink
introduced local aliases
Browse files Browse the repository at this point in the history
this improves readability somewhat (though it shouldn't be abused)

again leveraging IIFEs; arguments passed in below and accepted under a
different name

using regular local variables instead of the arguments trick for QUnit
to keep the IIFE's signature manageable
  • Loading branch information
FND committed Sep 14, 2013
1 parent 47505e9 commit 29c3e73
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 16 deletions.
8 changes: 4 additions & 4 deletions lib/main.js
@@ -1,9 +1,9 @@
(function() {
(function($) {

"use strict";

var contacts = jQuery("ul.contacts");
var filterField = jQuery('<input type="search" />').insertBefore(contacts).
var contacts = $("ul.contacts");
var filterField = $('<input type="search" />').insertBefore(contacts).
on("keyup", onFilter);

function onFilter(ev) {
Expand All @@ -26,4 +26,4 @@ function onFilter(ev) {
});
}

}());
}(jQuery));
31 changes: 19 additions & 12 deletions test/test_filtering.js
@@ -1,33 +1,40 @@
(function() {
(function($) {

var module = QUnit.module,
asyncTest = QUnit.asyncTest,
expect = QUnit.expect,
strictEqual = QUnit.strictEqual,
deepEqual = QUnit.deepEqual,
start = QUnit.start;

"use strict";

QUnit.module("contacts filtering");
module("contacts filtering");

QUnit.asyncTest("filtering by initials", function() {
QUnit.expect(3);
asyncTest("filtering by initials", function() {
expect(3);

var contacts = jQuery("ul.contacts");
var filterField = jQuery("input[type=search]");
var contacts = $("ul.contacts");
var filterField = $("input[type=search]");

QUnit.strictEqual(filterField.length, 1);
strictEqual(filterField.length, 1);
var names = extractNames(contacts.find("li:visible"));
QUnit.deepEqual(names, ["Jake Archibald", "Christian Heilmann",
deepEqual(names, ["Jake Archibald", "Christian Heilmann",
"John Resig", "Nicholas Zakas"]);

filterField.val("J").trigger("keyup");
setTimeout(function() {
var names = extractNames(contacts.find("li:visible"));
QUnit.deepEqual(names, ["Jake Archibald", "John Resig"]);
QUnit.start();
deepEqual(names, ["Jake Archibald", "John Resig"]);
start();
}, 500);
});

function extractNames(items) {
var names = items.map(function(i, node) {
return jQuery(".p-name", node).text();
return $(".p-name", node).text();
});
return Array.prototype.slice.call(names);
}

}());
}(jQuery));

0 comments on commit 29c3e73

Please sign in to comment.