diff options
author | Shin'ya Ueoka <ueokande@i-beam.org> | 2018-05-14 20:57:39 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-14 20:57:39 +0900 |
commit | e9a6fb85583a891cba2683f2abb05f34e13bff43 (patch) | |
tree | f9879006fc6475a1cf9fd98bffd1b9541f5aa4c9 /e2e/ambassador/src | |
parent | c6c885345e212bedc2723e9105488d3e5fe9f8be (diff) | |
parent | a8d3de42434153d90eebdcceb536ce0537c9167f (diff) |
Merge pull request #392 from ueokande/e2e-testing
Add e2e test cases
Diffstat (limited to 'e2e/ambassador/src')
-rw-r--r-- | e2e/ambassador/src/background/index.js | 7 | ||||
-rw-r--r-- | e2e/ambassador/src/background/tabs.js | 4 | ||||
-rw-r--r-- | e2e/ambassador/src/client/tabs.js | 20 | ||||
-rw-r--r-- | e2e/ambassador/src/shared/messages.js | 4 |
4 files changed, 31 insertions, 4 deletions
diff --git a/e2e/ambassador/src/background/index.js b/e2e/ambassador/src/background/index.js index db2deb3..046b8c1 100644 --- a/e2e/ambassador/src/background/index.js +++ b/e2e/ambassador/src/background/index.js @@ -1,6 +1,7 @@ import { WINDOWS_CREATE, WINDOWS_REMOVE, WINDOWS_GET, - TABS_CREATE, TABS_SELECT_AT, TABS_GET_ZOOM, TABS_SET_ZOOM, + TABS_CREATE, TABS_SELECT_AT, TABS_GET, TABS_UPDATE, + TABS_GET_ZOOM, TABS_SET_ZOOM, EVENT_KEYPRESS, EVENT_KEYDOWN, EVENT_KEYUP, SCROLL_GET, SCROLL_SET, } from '../shared/messages'; @@ -25,6 +26,10 @@ receiveContentMessage((message) => { windowId: message.windowId, index: message.index, }); + case TABS_GET: + return browser.tabs.get(message.tabId); + case TABS_UPDATE: + return browser.tabs.update(message.tabId, message.properties); case TABS_GET_ZOOM: return browser.tabs.getZoom(message.tabId); case TABS_SET_ZOOM: diff --git a/e2e/ambassador/src/background/tabs.js b/e2e/ambassador/src/background/tabs.js index d049500..5594134 100644 --- a/e2e/ambassador/src/background/tabs.js +++ b/e2e/ambassador/src/background/tabs.js @@ -5,7 +5,9 @@ const create = (props = {}) => { if (tab.url !== 'about:blank' && tabId === createdTab.id && changeInfo.status === 'complete') { browser.tabs.onUpdated.removeListener(callback); - resolve(tab); + + // wait for 50 milliseconds to ensure plugin loaded; + setTimeout(() => resolve(tab), 50); } }; browser.tabs.onUpdated.addListener(callback); diff --git a/e2e/ambassador/src/client/tabs.js b/e2e/ambassador/src/client/tabs.js index c7b1340..290428c 100644 --- a/e2e/ambassador/src/client/tabs.js +++ b/e2e/ambassador/src/client/tabs.js @@ -1,5 +1,6 @@ import { - TABS_CREATE, TABS_SELECT_AT, TABS_GET_ZOOM, TABS_SET_ZOOM, + TABS_CREATE, TABS_SELECT_AT, TABS_GET, TABS_UPDATE, + TABS_GET_ZOOM, TABS_SET_ZOOM, } from '../shared/messages'; import * as ipc from './ipc'; @@ -19,6 +20,21 @@ const selectAt = (windowId, index) => { }); }; +const get = (tabId) => { + return ipc.send({ + type: TABS_GET, + tabId, + }); +}; + +const update = (tabId, properties) => { + return ipc.send({ + type: TABS_UPDATE, + tabId, + properties, + }); +}; + const getZoom = (tabId) => { return ipc.send({ tabId, @@ -34,4 +50,4 @@ const setZoom = (tabId, factor) => { }); }; -export { create, selectAt, getZoom, setZoom }; +export { create, selectAt, get, update, getZoom, setZoom }; diff --git a/e2e/ambassador/src/shared/messages.js b/e2e/ambassador/src/shared/messages.js index 1fc47d2..d148ca0 100644 --- a/e2e/ambassador/src/shared/messages.js +++ b/e2e/ambassador/src/shared/messages.js @@ -5,6 +5,8 @@ const WINDOWS_REMOVE = 'windows.remove'; const WINDOWS_GET = 'windows.get'; const TABS_CREATE = 'tabs.create'; const TABS_SELECT_AT = 'tabs.selectAt'; +const TABS_GET = 'tabs.get'; +const TABS_UPDATE = 'tabs.update'; const TABS_GET_ZOOM = 'tabs.get.zoom'; const TABS_SET_ZOOM = 'tabs.set.zoom'; const EVENT_KEYPRESS = 'event.keypress'; @@ -21,6 +23,8 @@ export { WINDOWS_REMOVE, WINDOWS_GET, + TABS_GET, + TABS_UPDATE, TABS_CREATE, TABS_SELECT_AT, TABS_GET_ZOOM, |