test: drop now-empty remote runner (#35343)
* test: drop the now-empty remote runner from CI * move fixtures to spec-main * remove remote runner * fix stuff * remove global-paths hack * move ts-smoke to spec/ * fix test after merge * rename spec-main to spec * no need to ignore spec/node_modules twice * simplify spec-runner a little * no need to hash pj/yl twice * undo lint change to verify-mksnapshot.py * excessive .. * update electron_woa_testing.yml * don't search for test-results-remote.xml it is never produced now
This commit is contained in:
parent
e87c4015fe
commit
db7c92fd57
327 changed files with 950 additions and 1707 deletions
34
spec/fixtures/extensions/chrome-api/background.js
vendored
Normal file
34
spec/fixtures/extensions/chrome-api/background.js
vendored
Normal file
|
@ -0,0 +1,34 @@
|
|||
/* global chrome */
|
||||
|
||||
chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
|
||||
const { method, args = [] } = message;
|
||||
const tabId = sender.tab.id;
|
||||
|
||||
switch (method) {
|
||||
case 'sendMessage': {
|
||||
const [message] = args;
|
||||
chrome.tabs.sendMessage(tabId, { message, tabId }, undefined, sendResponse);
|
||||
break;
|
||||
}
|
||||
|
||||
case 'executeScript': {
|
||||
const [code] = args;
|
||||
chrome.tabs.executeScript(tabId, { code }, ([result]) => sendResponse(result));
|
||||
break;
|
||||
}
|
||||
|
||||
case 'connectTab': {
|
||||
const [name] = args;
|
||||
const port = chrome.tabs.connect(tabId, { name });
|
||||
port.postMessage('howdy');
|
||||
break;
|
||||
}
|
||||
|
||||
case 'update': {
|
||||
const [tabId, props] = args;
|
||||
chrome.tabs.update(tabId, props, sendResponse);
|
||||
}
|
||||
}
|
||||
// Respond asynchronously
|
||||
return true;
|
||||
});
|
52
spec/fixtures/extensions/chrome-api/main.js
vendored
Normal file
52
spec/fixtures/extensions/chrome-api/main.js
vendored
Normal file
|
@ -0,0 +1,52 @@
|
|||
/* global chrome */
|
||||
|
||||
chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
|
||||
sendResponse(message);
|
||||
});
|
||||
|
||||
const testMap = {
|
||||
connect () {
|
||||
let success = false;
|
||||
try {
|
||||
chrome.runtime.connect(chrome.runtime.id);
|
||||
chrome.runtime.connect(chrome.runtime.id, { name: 'content-script' });
|
||||
chrome.runtime.connect({ name: 'content-script' });
|
||||
success = true;
|
||||
} finally {
|
||||
console.log(JSON.stringify(success));
|
||||
}
|
||||
},
|
||||
getManifest () {
|
||||
const manifest = chrome.runtime.getManifest();
|
||||
console.log(JSON.stringify(manifest));
|
||||
},
|
||||
sendMessage (message) {
|
||||
chrome.runtime.sendMessage({ method: 'sendMessage', args: [message] }, response => {
|
||||
console.log(JSON.stringify(response));
|
||||
});
|
||||
},
|
||||
executeScript (code) {
|
||||
chrome.runtime.sendMessage({ method: 'executeScript', args: [code] }, response => {
|
||||
console.log(JSON.stringify(response));
|
||||
});
|
||||
},
|
||||
connectTab (name) {
|
||||
chrome.runtime.onConnect.addListener(port => {
|
||||
port.onMessage.addListener(message => {
|
||||
console.log([port.name, message].join());
|
||||
});
|
||||
});
|
||||
chrome.runtime.sendMessage({ method: 'connectTab', args: [name] });
|
||||
},
|
||||
update (tabId, props) {
|
||||
chrome.runtime.sendMessage({ method: 'update', args: [tabId, props] }, response => {
|
||||
console.log(JSON.stringify(response));
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
const dispatchTest = (event) => {
|
||||
const { method, args = [] } = JSON.parse(event.data);
|
||||
testMap[method](...args);
|
||||
};
|
||||
window.addEventListener('message', dispatchTest, false);
|
19
spec/fixtures/extensions/chrome-api/manifest.json
vendored
Normal file
19
spec/fixtures/extensions/chrome-api/manifest.json
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"name": "chrome-api",
|
||||
"version": "1.0",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["main.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
],
|
||||
"background": {
|
||||
"scripts": ["background.js"],
|
||||
"persistent": false
|
||||
},
|
||||
"permissions": [
|
||||
"<all_urls>"
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
6
spec/fixtures/extensions/chrome-i18n/_locales/en/messages.json
vendored
Normal file
6
spec/fixtures/extensions/chrome-i18n/_locales/en/messages.json
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"extName": {
|
||||
"message": "chrome-i18n",
|
||||
"description": "Extension name."
|
||||
}
|
||||
}
|
33
spec/fixtures/extensions/chrome-i18n/main.js
vendored
Normal file
33
spec/fixtures/extensions/chrome-i18n/main.js
vendored
Normal file
|
@ -0,0 +1,33 @@
|
|||
/* eslint-disable */
|
||||
|
||||
function evalInMainWorld(fn) {
|
||||
const script = document.createElement('script')
|
||||
script.textContent = `((${fn})())`
|
||||
document.documentElement.appendChild(script)
|
||||
}
|
||||
|
||||
async function exec(name) {
|
||||
let result
|
||||
switch (name) {
|
||||
case 'getMessage':
|
||||
result = {
|
||||
id: chrome.i18n.getMessage('@@extension_id'),
|
||||
name: chrome.i18n.getMessage('extName'),
|
||||
}
|
||||
break
|
||||
case 'getAcceptLanguages':
|
||||
result = await new Promise(resolve => chrome.i18n.getAcceptLanguages(resolve))
|
||||
break
|
||||
}
|
||||
|
||||
const funcStr = `() => { require('electron').ipcRenderer.send('success', ${JSON.stringify(result)}) }`
|
||||
evalInMainWorld(funcStr)
|
||||
}
|
||||
|
||||
window.addEventListener('message', event => {
|
||||
exec(event.data.name)
|
||||
})
|
||||
|
||||
evalInMainWorld(() => {
|
||||
window.exec = name => window.postMessage({ name })
|
||||
})
|
13
spec/fixtures/extensions/chrome-i18n/manifest.json
vendored
Normal file
13
spec/fixtures/extensions/chrome-i18n/manifest.json
vendored
Normal file
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"name": "__MSG_extName__",
|
||||
"default_locale": "en",
|
||||
"version": "1.0",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["main.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
12
spec/fixtures/extensions/chrome-runtime/background.js
vendored
Normal file
12
spec/fixtures/extensions/chrome-runtime/background.js
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
/* global chrome */
|
||||
|
||||
chrome.runtime.onMessage.addListener((message, sender, reply) => {
|
||||
switch (message) {
|
||||
case 'getPlatformInfo':
|
||||
chrome.runtime.getPlatformInfo(reply);
|
||||
break;
|
||||
}
|
||||
|
||||
// Respond asynchronously
|
||||
return true;
|
||||
});
|
39
spec/fixtures/extensions/chrome-runtime/main.js
vendored
Normal file
39
spec/fixtures/extensions/chrome-runtime/main.js
vendored
Normal file
|
@ -0,0 +1,39 @@
|
|||
/* eslint-disable */
|
||||
|
||||
function evalInMainWorld(fn) {
|
||||
const script = document.createElement('script')
|
||||
script.textContent = `((${fn})())`
|
||||
document.documentElement.appendChild(script)
|
||||
}
|
||||
|
||||
async function exec(name) {
|
||||
let result
|
||||
switch (name) {
|
||||
case 'getManifest':
|
||||
result = chrome.runtime.getManifest()
|
||||
break
|
||||
case 'id':
|
||||
result = chrome.runtime.id
|
||||
break
|
||||
case 'getURL':
|
||||
result = chrome.runtime.getURL('main.js')
|
||||
break
|
||||
case 'getPlatformInfo': {
|
||||
result = await new Promise(resolve => {
|
||||
chrome.runtime.sendMessage(name, resolve)
|
||||
})
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
const funcStr = `() => { require('electron').ipcRenderer.send('success', ${JSON.stringify(result)}) }`
|
||||
evalInMainWorld(funcStr)
|
||||
}
|
||||
|
||||
window.addEventListener('message', event => {
|
||||
exec(event.data.name)
|
||||
})
|
||||
|
||||
evalInMainWorld(() => {
|
||||
window.exec = name => window.postMessage({ name })
|
||||
})
|
16
spec/fixtures/extensions/chrome-runtime/manifest.json
vendored
Normal file
16
spec/fixtures/extensions/chrome-runtime/manifest.json
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"name": "chrome-runtime",
|
||||
"version": "1.0",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["main.js"],
|
||||
"run_at": "document_end"
|
||||
}
|
||||
],
|
||||
"background": {
|
||||
"scripts": ["background.js"],
|
||||
"persistent": false
|
||||
},
|
||||
"manifest_version": 2
|
||||
}
|
8
spec/fixtures/extensions/chrome-storage/main.js
vendored
Normal file
8
spec/fixtures/extensions/chrome-storage/main.js
vendored
Normal file
|
@ -0,0 +1,8 @@
|
|||
/* eslint-disable */
|
||||
chrome.storage.local.set({ key: 'value' }, () => {
|
||||
chrome.storage.local.get(['key'], ({ key }) => {
|
||||
const script = document.createElement('script')
|
||||
script.textContent = `require('electron').ipcRenderer.send('storage-success', ${JSON.stringify(key)})`
|
||||
document.documentElement.appendChild(script)
|
||||
})
|
||||
})
|
15
spec/fixtures/extensions/chrome-storage/manifest.json
vendored
Normal file
15
spec/fixtures/extensions/chrome-storage/manifest.json
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"name": "chrome-storage",
|
||||
"version": "1.0",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["main.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
],
|
||||
"permissions": [
|
||||
"storage"
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
12
spec/fixtures/extensions/chrome-webRequest-wss/background.js
vendored
Normal file
12
spec/fixtures/extensions/chrome-webRequest-wss/background.js
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
/* global chrome */
|
||||
|
||||
chrome.webRequest.onBeforeSendHeaders.addListener(
|
||||
(details) => {
|
||||
if (details.requestHeaders) {
|
||||
details.requestHeaders.foo = 'bar';
|
||||
}
|
||||
return { cancel: false, requestHeaders: details.requestHeaders };
|
||||
},
|
||||
{ urls: ['*://127.0.0.1:*'] },
|
||||
['blocking']
|
||||
);
|
10
spec/fixtures/extensions/chrome-webRequest-wss/manifest.json
vendored
Normal file
10
spec/fixtures/extensions/chrome-webRequest-wss/manifest.json
vendored
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"name": "chrome-webRequest",
|
||||
"version": "1.0",
|
||||
"background": {
|
||||
"scripts": ["background.js"],
|
||||
"persistent": true
|
||||
},
|
||||
"permissions": ["webRequest", "webRequestBlocking", "<all_urls>"],
|
||||
"manifest_version": 2
|
||||
}
|
9
spec/fixtures/extensions/chrome-webRequest/background.js
vendored
Normal file
9
spec/fixtures/extensions/chrome-webRequest/background.js
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
/* global chrome */
|
||||
|
||||
chrome.webRequest.onBeforeRequest.addListener(
|
||||
(details) => {
|
||||
return { cancel: true };
|
||||
},
|
||||
{ urls: ['*://127.0.0.1:*'] },
|
||||
['blocking']
|
||||
);
|
10
spec/fixtures/extensions/chrome-webRequest/manifest.json
vendored
Normal file
10
spec/fixtures/extensions/chrome-webRequest/manifest.json
vendored
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"name": "chrome-webRequest",
|
||||
"version": "1.0",
|
||||
"background": {
|
||||
"scripts": ["background.js"],
|
||||
"persistent": true
|
||||
},
|
||||
"permissions": ["webRequest", "webRequestBlocking", "<all_urls>"],
|
||||
"manifest_version": 2
|
||||
}
|
1
spec/fixtures/extensions/content-script-document-end/end.js
vendored
Normal file
1
spec/fixtures/extensions/content-script-document-end/end.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
document.documentElement.style.backgroundColor = 'red';
|
14
spec/fixtures/extensions/content-script-document-end/manifest.json
vendored
Normal file
14
spec/fixtures/extensions/content-script-document-end/manifest.json
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"name": "document-end",
|
||||
"version": "1.0",
|
||||
"description": "",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["end.js"],
|
||||
"run_at": "document_end"
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
||||
|
1
spec/fixtures/extensions/content-script-document-idle/idle.js
vendored
Normal file
1
spec/fixtures/extensions/content-script-document-idle/idle.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
document.body.style.backgroundColor = 'red';
|
14
spec/fixtures/extensions/content-script-document-idle/manifest.json
vendored
Normal file
14
spec/fixtures/extensions/content-script-document-idle/manifest.json
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"name": "document-idle",
|
||||
"version": "1.0",
|
||||
"description": "",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["idle.js"],
|
||||
"run_at": "document_idle"
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
||||
|
14
spec/fixtures/extensions/content-script-document-start/manifest.json
vendored
Normal file
14
spec/fixtures/extensions/content-script-document-start/manifest.json
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"name": "document-start",
|
||||
"version": "1.0",
|
||||
"description": "",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["start.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
||||
|
1
spec/fixtures/extensions/content-script-document-start/start.js
vendored
Normal file
1
spec/fixtures/extensions/content-script-document-start/start.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
document.documentElement.style.backgroundColor = 'red';
|
3
spec/fixtures/extensions/content-script/all_frames-disabled.css
vendored
Normal file
3
spec/fixtures/extensions/content-script/all_frames-disabled.css
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
#all_frames_disabled {
|
||||
background: blue;
|
||||
}
|
3
spec/fixtures/extensions/content-script/all_frames-enabled.css
vendored
Normal file
3
spec/fixtures/extensions/content-script/all_frames-enabled.css
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
#all_frames_enabled {
|
||||
background: red;
|
||||
}
|
14
spec/fixtures/extensions/content-script/all_frames-preload.js
vendored
Normal file
14
spec/fixtures/extensions/content-script/all_frames-preload.js
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
const { ipcRenderer, webFrame } = require('electron');
|
||||
|
||||
if (process.isMainFrame) {
|
||||
// https://github.com/electron/electron/issues/17252
|
||||
ipcRenderer.on('executeJavaScriptInFrame', (event, frameRoutingId, code, responseId) => {
|
||||
const frame = webFrame.findFrameByRoutingId(frameRoutingId);
|
||||
if (!frame) {
|
||||
throw new Error(`Can't find frame for routing ID ${frameRoutingId}`);
|
||||
}
|
||||
frame.executeJavaScript(code, false).then(result => {
|
||||
event.sender.send(`executeJavaScriptInFrame_${responseId}`, result);
|
||||
});
|
||||
});
|
||||
}
|
15
spec/fixtures/extensions/content-script/frame-with-frame.html
vendored
Normal file
15
spec/fixtures/extensions/content-script/frame-with-frame.html
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>Document</title>
|
||||
</head>
|
||||
<body>
|
||||
This is a frame, is has one child
|
||||
<iframe src="./frame.html"></iframe>
|
||||
<div id="all_frames_enabled"></div>
|
||||
<div id="all_frames_disabled"></div>
|
||||
</body>
|
||||
</html>
|
12
spec/fixtures/extensions/content-script/frame.html
vendored
Normal file
12
spec/fixtures/extensions/content-script/frame.html
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Document</title>
|
||||
</head>
|
||||
<body>
|
||||
This is a frame, it has no children
|
||||
<div id="all_frames_enabled"></div>
|
||||
<div id="all_frames_disabled"></div>
|
||||
</body>
|
||||
</html>
|
19
spec/fixtures/extensions/content-script/manifest.json
vendored
Normal file
19
spec/fixtures/extensions/content-script/manifest.json
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"name": "content-script-test",
|
||||
"version": "1.0",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"css": ["all_frames-enabled.css"],
|
||||
"run_at": "document_start",
|
||||
"all_frames": true
|
||||
},
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"css": ["all_frames-disabled.css"],
|
||||
"run_at": "document_start",
|
||||
"all_frames": false
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
9
spec/fixtures/extensions/devtools-extension/foo.html
vendored
Normal file
9
spec/fixtures/extensions/devtools-extension/foo.html
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>foo</title>
|
||||
<!-- can't be inline, because of CSP -->
|
||||
<script src="foo.js"></script>
|
||||
</head>
|
||||
</html>
|
2
spec/fixtures/extensions/devtools-extension/foo.js
vendored
Normal file
2
spec/fixtures/extensions/devtools-extension/foo.js
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
// eslint-disable-next-line
|
||||
chrome.devtools.panels.create('Foo', 'icon.png', 'index.html')
|
5
spec/fixtures/extensions/devtools-extension/index.html
vendored
Normal file
5
spec/fixtures/extensions/devtools-extension/index.html
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
<!doctype html>
|
||||
<body>
|
||||
a custom devtools extension
|
||||
<!-- can't be inline because of CSP -->
|
||||
<script src="index.js"></script>
|
4
spec/fixtures/extensions/devtools-extension/index.js
vendored
Normal file
4
spec/fixtures/extensions/devtools-extension/index.js
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
// eslint-disable-next-line
|
||||
chrome.devtools.inspectedWindow.eval(`require("electron").ipcRenderer.send("winning")`, (result, exc) => {
|
||||
console.log(result, exc);
|
||||
});
|
6
spec/fixtures/extensions/devtools-extension/manifest.json
vendored
Normal file
6
spec/fixtures/extensions/devtools-extension/manifest.json
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"name": "foo",
|
||||
"version": "1.0",
|
||||
"devtools_page": "foo.html",
|
||||
"manifest_version": 2
|
||||
}
|
5
spec/fixtures/extensions/lazy-background-page/background.js
vendored
Normal file
5
spec/fixtures/extensions/lazy-background-page/background.js
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
/* eslint-disable no-undef */
|
||||
chrome.runtime.onMessage.addListener((message, sender, reply) => {
|
||||
window.receivedMessage = message;
|
||||
reply({ message, sender });
|
||||
});
|
6
spec/fixtures/extensions/lazy-background-page/content_script.js
vendored
Normal file
6
spec/fixtures/extensions/lazy-background-page/content_script.js
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
/* eslint-disable no-undef */
|
||||
chrome.runtime.sendMessage({ some: 'message' }, (response) => {
|
||||
const script = document.createElement('script');
|
||||
script.textContent = `require('electron').ipcRenderer.send('bg-page-message-response', ${JSON.stringify(response)})`;
|
||||
document.documentElement.appendChild(script);
|
||||
});
|
7
spec/fixtures/extensions/lazy-background-page/get-background-page.js
vendored
Normal file
7
spec/fixtures/extensions/lazy-background-page/get-background-page.js
vendored
Normal file
|
@ -0,0 +1,7 @@
|
|||
/* global chrome */
|
||||
window.completionPromise = new Promise((resolve) => {
|
||||
window.completionPromiseResolve = resolve;
|
||||
});
|
||||
chrome.runtime.sendMessage({ some: 'message' }, (response) => {
|
||||
window.completionPromiseResolve(chrome.extension.getBackgroundPage().receivedMessage);
|
||||
});
|
16
spec/fixtures/extensions/lazy-background-page/manifest.json
vendored
Normal file
16
spec/fixtures/extensions/lazy-background-page/manifest.json
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"name": "lazy-background-page",
|
||||
"version": "1.0",
|
||||
"background": {
|
||||
"scripts": ["background.js"],
|
||||
"persistent": false
|
||||
},
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["content_script.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
1
spec/fixtures/extensions/lazy-background-page/page-get-background.html
vendored
Normal file
1
spec/fixtures/extensions/lazy-background-page/page-get-background.html
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
<script src="get-background-page.js"></script>
|
1
spec/fixtures/extensions/lazy-background-page/page-runtime-get-background.html
vendored
Normal file
1
spec/fixtures/extensions/lazy-background-page/page-runtime-get-background.html
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
<script src="runtime-get-background-page.js"></script>
|
9
spec/fixtures/extensions/lazy-background-page/runtime-get-background-page.js
vendored
Normal file
9
spec/fixtures/extensions/lazy-background-page/runtime-get-background-page.js
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
/* global chrome */
|
||||
window.completionPromise = new Promise((resolve) => {
|
||||
window.completionPromiseResolve = resolve;
|
||||
});
|
||||
chrome.runtime.sendMessage({ some: 'message' }, (response) => {
|
||||
chrome.runtime.getBackgroundPage((bgPage) => {
|
||||
window.completionPromiseResolve(bgPage.receivedMessage);
|
||||
});
|
||||
});
|
8
spec/fixtures/extensions/load-error/manifest.json
vendored
Normal file
8
spec/fixtures/extensions/load-error/manifest.json
vendored
Normal file
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"name": "load-error",
|
||||
"version": "1.0",
|
||||
"icons": {
|
||||
"16": "/images/error.png"
|
||||
},
|
||||
"manifest_version": 2
|
||||
}
|
1
spec/fixtures/extensions/missing-manifest/main.js
vendored
Normal file
1
spec/fixtures/extensions/missing-manifest/main.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
console.log('oh no where is my manifest');
|
1
spec/fixtures/extensions/mv3-service-worker/background.js
vendored
Normal file
1
spec/fixtures/extensions/mv3-service-worker/background.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
console.log('service worker installed');
|
9
spec/fixtures/extensions/mv3-service-worker/manifest.json
vendored
Normal file
9
spec/fixtures/extensions/mv3-service-worker/manifest.json
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"name": "MV3 Service Worker",
|
||||
"description": "Test for extension service worker support.",
|
||||
"version": "1.0",
|
||||
"manifest_version": 3,
|
||||
"background": {
|
||||
"service_worker": "background.js"
|
||||
}
|
||||
}
|
1
spec/fixtures/extensions/persistent-background-page/background.js
vendored
Normal file
1
spec/fixtures/extensions/persistent-background-page/background.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
/* eslint-disable no-undef */
|
9
spec/fixtures/extensions/persistent-background-page/manifest.json
vendored
Normal file
9
spec/fixtures/extensions/persistent-background-page/manifest.json
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"name": "persistent-background-page",
|
||||
"version": "1.0",
|
||||
"background": {
|
||||
"scripts": ["background.js"],
|
||||
"persistent": true
|
||||
},
|
||||
"manifest_version": 2
|
||||
}
|
1
spec/fixtures/extensions/red-bg/main.js
vendored
Normal file
1
spec/fixtures/extensions/red-bg/main.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
document.documentElement.style.backgroundColor = 'red';
|
12
spec/fixtures/extensions/red-bg/manifest.json
vendored
Normal file
12
spec/fixtures/extensions/red-bg/manifest.json
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"name": "red-bg",
|
||||
"version": "1.0",
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["main.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
],
|
||||
"manifest_version": 2
|
||||
}
|
2
spec/fixtures/extensions/ui-page/bare-page.html
vendored
Normal file
2
spec/fixtures/extensions/ui-page/bare-page.html
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
<!doctype html>
|
||||
<body>ui page loaded ok</body>
|
6
spec/fixtures/extensions/ui-page/manifest.json
vendored
Normal file
6
spec/fixtures/extensions/ui-page/manifest.json
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"name": "ui-page",
|
||||
"version": "1.0",
|
||||
"manifest_version": 2,
|
||||
"permissions": ["<all_urls>"]
|
||||
}
|
1
spec/fixtures/extensions/ui-page/page-get-background.html
vendored
Normal file
1
spec/fixtures/extensions/ui-page/page-get-background.html
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
<script src="get-background-page.js"></script>
|
1
spec/fixtures/extensions/ui-page/page-script-load.html
vendored
Normal file
1
spec/fixtures/extensions/ui-page/page-script-load.html
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
<script src="script.js"></script>
|
1
spec/fixtures/extensions/ui-page/script.js
vendored
Normal file
1
spec/fixtures/extensions/ui-page/script.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
document.write('script loaded ok');
|
Loading…
Add table
Add a link
Reference in a new issue