diff --git a/js/tests/unit/modal.js b/js/tests/unit/modal.js index 6da09e3c6e..d5b83a1da0 100644 --- a/js/tests/unit/modal.js +++ b/js/tests/unit/modal.js @@ -334,6 +334,44 @@ $(function () { .bootstrapModal('show') }) + QUnit.test('should have a paddingRight when the modal is taller than the viewport', function (assert) { + assert.expect(2) + var done = assert.async() + $('
').appendTo('#qunit-fixture') + $('.navbar-fixed-top, .navbar-fixed-bottom, .is-fixed').css('padding-right', '10px') + + $('') + .on('shown.bs.modal', function () { + var paddingRight = parseInt($(document.body).css('padding-right'), 10) + assert.strictEqual(isNaN(paddingRight), false) + assert.strictEqual(paddingRight !== 0, true) + $(document.body).css('padding-right', ''); // Because test case "should ignore other inline styles when trying to restore body padding after closing" fail if not + done() + }) + .bootstrapModal('show') + }) + + QUnit.test('should remove padding-right on modal after closing', function (assert) { + assert.expect(3) + var done = assert.async() + $(' ').appendTo('#qunit-fixture') + $('.navbar-fixed-top, .navbar-fixed-bottom, .is-fixed').css('padding-right', '10px') + + $('') + .on('shown.bs.modal', function () { + var paddingRight = parseInt($(document.body).css('padding-right'), 10) + assert.strictEqual(isNaN(paddingRight), false) + assert.strictEqual(paddingRight !== 0, true) + $(this).bootstrapModal('hide') + }) + .on('hidden.bs.modal', function () { + var paddingRight = parseInt($(document.body).css('padding-right'), 10) + assert.strictEqual(paddingRight, 0) + done() + }) + .bootstrapModal('show') + }) + QUnit.test('should ignore other inline styles when trying to restore body padding after closing', function (assert) { assert.expect(2) var done = assert.async()