Skip to content

Commit

Permalink
fix bootstrap-button toggle regression + tests
Browse files Browse the repository at this point in the history
  • Loading branch information
fat committed Feb 19, 2012
1 parent 7ec09d0 commit 3d58b46
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 3 deletions.
Binary file modified docs/assets/bootstrap.zip
Binary file not shown.
4 changes: 3 additions & 1 deletion docs/assets/js/bootstrap-button.js
Expand Up @@ -91,7 +91,9 @@

$(function () {
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
$(e.currentTarget).button('toggle')
var $btn = $(e.target)
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
$btn.button('toggle')
})
})

Expand Down
4 changes: 3 additions & 1 deletion js/bootstrap-button.js
Expand Up @@ -91,7 +91,9 @@

$(function () {
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
$(e.currentTarget).button('toggle')
var $btn = $(e.target)
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
$btn.button('toggle')
})
})

Expand Down
25 changes: 24 additions & 1 deletion js/tests/unit/bootstrap-button.js
Expand Up @@ -45,10 +45,33 @@ $(function () {
})

test("should toggle active", function () {
var btn = $('<button class="btn" data-loading-text="fat">mdo</button>')
var btn = $('<button class="btn">mdo</button>')
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 = $('<button class="btn" data-toggle="button">mdo</button>')
, inner = $('<i></i>')
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 = $('<div class="btn-group" data-toggle="buttons-checkbox"></div>')
, btn = $('<button class="btn">fat</button>')
, inner = $('<i></i>')
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')
})

})

0 comments on commit 3d58b46

Please sign in to comment.