$(function () { module("bootstrap-tabs") test("should be defined on jquery object", function () { ok($(document.body).tabs, 'tabs method is defined') }) test("should return element", function () { ok($(document.body).tabs()[0] == document.body, 'document.body returned') }) test("should activate element by tab id", function () { var $tabsHTML = $('') $('').appendTo("#qunit-runoff") $tabsHTML.tabs().find('a').last().click() equals($("#qunit-runoff").find('.active').attr('id'), "profile") $tabsHTML.tabs().find('a').first().click() equals($("#qunit-runoff").find('.active').attr('id'), "home") $("#qunit-runoff").empty() }) test("should activate element by pill id", function () { var $pillsHTML = $('') $('').appendTo("#qunit-runoff") $pillsHTML.pills().find('a').last().click() equals($("#qunit-runoff").find('.active').attr('id'), "profile") $pillsHTML.pills().find('a').first().click() equals($("#qunit-runoff").find('.active').attr('id'), "home") $("#qunit-runoff").empty() }) test( "should trigger changed event on activate", function () { var $tabsHTML = $('') , changeCount = 0 , from , to; $tabsHTML.tabs().bind( "changed", function (e, c){ from = c.from; to = c.to; changeCount++ }) $tabsHTML.tabs().find('a').last().click() equals(from, "#home") equals(to, "#profile") equals(changeCount, 1) }) })