1
0
Fork 0

Remove deno-prebuilt and use denoland/setup-deno

pull/1/head
Ambrose Chua 2021-09-30 11:29:50 +08:00
parent 091d829ad3
commit 665e3db89b
5 changed files with 13 additions and 31 deletions

View File

@ -93,6 +93,9 @@ jobs:
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- uses: denoland/setup-deno@v1
with:
deno-version: v1.x
- uses: actions/cache@v2
with:
path: '~/.npm'

21
package-lock.json generated
View File

@ -13,7 +13,6 @@
"@wdio/logger": "^7.7.0",
"chromedriver": "^93.0.1",
"cli-table3": "^0.6.0",
"deno-prebuilt": "^1.0.4",
"geckodriver": "^2.0.4",
"get-port": "^5.1.1",
"koa": "^2.13.1",
@ -2337,18 +2336,6 @@
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
},
"node_modules/deno-prebuilt": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/deno-prebuilt/-/deno-prebuilt-1.0.4.tgz",
"integrity": "sha512-1/h9fhFWoANZW3ijYhliblr063PMCO+dcfyrc1vdgjZtOtqMg4hYnzmyAhH+/ah4W4QhRMURAfh9qXJdqc/7aA==",
"hasInstallScript": true,
"dependencies": {
"yauzl": "^2.10.0"
},
"bin": {
"deno-prebuilt": "bin.js"
}
},
"node_modules/depd": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
@ -9103,14 +9090,6 @@
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
},
"deno-prebuilt": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/deno-prebuilt/-/deno-prebuilt-1.0.4.tgz",
"integrity": "sha512-1/h9fhFWoANZW3ijYhliblr063PMCO+dcfyrc1vdgjZtOtqMg4hYnzmyAhH+/ah4W4QhRMURAfh9qXJdqc/7aA==",
"requires": {
"yauzl": "^2.10.0"
}
},
"depd": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",

View File

@ -15,7 +15,6 @@
"@wdio/logger": "^7.7.0",
"chromedriver": "^93.0.1",
"cli-table3": "^0.6.0",
"deno-prebuilt": "^1.0.4",
"geckodriver": "^2.0.4",
"get-port": "^5.1.1",
"koa": "^2.13.1",

View File

@ -14,11 +14,11 @@ logger.setLevel('fetch-compare', 'warn');
const silent = true;
const platforms: Record<string, Platform> = {
deno: new PlatformDeno(),
node: new PlatformNode(),
chrome: new PlatformBrowser(chrome, 'chrome', silent),
firefox: new PlatformBrowser(firefox, 'firefox', silent),
safari: new PlatformBrowser(safari, 'safari', silent),
node: new PlatformNode(),
deno: new PlatformDeno(),
};
function formatValue(v: ResultObject): string {

View File

@ -1,7 +1,6 @@
import {platform} from 'os';
import {spawn} from 'child_process';
import logger from '@wdio/logger';
// @ts-expect-error: Missing types
import {binary} from 'deno-prebuilt';
import {Platform, Result} from './types.js';
@ -10,18 +9,20 @@ const log = logger('fetch-compare');
export default class PlatformDeno implements Platform {
async run(ctx: Record<string, any>, file: string): Promise<Result> {
const child = spawn(
binary,
platform() === 'win32' ? 'deno.exe' : 'deno',
['run', '--allow-read', '--allow-net=httpbin.org', 'index-deno.js', file],
{cwd: ctx.fixturesPath},
{cwd: ctx.fixturesPath, stdio: ['pipe', 'pipe', 'inherit']},
);
const stdout = await new Promise((resolve, reject) => {
child.once('error', reject);
child.once('exit', reject);
let stdout = '';
child.stdout.on('data', (data) => {
stdout += data;
});
child.once('exit', () => {
child.once('error', reject);
child.once('exit', (code) => {
if (code !== 0) {
reject(code);
}
resolve(stdout);
});
});