Skip to content

Commit 35a1aca

Browse files
#12342: JSTestDriver removal
- Added menu.test.js and removed JsTestDriver equivalent.
1 parent ad90a47 commit 35a1aca

File tree

3 files changed

+115
-145
lines changed

3 files changed

+115
-145
lines changed

dev/tests/js/JsTestDriver/testsuite/mage/menu/test-menu.js

Lines changed: 0 additions & 112 deletions
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,19 @@
1-
<!--
2-
/**
3-
* @category mage.menu
4-
* @package test
5-
* Copyright © Magento, Inc. All rights reserved.
6-
* See COPYING.txt for license details.
7-
*/
8-
-->
9-
10-
<!DOCTYPE html>
11-
<html>
12-
<head>
13-
<title>Unit test</title>
14-
<base href="../../../"/>
15-
<link type="text/css" rel="stylesheet" href="framework/qunit/qunit-1.14.0.css"/>
16-
<script type="text/javascript" src="framework/qunit/qunit-1.14.0.js"></script>
17-
<script src="../../../pub/lib/jquery.js"></script>
18-
<script src="../../../pub/lib/jquery/jquery-ui.js"></script>
19-
<script type="text/javascript" src="../../../pub/lib/mage/mage.js"></script>
20-
<script type="text/javascript" src="../../../pub/lib/mage/menu.js"></script>
21-
<script type="text/javascript" src="../../../pub/lib/mage/bootstrap.js"></script>
22-
<script type="text/javascript" src="testsuite/mage/menu/test-menu.js"></script>
23-
24-
</head>
25-
<body>
26-
<div id="qunit"></div>
27-
<div id="qunit-fixture">
281
<ul id="menu">
292
<li class="foo">Aberdeen</li>
303
<li class="foo">Ada</li>
314
<li class="foo">Adamsville</li>
325
<li class="foo"><span class="ui-icon ui-icon-print"></span>Addyston</li>
33-
<li>Delphi
6+
<li class="test-menu-item">
7+
<a>Delphi</a>
348
<ul>
359
<li class="foo">Ada</li>
3610
<li class="foo">Saarland</li>
3711
<li class="foo">Salzburg</li>
3812
</ul>
3913
</li>
4014
<li class="foo">Saarland</li>
41-
<li>Salzburg
15+
<li>
16+
<a>Salzburg</a>
4217
<ul>
4318
<li>Delphi
4419
<ul>
@@ -60,7 +35,4 @@
6035
<li class="foo">Perch</li>
6136
</ul>
6237
</li>
63-
</ul>
64-
</div>
65-
</body>
66-
</html>
38+
</ul>
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
/**
2+
* Copyright © Magento, Inc. All rights reserved.
3+
* See COPYING.txt for license details.
4+
*/
5+
6+
/* eslint-disable max-nested-callbacks */
7+
define([
8+
'jquery',
9+
'mage/menu',
10+
'text!tests/assets/lib/web/mage/menu.html'
11+
], function ($, menu, menuTmpl) {
12+
'use strict';
13+
14+
describe('mage/menu', function () {
15+
describe('Menu expanded', function () {
16+
var menuSelector = '#menu';
17+
18+
beforeEach(function () {
19+
var $menu = $(menuTmpl);
20+
21+
$('body').append($menu);
22+
});
23+
24+
afterEach(function () {
25+
$(menuSelector).remove();
26+
});
27+
28+
it('Check that menu expanded', function () {
29+
var $menu = $(menuSelector),
30+
$menuItems = $menu.find('li'),
31+
$submenu = $menuItems.find('ul');
32+
33+
$menu.menu({
34+
expanded: true
35+
});
36+
expect($submenu.hasClass('expanded')).toBe(true);
37+
});
38+
});
39+
40+
describe('Menu hover event', function () {
41+
var menuSelector = '#menu',
42+
$menu;
43+
44+
beforeEach(function () {
45+
var $menuObject = $(menuTmpl);
46+
47+
$('body').append($menuObject);
48+
$menu = $(menuSelector).menu({
49+
delay: 0,
50+
showDelay: 0,
51+
hideDelay: 0
52+
});
53+
});
54+
55+
afterEach(function () {
56+
$(menuSelector).remove();
57+
});
58+
59+
it('Check that menu expanded', function (done) {
60+
var $menuItem = $menu.find('li.test-menu-item'),
61+
$submenu = $menuItem.find('ul');
62+
63+
$menuItem.trigger('mouseover');
64+
setTimeout(function () {
65+
expect($submenu.attr('aria-expanded')).toBe('true');
66+
$menuItem.trigger('mouseout');
67+
setTimeout(function () {
68+
expect($submenu.attr('aria-expanded')).toBe('false');
69+
done();
70+
}, 300);
71+
}, 300);
72+
});
73+
});
74+
75+
describe('Menu navigation', function () {
76+
var menuSelector = '#menu',
77+
$menu;
78+
79+
beforeEach(function () {
80+
var $menuObject = $(menuTmpl);
81+
82+
$('body').append($menuObject);
83+
$menu = $(menuSelector).menu();
84+
});
85+
86+
afterEach(function () {
87+
$(menuSelector).remove();
88+
});
89+
90+
it('Check max item limit', function () {
91+
var $menuItems;
92+
93+
$menu.navigation({
94+
maxItems: 3
95+
});
96+
$menuItems = $menu.find('li:visible');
97+
98+
expect($menuItems.length).toBe(4);
99+
});
100+
101+
it('Check that More Menu item will be added', function () {
102+
$menu.navigation({
103+
responsive: 'onResize'
104+
});
105+
106+
expect($('body').find('.ui-menu-more').length).toBeGreaterThan(0);
107+
});
108+
});
109+
});
110+
});

0 commit comments

Comments
 (0)