QUnit Lab
by busyfmlyman
HTML
<script src="http://code.jquery.com/qunit/qunit-1.12.0.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/qunit/qunit-1.12.0.css">
<h1 id="qunit-header">Test Suite</h1>
<h2 id="qunit-banner"></h2>
<div id="qunit-testrunner-toolbar"></div>
<h2 id="qunit-userAgent"></h2>
<ol id="qunit-tests"></ol>
<div id="qunit-fixture">
<ul>
<li>foo</li>
<li>bar</li>
<li>baz</li>
</ul>
</div>
JavaScript
/*!
* jQuery Enumerate - v1.0 - 1/2/2011
* http://benalman.com/
*
* Copyright (c) 2011 "Cowboy" Ben Alman
* Dual licensed under the MIT and GPL licenses.
* http://benalman.com/about/license/
*/
(function($){
$.fn.enumerate = function(start) {
if (typeof start !== "number") {
start = 1;
}
return this.each(function(i) {
$(this).prepend((start + i) + ". ");
});
};
}(jQuery));
test("chainable", 1, function() {
var items=$("#qunit-fixture li");
strictEqual(items.enumerate(), items, "should be chainable");
});
test("outputs", 3, function() {
var items=$("#qunit-fixture li").enumerate();
strictEqual(items.eq(0).text(), "1. foo");
strictEqual(items.eq(1).text(), "2. bar");
strictEqual(items.eq(2).text(), "3. baz");
});
test("outputs", 3, function() {
var items=$("#qunit-fixture li").enumerate(98);
strictEqual(items.eq(0).text(), "98. foo");
strictEqual(items.eq(1).text(), "99. bar");
strictEqual(items.eq(2).text(), "100. baz");
});
test("outputs", 3, function() {
var items=$("#qunit-fixture li").enumerate(-2);
strictEqual(items.eq(0).text(), "-2. foo");
strictEqual(items.eq(1).text(), "-1. bar");
strictEqual(items.eq(2).text(), "0. baz");
});
test("outputs", 3, function() {
var items=$("#qunit-fixture li").enumerate('abc');
strictEqual(items.eq(0).text(), "1. foo");
strictEqual(items.eq(1).text(), "2. bar");
strictEqual(items.eq(2).text(), "3. baz");
});
test("outputs", 3, function() {
var items=$("#qunit-fixture li").enumerate(99999999999999999999999);
strictEqual(items.eq(0).text(), "1. foo");
strictEqual(items.eq(1).text(), "2. bar");
strictEqual(items.eq(2).text(), "3. baz");
});