diff options
| author | Johann-S <[email protected]> | 2017-10-25 09:32:21 +0200 |
|---|---|---|
| committer | Johann-S <[email protected]> | 2017-10-25 12:59:40 +0200 |
| commit | 988327032d6b76fdb70075feb7254bcb053ec117 (patch) | |
| tree | df57ebbec1170fc827101f44dade9f58a9dc1b5f /js | |
| parent | 96110893af29f7505b9992a25e6cc910a2851e33 (diff) | |
| download | bootstrap-988327032d6b76fdb70075feb7254bcb053ec117.tar.xz bootstrap-988327032d6b76fdb70075feb7254bcb053ec117.zip | |
Add unit tests for util.js
Diffstat (limited to 'js')
| -rw-r--r-- | js/tests/index.html | 1 | ||||
| -rw-r--r-- | js/tests/unit/util.js | 57 |
2 files changed, 58 insertions, 0 deletions
diff --git a/js/tests/index.html b/js/tests/index.html index 2383fce6e..0385b8a2b 100644 --- a/js/tests/index.html +++ b/js/tests/index.html @@ -119,6 +119,7 @@ <script src="unit/tab.js"></script> <script src="unit/tooltip.js"></script> <script src="unit/popover.js"></script> + <script src="unit/util.js"></script> </head> <body> <div id="qunit-container"> diff --git a/js/tests/unit/util.js b/js/tests/unit/util.js new file mode 100644 index 000000000..372c6e3f7 --- /dev/null +++ b/js/tests/unit/util.js @@ -0,0 +1,57 @@ +$(function () { + 'use strict' + + QUnit.module('util') + + QUnit.test('Util.getSelectorFromElement should return the correct element', function (assert) { + assert.expect(2) + 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) + }) + + QUnit.test('Util.typeCheckConfig should thrown an error when a bad config is passed', function (assert) { + assert.expect(1) + var namePlugin = 'collapse' + var defaultType = { + toggle : 'boolean', + parent : '(string|element)' + } + var config = { + toggle: true, + parent: 777 + } + + try { + Util.typeCheckConfig(namePlugin, config, defaultType) + } catch (e) { + assert.strictEqual(e.message, 'COLLAPSE: Option "parent" provided type "number" but expected type "(string|element)".') + } + }) + + QUnit.test('Util.isElement should check if we passed an element or not', function (assert) { + assert.expect(3) + var $div = $('<div id="test"></div>').appendTo($('#qunit-fixture')) + + assert.strictEqual(Util.isElement($div), 1) + assert.strictEqual(Util.isElement($div[0]), 1) + assert.strictEqual(typeof Util.isElement({}) === 'undefined', true) + }) + + QUnit.test('Util.getUID should generate a new id uniq', function (assert) { + assert.expect(2) + var id = Util.getUID('test') + var id2 = Util.getUID('test') + + assert.ok(id !== id2, id + ' !== ' + id2) + + id = Util.getUID('test') + $('<div id="' + id + '"></div>').appendTo($('#qunit-fixture')) + + id2 = Util.getUID('test') + assert.ok(id !== id2, id + ' !== ' + id2) + }) +}) |
