From f06f8ae73b66bbe068bef079896944751b7de856 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Tue, 22 Sep 2015 21:17:50 +0800 Subject: [PATCH] spec: Add test for allowpopups attribute --- spec/fixtures/pages/window-open-hide.html | 12 ++++++++++++ spec/webview-spec.coffee | 20 ++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 spec/fixtures/pages/window-open-hide.html diff --git a/spec/fixtures/pages/window-open-hide.html b/spec/fixtures/pages/window-open-hide.html new file mode 100644 index 000000000000..d6eb7403ac66 --- /dev/null +++ b/spec/fixtures/pages/window-open-hide.html @@ -0,0 +1,12 @@ + + + + + + diff --git a/spec/webview-spec.coffee b/spec/webview-spec.coffee index 961da0b9f160..c60af8d74d1f 100644 --- a/spec/webview-spec.coffee +++ b/spec/webview-spec.coffee @@ -201,6 +201,26 @@ describe ' tag', -> webview.src = "file://#{fixtures}/pages/partition/one.html" document.body.appendChild webview + describe 'allowpopups attribute', -> + it 'can not open new window when not set', (done) -> + listener = (e) -> + assert.equal e.message, 'null' + webview.removeEventListener 'console-message', listener + done() + webview.addEventListener 'console-message', listener + webview.src = "file://#{fixtures}/pages/window-open-hide.html" + document.body.appendChild webview + + it 'can open new window when set', (done) -> + listener = (e) -> + assert.equal e.message, 'window' + webview.removeEventListener 'console-message', listener + done() + webview.addEventListener 'console-message', listener + webview.setAttribute 'allowpopups', 'on' + webview.src = "file://#{fixtures}/pages/window-open-hide.html" + document.body.appendChild webview + describe 'new-window event', -> it 'emits when window.open is called', (done) -> webview.addEventListener 'new-window', (e) ->