summaryrefslogtreecommitdiffstats
path: root/polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html')
-rw-r--r--polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html32
1 files changed, 31 insertions, 1 deletions
diff --git a/polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html b/polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html
index ab31f7cb4c..7bb4dce5fe 100644
--- a/polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html
+++ b/polygerrit-ui/app/elements/shared/gr-dropdown/gr-dropdown_test.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<!--
+@license
Copyright (C) 2016 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
@@ -48,11 +49,19 @@ limitations under the License.
sandbox.restore();
});
- test('tap on trigger opens menu', () => {
+ test('_computeIsDownload', () => {
+ assert.isTrue(element._computeIsDownload({download: true}));
+ assert.isFalse(element._computeIsDownload({download: false}));
+ });
+
+ test('tap on trigger opens menu, then closes', () => {
sandbox.stub(element, '_open', () => { element.$.dropdown.open(); });
+ sandbox.stub(element, '_close', () => { element.$.dropdown.close(); });
assert.isFalse(element.$.dropdown.opened);
MockInteractions.tap(element.$.trigger);
assert.isTrue(element.$.dropdown.opened);
+ MockInteractions.tap(element.$.trigger);
+ assert.isFalse(element.$.dropdown.opened);
});
test('_computeURLHelper', () => {
@@ -64,6 +73,12 @@ limitations under the License.
test('link URLs', () => {
assert.equal(
+ element._computeLinkURL({url: 'http://example.com/test'}),
+ 'http://example.com/test');
+ assert.equal(
+ element._computeLinkURL({url: 'https://example.com/test'}),
+ 'https://example.com/test');
+ assert.equal(
element._computeLinkURL({url: '/test'}),
'//' + window.location.host + '/test');
assert.equal(
@@ -130,6 +145,21 @@ limitations under the License.
assert.isFalse(tapped.called);
});
+ test('properly sets tooltips', () => {
+ element.items = [
+ {name: 'item one', id: 'foo', tooltip: 'hello'},
+ {name: 'item two', id: 'bar'},
+ ];
+ element.disabledIds = [];
+ flushAsynchronousOperations();
+ const tooltipContents = Polymer.dom(element.root)
+ .querySelectorAll('iron-dropdown li gr-tooltip-content');
+ assert.equal(tooltipContents.length, 2);
+ assert.isTrue(tooltipContents[0].hasTooltip);
+ assert.equal(tooltipContents[0].getAttribute('title'), 'hello');
+ assert.isFalse(tooltipContents[1].hasTooltip);
+ });
+
suite('keyboard navigation', () => {
setup(() => {
element.items = [