Skip to content

Commit 6c7b796

Browse files
committed
Test for visibility
1 parent 4dbcaff commit 6c7b796

File tree

1 file changed

+24
-5
lines changed

1 file changed

+24
-5
lines changed

test/unit/test-events.js

+24-5
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ var menuRuntime = null;
66
module('contextMenu events');
77

88
// before each test
9-
function createContextMenu() {
9+
function createContextMenu(items) {
1010
var $fixture = $("#qunit-fixture");
1111

1212
// ensure `#qunit-fixture` exists when testing with karma runner
@@ -17,6 +17,13 @@ function createContextMenu() {
1717

1818
$fixture.append("<div class='context-menu'>right click me!</div>");
1919

20+
if(!items){
21+
items = {
22+
"copy": {name: "Copy", icon: "copy"},
23+
"paste": {name: "Paste", icon: "paste"}
24+
};
25+
}
26+
2027
$.contextMenu({
2128
selector: '.context-menu',
2229
events: {
@@ -31,10 +38,7 @@ function createContextMenu() {
3138
callback: function(key, options) {
3239
itemSelectedCounter = itemSelectedCounter + 1;
3340
},
34-
items: {
35-
"copy": {name: "Copy", icon: "copy"},
36-
"paste": {name: "Paste", icon: "paste"}
37-
}
41+
items: items
3842
});
3943
};
4044

@@ -115,3 +119,18 @@ test('activate contextMenu item', function() {
115119
equal(itemSelectedCounter, 1, 'selected menu item was clicked once');
116120
destroyContextMenuAndCleanup();
117121
});
122+
123+
124+
125+
test('do not open context menu with no visible items', function() {
126+
createContextMenu( items = {
127+
"copy": {name: "Copy", icon: "copy", visible: function(){return false}},
128+
"paste": {name: "Paste", icon: "paste", visible: function(){return false}}
129+
130+
});
131+
$(".context-menu").contextMenu();
132+
133+
equal(menuOpenCounter, 0, 'selected menu wat not opened');
134+
destroyContextMenuAndCleanup();
135+
});
136+

0 commit comments

Comments
 (0)