1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-22 13:13:03 +02:00

Escape ID in Util.getSelectorFromElement (#24700)

This commit is contained in:
Johann-S
2017-11-07 12:41:06 +01:00
committed by GitHub
parent 26dc17bcd2
commit 79d6b574cc
2 changed files with 27 additions and 1 deletions

View File

@@ -4,13 +4,26 @@ $(function () {
QUnit.module('util')
QUnit.test('Util.getSelectorFromElement should return the correct element', function (assert) {
assert.expect(2)
assert.expect(5)
var $el = $('<div data-target="body"></div>').appendTo($('#qunit-fixture'))
assert.strictEqual(Util.getSelectorFromElement($el[0]), 'body')
// not found element
var $el2 = $('<div data-target="#fakeDiv"></div>').appendTo($('#qunit-fixture'))
assert.strictEqual(Util.getSelectorFromElement($el2[0]), null)
// should escape ID and find the correct element
var $el3 = $('<div data-target="#collapse:Example"></div>').appendTo($('#qunit-fixture'))
$('<div id="collapse:Example"></div>').appendTo($('#qunit-fixture'))
assert.strictEqual(Util.getSelectorFromElement($el3[0]), '#collapse\\:Example')
// if $.escapeSelector doesn't exist in older jQuery versions (< 3)
var tmpEscapeSelector = $.escapeSelector
delete $.escapeSelector
assert.ok(typeof $.escapeSelector === 'undefined', '$.escapeSelector undefined')
assert.strictEqual(Util.getSelectorFromElement($el3[0]), '#collapse\\:Example')
$.escapeSelector = tmpEscapeSelector
})
QUnit.test('Util.typeCheckConfig should thrown an error when a bad config is passed', function (assert) {