QUnit Assertions

by ramyaaviji

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"></div>

JavaScript

test("ok", 3, function() {
    ok(true,  "passes because true is true");
    ok(1,     "passes because 1 is truthy");
    ok("",    "fails because empty string is not truthy");
  });

  test("equal", 3, function() {
    var actual = 5 - 4;

    equal(actual, 1,     "passes because 1 == 1");
    equal(actual, true,  "passes because 1 == true");
    equal(actual, false, "fails because 1 != false");
  });

  test("notEqual", 3, function() {
    var actual = 5 - 4;

    notEqual(actual, 0,     "passes because 1 != 0");
    notEqual(actual, false, "passes because 1 != false");
    notEqual(actual, true,  "fails because 1 == true");
  });

  test("strictEqual", 3, function() {
    var actual = 5 - 4;

    strictEqual(actual, 1,     "passes because 1 === 1");
    strictEqual(actual, true,  "fails because 1 !== true");
    strictEqual(actual, false, "fails because 1 !== false");
  });

  test("notStrictEqual", 3, function() {
    var actual = 5 - 4;

    notStrictEqual(actual, 1,     "fails because 1 === 1");
    notStrictEqual(actual, true,  "passes because 1 !== true");
    notStrictEqual(actual, false, "passes because 1 !== false");
  });

  test("deepEqual", 3, function() {
    var actual = {a: 1};

    equal(    actual, {a: 1},   "fails because objects are different");
    deepEqual(actual, {a: 1},   "passes because objects are equivalent");
    deepEqual(actual, {a: "1"}, "fails because '1' !== 1");

  });

  test("notDeepEqual", 3, function() {
    var actual = {a: 1};

    notEqual(    actual, {a: 1},   "passes because objects are different");
    notDeepEqual(actual, {a: 1},   "fails because objects are equivalent");
    notDeepEqual(actual, {a: "1"}, "passes because '1' !== 1");
  });

  test("raises", 3, function() {
    raises(function() {
      throw new Error("Look ma, I'm an error!");
    }, "passes because an error is thrown inside the callback");

    raises(function() {
      x // ReferenceError: x is not defined
    }, "passes because an error is...