From 189380d4ea54899b8de88b93c3bc0a712b14400b Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Tue, 17 May 2016 14:52:45 -0700 Subject: [PATCH] Add spec for devtools extension --- spec/api-browser-window-spec.js | 24 ++++++++++++++++++++++ spec/fixtures/devtools-extensions/foo/foo.html | 10 +++++++++ spec/fixtures/devtools-extensions/foo/index.html | 14 +++++++++++++ .../fixtures/devtools-extensions/foo/manifest.json | 4 +++- 4 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 spec/fixtures/devtools-extensions/foo/foo.html create mode 100644 spec/fixtures/devtools-extensions/foo/index.html diff --git a/spec/api-browser-window-spec.js b/spec/api-browser-window-spec.js index a8dd8a3..168aceb 100644 --- a/spec/api-browser-window-spec.js +++ b/spec/api-browser-window-spec.js @@ -824,6 +824,30 @@ describe('browser-window module', function () { }) describe('dev tool extensions', function () { + describe('BrowserWindow.addDevToolsExtension', function () { + it('creates the extension', function (done) { + var extensionPath = path.join(__dirname, 'fixtures', 'devtools-extensions', 'foo') + BrowserWindow.addDevToolsExtension(extensionPath) + + w.webContents.on('devtools-opened', () => { + var inputEventIntervalId = setInterval(function () { + if (w && w.devToolsWebContents) { + w.devToolsWebContents.sendInputEvent({type: 'keyDown', keyCode:'[', modifiers: ['meta']}) + } else { + clearInterval(inputEventIntervalId) + } + }, 250) + }) + w.loadURL('about:blank') + w.webContents.openDevTools({mode: 'bottom'}) + + ipcMain.once('answer', function (event, message) { + assert.equal(message, 'extension loaded') + done() + }) + }) + }) + it('serializes the registered extensions on quit', function () { var extensionName = 'foo' var extensionPath = path.join(__dirname, 'fixtures', 'devtools-extensions', extensionName) diff --git a/spec/fixtures/devtools-extensions/foo/foo.html b/spec/fixtures/devtools-extensions/foo/foo.html new file mode 100644 index 0000000..a326639 --- /dev/null +++ b/spec/fixtures/devtools-extensions/foo/foo.html @@ -0,0 +1,10 @@ + + + + + foo + + + diff --git a/spec/fixtures/devtools-extensions/foo/index.html b/spec/fixtures/devtools-extensions/foo/index.html new file mode 100644 index 0000000..4e74394 --- /dev/null +++ b/spec/fixtures/devtools-extensions/foo/index.html @@ -0,0 +1,14 @@ + + + + + + + + + a custom devtools extension + + diff --git a/spec/fixtures/devtools-extensions/foo/manifest.json b/spec/fixtures/devtools-extensions/foo/manifest.json index bde99de..413853e 100644 --- a/spec/fixtures/devtools-extensions/foo/manifest.json +++ b/spec/fixtures/devtools-extensions/foo/manifest.json @@ -1,3 +1,5 @@ { - "name": "foo" + "name": "foo", + "version": "1.0", + "devtools_page": "foo.html" } -- 2.7.4