diff options
| author | XhmikosR <[email protected]> | 2017-09-26 17:46:16 +0300 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-09-26 17:46:16 +0300 |
| commit | c090c79a709a84cb6e2bd5dbed6343ae49c861a1 (patch) | |
| tree | cadb5d1e7a94588047081bb8d8c4f92914aaf043 /js/tests | |
| parent | 8e56145e45e9d58e23c5f339b6cac50e751e36a7 (diff) | |
| parent | 3eae92f1fec3c84acf38bd7e16a14eac48868334 (diff) | |
| download | bootstrap-c090c79a709a84cb6e2bd5dbed6343ae49c861a1.tar.xz bootstrap-c090c79a709a84cb6e2bd5dbed6343ae49c861a1.zip | |
Merge branch 'v4-dev' into btn-active
Diffstat (limited to 'js/tests')
| -rw-r--r-- | js/tests/unit/collapse.js | 44 | ||||
| -rw-r--r-- | js/tests/unit/popover.js | 2 | ||||
| -rw-r--r-- | js/tests/unit/scrollspy.js | 41 | ||||
| -rw-r--r-- | js/tests/unit/tab.js | 26 | ||||
| -rw-r--r-- | js/tests/visual/carousel.html | 6 |
5 files changed, 102 insertions, 17 deletions
diff --git a/js/tests/unit/collapse.js b/js/tests/unit/collapse.js index 9ecb60994..c36fe25be 100644 --- a/js/tests/unit/collapse.js +++ b/js/tests/unit/collapse.js @@ -698,4 +698,48 @@ $(function () { $target.trigger($.Event('click')) }) + + QUnit.test('should allow jquery object in parent config', function (assert) { + assert.expect(1) + var html = + '<div class="my-collapse">' + + ' <div class="item">' + + ' <a data-toggle="collapse" href="#">Toggle item</a>' + + ' <div class="collapse">Lorem ipsum</div>' + + ' </div>' + + '</div>' + + $(html).appendTo('#qunit-fixture') + try { + $('[data-toggle="collapse"]').bootstrapCollapse({ + parent: $('.my-collapse') + }) + assert.ok(true, 'collapse correctly created') + } + catch (e) { + assert.ok(false, 'collapse not created') + } + }) + + QUnit.test('should allow DOM object in parent config', function (assert) { + assert.expect(1) + var html = + '<div class="my-collapse">' + + ' <div class="item">' + + ' <a data-toggle="collapse" href="#">Toggle item</a>' + + ' <div class="collapse">Lorem ipsum</div>' + + ' </div>' + + '</div>' + + $(html).appendTo('#qunit-fixture') + try { + $('[data-toggle="collapse"]').bootstrapCollapse({ + parent: $('.my-collapse')[0] + }) + assert.ok(true, 'collapse correctly created') + } + catch (e) { + assert.ok(false, 'collapse not created') + } + }) }) diff --git a/js/tests/unit/popover.js b/js/tests/unit/popover.js index 6c0f99cba..b5ea714ea 100644 --- a/js/tests/unit/popover.js +++ b/js/tests/unit/popover.js @@ -242,7 +242,7 @@ $(function () { QUnit.test('should render popover element using delegated selector', function (assert) { assert.expect(2) - var $div = $('<div><a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a></div>') + var $div = $('<div><a href="#" title="mdo" data-content="https://twitter.com/mdo">@mdo</a></div>') .appendTo('#qunit-fixture') .bootstrapPopover({ selector: 'a', diff --git a/js/tests/unit/scrollspy.js b/js/tests/unit/scrollspy.js index 96cf54eef..7bdeb4a8d 100644 --- a/js/tests/unit/scrollspy.js +++ b/js/tests/unit/scrollspy.js @@ -360,6 +360,47 @@ $(function () { testActiveElements() }) + + QUnit.test('should add the active class correctly when there are nested elements (nav nav-item markup)', function (assert) { + assert.expect(6) + var times = 0 + var done = assert.async() + var navbarHtml = '<nav id="navigation" class="navbar">' + + '<ul class="nav">' + + '<li class="nav-item"><a id="a-1" class="nav-link" href="#div-1">div 1</a></li>' + + '<ul class="nav">' + + '<li class="nav-item"><a id="a-2" class="nav-link" href="#div-2">div 2</a></li>' + + '</ul>' + + '</ul>' + + '</nav>' + + var contentHtml = '<div class="content" style="position: absolute; top: 0px; overflow: auto; height: 50px">' + + '<div id="div-1" style="padding: 0; margin: 0">' + + '<div id="div-2" style="height: 200px; padding: 0; margin: 0">div 2</div>' + + '</div>' + + '</div>' + + $(navbarHtml).appendTo('#qunit-fixture') + + var $content = $(contentHtml) + .appendTo('#qunit-fixture') + .bootstrapScrollspy({ offset: 0, target: '#navigation' }) + + function testActiveElements() { + if (++times > 3) { return done() } + + $content.one('scroll', function () { + assert.ok($('#a-1').hasClass('active'), 'nav item for outer element has "active" class') + assert.ok($('#a-2').hasClass('active'), 'nav item for inner element has "active" class') + testActiveElements() + }) + + $content.scrollTop($content.scrollTop() + 10) + } + + testActiveElements() + }) + QUnit.test('should add the active class correctly when there are nested elements (list-group markup)', function (assert) { assert.expect(6) var times = 0 diff --git a/js/tests/unit/tab.js b/js/tests/unit/tab.js index 3093299b0..73ebbd660 100644 --- a/js/tests/unit/tab.js +++ b/js/tests/unit/tab.js @@ -287,29 +287,29 @@ $(function () { .bootstrapTab('show') }) - QUnit.test('selected tab should have aria-expanded', function (assert) { + QUnit.test('selected tab should have aria-selected', function (assert) { assert.expect(8) var tabsHTML = '<ul class="nav nav-tabs">' - + '<li><a class="nav-item active" href="#home" toggle="tab" aria-expanded="true">Home</a></li>' - + '<li><a class="nav-item" href="#profile" toggle="tab" aria-expanded="false">Profile</a></li>' + + '<li><a class="nav-item active" href="#home" toggle="tab" aria-selected="true">Home</a></li>' + + '<li><a class="nav-item" href="#profile" toggle="tab" aria-selected="false">Profile</a></li>' + '</ul>' var $tabs = $(tabsHTML).appendTo('#qunit-fixture') $tabs.find('li:first a').bootstrapTab('show') - assert.strictEqual($tabs.find('.active').attr('aria-expanded'), 'true', 'shown tab has aria-expanded = true') - assert.strictEqual($tabs.find('a:not(.active)').attr('aria-expanded'), 'false', 'hidden tab has aria-expanded = false') + assert.strictEqual($tabs.find('.active').attr('aria-selected'), 'true', 'shown tab has aria-selected = true') + assert.strictEqual($tabs.find('a:not(.active)').attr('aria-selected'), 'false', 'hidden tab has aria-selected = false') $tabs.find('li:last a').trigger('click') - assert.strictEqual($tabs.find('.active').attr('aria-expanded'), 'true', 'after click, shown tab has aria-expanded = true') - assert.strictEqual($tabs.find('a:not(.active)').attr('aria-expanded'), 'false', 'after click, hidden tab has aria-expanded = false') + assert.strictEqual($tabs.find('.active').attr('aria-selected'), 'true', 'after click, shown tab has aria-selected = true') + assert.strictEqual($tabs.find('a:not(.active)').attr('aria-selected'), 'false', 'after click, hidden tab has aria-selected = false') $tabs.find('li:first a').bootstrapTab('show') - assert.strictEqual($tabs.find('.active').attr('aria-expanded'), 'true', 'shown tab has aria-expanded = true') - assert.strictEqual($tabs.find('a:not(.active)').attr('aria-expanded'), 'false', 'hidden tab has aria-expanded = false') + assert.strictEqual($tabs.find('.active').attr('aria-selected'), 'true', 'shown tab has aria-selected = true') + assert.strictEqual($tabs.find('a:not(.active)').attr('aria-selected'), 'false', 'hidden tab has aria-selected = false') $tabs.find('li:first a').trigger('click') - assert.strictEqual($tabs.find('.active').attr('aria-expanded'), 'true', 'after second show event, shown tab still has aria-expanded = true') - assert.strictEqual($tabs.find('a:not(.active)').attr('aria-expanded'), 'false', 'after second show event, hidden tab has aria-expanded = false') + assert.strictEqual($tabs.find('.active').attr('aria-selected'), 'true', 'after second show event, shown tab still has aria-selected = true') + assert.strictEqual($tabs.find('a:not(.active)').attr('aria-selected'), 'false', 'after second show event, hidden tab has aria-selected = false') }) QUnit.test('selected tab should deactivate previous selected tab', function (assert) { @@ -351,13 +351,13 @@ $(function () { var tabsHTML = '<nav class="nav nav-tabs" role="tablist">' + ' <a id="tab1" href="#x-tab1" class="nav-item nav-link" data-toggle="tab" role="tab" aria-controls="x-tab1">Tab 1</a>' - + ' <a href="#x-tab2" class="nav-item nav-link active" data-toggle="tab" role="tab" aria-controls="x-tab2" aria-expanded="true">Tab 2</a>' + + ' <a href="#x-tab2" class="nav-item nav-link active" data-toggle="tab" role="tab" aria-controls="x-tab2" aria-selected="true">Tab 2</a>' + ' <a href="#x-tab3" class="nav-item nav-link" data-toggle="tab" role="tab" aria-controls="x-tab3">Tab 3</a>' + '</nav>' + '<div class="tab-content">' + ' <div class="tab-pane" id="x-tab1" role="tabpanel">' + ' <nav class="nav nav-tabs" role="tablist">' - + ' <a href="#nested-tab1" class="nav-item nav-link active" data-toggle="tab" role="tab" aria-controls="x-tab1" aria-expanded="true">Nested Tab 1</a>' + + ' <a href="#nested-tab1" class="nav-item nav-link active" data-toggle="tab" role="tab" aria-controls="x-tab1" aria-selected="true">Nested Tab 1</a>' + ' <a id="tabNested2" href="#nested-tab2" class="nav-item nav-link" data-toggle="tab" role="tab" aria-controls="x-profile">Nested Tab2</a>' + ' </nav>' + ' <div class="tab-content">' diff --git a/js/tests/visual/carousel.html b/js/tests/visual/carousel.html index eae9df705..26fb66c9d 100644 --- a/js/tests/visual/carousel.html +++ b/js/tests/visual/carousel.html @@ -20,13 +20,13 @@ </ol> <div class="carousel-inner"> <div class="carousel-item active"> - <img src="http://i.imgur.com/iEZgY7Y.jpg" alt="First slide"> + <img src="https://i.imgur.com/iEZgY7Y.jpg" alt="First slide"> </div> <div class="carousel-item"> - <img src="http://i.imgur.com/eNWn1Xs.jpg" alt="Second slide"> + <img src="https://i.imgur.com/eNWn1Xs.jpg" alt="Second slide"> </div> <div class="carousel-item"> - <img src="http://i.imgur.com/Nm7xoti.jpg" alt="Third slide"> + <img src="https://i.imgur.com/Nm7xoti.jpg" alt="Third slide"> </div> </div> <a class="carousel-control-prev" href="#carousel-example-generic" role="button" data-slide="prev"> |
