mirror of
https://github.com/twbs/bootstrap.git
synced 2025-08-11 16:14:04 +02:00
fix(data): increase coverage for data
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap (v4.0.0-beta): dom/data.js
|
* Bootstrap (v4.1.1): dom/data.js
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@@ -12,7 +12,6 @@ const Data = (() => {
|
|||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
const mapData = (() => {
|
const mapData = (() => {
|
||||||
const storeData = {}
|
const storeData = {}
|
||||||
let id = 1
|
let id = 1
|
||||||
|
@@ -93,9 +93,16 @@ if (bundle) {
|
|||||||
reporters.push('BrowserStack')
|
reporters.push('BrowserStack')
|
||||||
files = files.concat([
|
files = files.concat([
|
||||||
'node_modules/jquery/dist/jquery.slim.min.js',
|
'node_modules/jquery/dist/jquery.slim.min.js',
|
||||||
'js/dist/util.js',
|
'js/coverage/dist/dom/eventHandler.js',
|
||||||
'js/dist/tooltip.js',
|
'js/coverage/dist/dom/selectorEngine.js',
|
||||||
'js/dist/!(util|index|tooltip).js' // include all of our js/dist files except util.js, index.js and tooltip.js
|
'js/coverage/dist/dom/data.js',
|
||||||
|
'js/coverage/dist/dom/manipulator.js',
|
||||||
|
'js/coverage/dist/util.js',
|
||||||
|
'js/coverage/dist/dom/*.js',
|
||||||
|
'js/coverage/dist/tooltip.js',
|
||||||
|
'js/coverage/dist/!(util|index|tooltip).js', // include all of our js/dist files except util.js, index.js and tooltip.js
|
||||||
|
'js/tests/unit/*.js',
|
||||||
|
'js/tests/unit/dom/*.js'
|
||||||
])
|
])
|
||||||
} else {
|
} else {
|
||||||
frameworks.push('detectBrowsers')
|
frameworks.push('detectBrowsers')
|
||||||
@@ -112,8 +119,11 @@ if (bundle) {
|
|||||||
'js/coverage/dist/dom/data.js',
|
'js/coverage/dist/dom/data.js',
|
||||||
'js/coverage/dist/dom/manipulator.js',
|
'js/coverage/dist/dom/manipulator.js',
|
||||||
'js/coverage/dist/util.js',
|
'js/coverage/dist/util.js',
|
||||||
|
'js/coverage/dist/dom/*.js',
|
||||||
'js/coverage/dist/tooltip.js',
|
'js/coverage/dist/tooltip.js',
|
||||||
'js/coverage/dist/!(util|index|tooltip).js' // include all of our js/dist files except util.js, index.js and tooltip.js
|
'js/coverage/dist/!(util|index|tooltip).js', // include all of our js/dist files except util.js, index.js and tooltip.js
|
||||||
|
'js/tests/unit/*.js',
|
||||||
|
'js/tests/unit/dom/*.js'
|
||||||
])
|
])
|
||||||
reporters.push('coverage-istanbul')
|
reporters.push('coverage-istanbul')
|
||||||
conf.customLaunchers = customLaunchers
|
conf.customLaunchers = customLaunchers
|
||||||
|
@@ -8,6 +8,7 @@
|
|||||||
"bootstrap": false,
|
"bootstrap": false,
|
||||||
"sinon": false,
|
"sinon": false,
|
||||||
"Util": false,
|
"Util": false,
|
||||||
|
"Data": false,
|
||||||
"Alert": false,
|
"Alert": false,
|
||||||
"Button": false,
|
"Button": false,
|
||||||
"Carousel": false,
|
"Carousel": false,
|
||||||
|
83
js/tests/unit/dom/data.js
Normal file
83
js/tests/unit/dom/data.js
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
$(function () {
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
QUnit.module('data')
|
||||||
|
|
||||||
|
QUnit.test('should be defined', function (assert) {
|
||||||
|
assert.expect(1)
|
||||||
|
assert.ok(Data, 'Data is defined')
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should set data in a element', function (assert) {
|
||||||
|
assert.expect(1)
|
||||||
|
|
||||||
|
var $div = $('<div />').appendTo('#qunit-fixture')
|
||||||
|
var data = {
|
||||||
|
test: 'bsData'
|
||||||
|
}
|
||||||
|
Data.setData($div[0], 'test', data)
|
||||||
|
|
||||||
|
assert.ok($div[0].key, 'element have a data key')
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should get data from an element', function (assert) {
|
||||||
|
assert.expect(1)
|
||||||
|
|
||||||
|
var $div = $('<div />').appendTo('#qunit-fixture')
|
||||||
|
var data = {
|
||||||
|
test: 'bsData'
|
||||||
|
}
|
||||||
|
Data.setData($div[0], 'test', data)
|
||||||
|
|
||||||
|
assert.strictEqual(Data.getData($div[0], 'test'), data)
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should return null if nothing is stored', function (assert) {
|
||||||
|
assert.expect(1)
|
||||||
|
assert.ok(Data.getData(document.body, 'test') === null)
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should return null if nothing is stored with an existing key', function (assert) {
|
||||||
|
assert.expect(1)
|
||||||
|
|
||||||
|
var $div = $('<div />').appendTo('#qunit-fixture')
|
||||||
|
$div[0].key = {
|
||||||
|
key: 'test2',
|
||||||
|
data: 'woot woot'
|
||||||
|
}
|
||||||
|
|
||||||
|
assert.ok(Data.getData($div[0], 'test') === null)
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should delete data', function (assert) {
|
||||||
|
assert.expect(2)
|
||||||
|
|
||||||
|
var $div = $('<div />').appendTo('#qunit-fixture')
|
||||||
|
var data = {
|
||||||
|
test: 'bsData'
|
||||||
|
}
|
||||||
|
Data.setData($div[0], 'test', data)
|
||||||
|
assert.ok(Data.getData($div[0], 'test') !== null)
|
||||||
|
|
||||||
|
Data.removeData($div[0], 'test')
|
||||||
|
assert.ok(Data.getData($div[0], 'test') === null)
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should delete nothing if there are nothing', function (assert) {
|
||||||
|
assert.expect(0)
|
||||||
|
|
||||||
|
Data.removeData(document.body, 'test')
|
||||||
|
})
|
||||||
|
|
||||||
|
QUnit.test('should delete nothing if not the good key', function (assert) {
|
||||||
|
assert.expect(0)
|
||||||
|
|
||||||
|
var $div = $('<div />').appendTo('#qunit-fixture')
|
||||||
|
$div[0].key = {
|
||||||
|
key: 'test2',
|
||||||
|
data: 'woot woot'
|
||||||
|
}
|
||||||
|
|
||||||
|
Data.removeData($div[0], 'test')
|
||||||
|
})
|
||||||
|
})
|
Reference in New Issue
Block a user