$(function () { module('button') test('should provide no conflict', function () { var button = $.fn.button.noConflict() ok(!$.fn.button, 'button was set back to undefined (org value)') $.fn.button = button }) test('should be defined on jquery object', function () { ok($(document.body).button, 'button method is defined') }) test('should return element', function () { ok($(document.body).button()[0] == document.body, 'document.body returned') }) test('should return set state to loading', function () { var btn = $('') equal(btn.html(), 'mdo', 'btn text equals mdo') btn.button('loading') equal(btn.html(), 'fat', 'btn text equals fat') stop() setTimeout(function () { ok(btn.attr('disabled'), 'btn is disabled') ok(btn.hasClass('disabled'), 'btn has disabled class') start() }, 0) }) test('should return reset state', function () { var btn = $('') equal(btn.html(), 'mdo', 'btn text equals mdo') btn.button('loading') equal(btn.html(), 'fat', 'btn text equals fat') stop() setTimeout(function () { ok(btn.attr('disabled'), 'btn is disabled') ok(btn.hasClass('disabled'), 'btn has disabled class') start() stop() btn.button('reset') equal(btn.html(), 'mdo', 'btn text equals mdo') setTimeout(function () { ok(!btn.attr('disabled'), 'btn is not disabled') ok(!btn.hasClass('disabled'), 'btn does not have disabled class') start() }, 0) }, 0) }) test('should toggle active', function () { var btn = $('') ok(!btn.hasClass('active'), 'btn does not have active class') btn.button('toggle') ok(btn.hasClass('active'), 'btn has class active') }) test('should toggle active when btn children are clicked', function () { var btn = $(''), inner = $('') btn .append(inner) .appendTo($('#qunit-fixture')) ok(!btn.hasClass('active'), 'btn does not have active class') inner.click() ok(btn.hasClass('active'), 'btn has class active') }) test('should toggle active when btn children are clicked within btn-group', function () { var btngroup = $('
'), btn = $(''), inner = $('') btngroup .append(btn.append(inner)) .appendTo($('#qunit-fixture')) ok(!btn.hasClass('active'), 'btn does not have active class') inner.click() ok(btn.hasClass('active'), 'btn has class active') }) test('should check for closest matching toggle', function () { var group = '