| Index: lib/src/iron-overlay-behavior/test/iron-overlay-behavior.html
|
| diff --git a/lib/src/iron-overlay-behavior/test/iron-overlay-behavior.html b/lib/src/iron-overlay-behavior/test/iron-overlay-behavior.html
|
| index f821e5589945a7f8b31a3bac0ed4c2128e38773f..a352a4b18948fc2116b9978176cbd9339f7bfefa 100644
|
| --- a/lib/src/iron-overlay-behavior/test/iron-overlay-behavior.html
|
| +++ b/lib/src/iron-overlay-behavior/test/iron-overlay-behavior.html
|
| @@ -86,7 +86,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
|
|
| function runAfterOpen(overlay, cb) {
|
| overlay.addEventListener('iron-overlay-opened', function() {
|
| - cb();
|
| + Polymer.Base.async(cb, 1);
|
| });
|
| overlay.open();
|
| }
|
| @@ -181,6 +181,15 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
|
|
| test('cancel an overlay by clicking outside', function(done) {
|
| runAfterOpen(overlay, function() {
|
| + overlay.addEventListener('iron-overlay-canceled', function(event) {
|
| + done();
|
| + });
|
| + Polymer.Base.fire.call(document, 'click');
|
| + });
|
| + });
|
| +
|
| + test('close an overlay by clicking outside', function(done) {
|
| + runAfterOpen(overlay, function() {
|
| overlay.addEventListener('iron-overlay-closed', function(event) {
|
| assert.isTrue(event.detail.canceled, 'overlay is canceled');
|
| done();
|
| @@ -189,8 +198,36 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
| });
|
| });
|
|
|
| + test('cancel event can be prevented', function(done) {
|
| + runAfterOpen(overlay, function() {
|
| + overlay.addEventListener('iron-overlay-canceled', function(event) {
|
| + event.preventDefault();
|
| + });
|
| + var closedListener = function(event) {
|
| + throw new Error('iron-overlay-closed should not fire');
|
| + };
|
| + overlay.addEventListener('iron-overlay-closed', closedListener);
|
| + Polymer.Base.fire.call(document, 'click');
|
| + setTimeout(function() {
|
| + overlay.removeEventListener('iron-overlay-closed', closedListener);
|
| + done();
|
| + }, 10);
|
| + });
|
| + });
|
| +
|
| test('cancel an overlay with esc key', function(done) {
|
| runAfterOpen(overlay, function() {
|
| + overlay.addEventListener('iron-overlay-canceled', function(event) {
|
| + done();
|
| + });
|
| + fireEvent('keydown', {
|
| + keyCode: 27
|
| + }, document);
|
| + });
|
| + });
|
| +
|
| + test('close an overlay with esc key', function(done) {
|
| + runAfterOpen(overlay, function() {
|
| overlay.addEventListener('iron-overlay-closed', function(event) {
|
| assert.isTrue(event.detail.canceled, 'overlay is canceled');
|
| done();
|
|
|