diff --git a/tests/index.html b/tests/index.html index 479a687..a522980 100644 --- a/tests/index.html +++ b/tests/index.html @@ -11,7 +11,10 @@

    -
    test markup, will be hidden
    +
    + test markup, will be hidden + +
    diff --git a/tests/tests.js b/tests/tests.js index 5b70da1..59458eb 100644 --- a/tests/tests.js +++ b/tests/tests.js @@ -33,4 +33,42 @@ module("ajax"); + + // -------------------------------------------------------------------------- + + module("events"); + + test("Browser expando support", function() { + expect(3); + // kis-js events uses expando properties to store event listeners + // If this test fails, the event module will likely fail as well + var ele = document.createElement("div"); + ele.expando = {a:5, b:"c", c: function cool(){return ele}}; + equals(ele.expando.a, 5); + equals(ele.expando.b, "c"); + equals(ele.expando.c(), ele, + "Closure isn't broken by being assigned to an expando property"); + }); + + // -------------------------------------------------------------------------- + + module("dom"); + + test("Add/Remove Class", function() { + expect(4); + var $test = $_("#testSpan"); + var ele = $test.el; + + $test.dom.addClass("coolClass"); + equals(ele.className, "coolClass"); + + $test.dom.addClass("anotherClass"); + equals(ele.className, "coolClass anotherClass"); + + $test.dom.removeClass("coolClass"); + equals(ele.className, "anotherClass"); + + $test.dom.removeClass("anotherClass"); + ok(ele.className === undefined || ele.className === "", "testSpan.className is empty"); + }); }()); \ No newline at end of file