tests: improve
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,5 +1,3 @@
|
|||||||
.coverage
|
.coverage
|
||||||
.deno-make.json
|
.deno-make.json
|
||||||
tests/.coverage
|
tests/.*
|
||||||
tests/.coverage.report
|
|
||||||
tests/.junit.xml
|
|
||||||
|
|||||||
13
deno.jsonc
13
deno.jsonc
@@ -8,7 +8,8 @@
|
|||||||
"task": [
|
"task": [
|
||||||
"rm -rf .coverage &&",
|
"rm -rf .coverage &&",
|
||||||
"deno test &&",
|
"deno test &&",
|
||||||
"deno coverage .coverage"
|
"deno coverage .coverage &&",
|
||||||
|
"rm -rf tests/.coverage tests/.coverage.report tests/.deno.lock tests/.junit.xml"
|
||||||
],
|
],
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
@@ -41,13 +42,3 @@
|
|||||||
"exclude": [".coverage", ".deno-make.json"]
|
"exclude": [".coverage", ".deno-make.json"]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
bench
|
|
||||||
bundle
|
|
||||||
compile
|
|
||||||
_eval
|
|
||||||
fmt
|
|
||||||
install
|
|
||||||
uninstall
|
|
||||||
repl
|
|
||||||
*/
|
|
||||||
|
|||||||
109
mod.ts
109
mod.ts
@@ -23,8 +23,8 @@ const runnable = is.object({
|
|||||||
location: is.string().optional().transform((v) => v ? `--location='${v}'` : ""),
|
location: is.string().optional().transform((v) => v ? `--location='${v}'` : ""),
|
||||||
seed: is.number().optional().transform((v) => typeof v === "number" ? `--seed=${v}` : ""),
|
seed: is.number().optional().transform((v) => typeof v === "number" ? `--seed=${v}` : ""),
|
||||||
v8Flags: is.array(is.string()).optional().transform((v) => v?.length ? `--v8-flags='${v.join(",")}'` : ""),
|
v8Flags: is.array(is.string()).optional().transform((v) => v?.length ? `--v8-flags='${v.join(",")}'` : ""),
|
||||||
ignoreCertificateErrors: is.boolean().optional().transform((v) =>
|
certificateErrors: is.boolean().optional().transform((v) =>
|
||||||
v === true ? "--unsafely-ignore-certificate-errors" : ""
|
v === false ? "--unsafely-ignore-certificate-errors" : ""
|
||||||
),
|
),
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -120,9 +120,7 @@ const _modules = is.object({
|
|||||||
npm: is.boolean().optional().transform((v) => v === false ? "--no-npm" : ""),
|
npm: is.boolean().optional().transform((v) => v === false ? "--no-npm" : ""),
|
||||||
check: is.union([
|
check: is.union([
|
||||||
is.boolean().transform((v) => v ? "--check=all" : "--no-check"),
|
is.boolean().transform((v) => v ? "--check=all" : "--no-check"),
|
||||||
is.object({
|
is.string().min(1).transform((v) => `--check=${v}`),
|
||||||
remote: is.boolean().transform((v) => v ? "--check=all" : "--check=all --no-check=remote"),
|
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" ")),
|
|
||||||
]).optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
]).optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
||||||
reload: is.union([
|
reload: is.union([
|
||||||
is.boolean().transform((v) => v ? "--reload" : ""),
|
is.boolean().transform((v) => v ? "--reload" : ""),
|
||||||
@@ -135,7 +133,14 @@ const _modules = is.object({
|
|||||||
/** Module flags */
|
/** Module flags */
|
||||||
const modules = {
|
const modules = {
|
||||||
all: _modules.optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
all: _modules.optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
||||||
nocache: _modules.pick({ check: true, reload: true, npm: true, remote: true, node_modules: true, vendor: true })
|
nocache: _modules.pick({
|
||||||
|
check: true,
|
||||||
|
reload: true,
|
||||||
|
npm: true,
|
||||||
|
remote: true,
|
||||||
|
node_modules: true,
|
||||||
|
vendor: true,
|
||||||
|
})
|
||||||
.optional()
|
.optional()
|
||||||
.transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
.transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
||||||
vendor: _modules.pick({
|
vendor: _modules.pick({
|
||||||
@@ -143,10 +148,15 @@ const modules = {
|
|||||||
node_modules: true,
|
node_modules: true,
|
||||||
vendor: true,
|
vendor: true,
|
||||||
}).optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
}).optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
||||||
doc: _modules.pick({ reload: true, npm: true, remote: true }).optional().transform((v) =>
|
doc: _modules.pick({ reload: true, npm: true, remote: true }).optional()
|
||||||
Object.values(v ?? {}).filter(Boolean).join(" ")
|
.transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
||||||
),
|
nocheck: _modules.pick({
|
||||||
nocheck: _modules.pick({ reload: true, npm: true, remote: true, node_modules: true, vendor: true }).optional()
|
reload: true,
|
||||||
|
npm: true,
|
||||||
|
remote: true,
|
||||||
|
node_modules: true,
|
||||||
|
vendor: true,
|
||||||
|
}).optional()
|
||||||
.transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
.transform((v) => Object.values(v ?? {}).filter(Boolean).join(" ")),
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,9 +164,9 @@ const modules = {
|
|||||||
const inspect = is.union([
|
const inspect = is.union([
|
||||||
is.string().transform((v) => v ? `--inspect='${v}'` : ""),
|
is.string().transform((v) => v ? `--inspect='${v}'` : ""),
|
||||||
is.object({
|
is.object({
|
||||||
listen: is.string().transform((v) => v ? `--inspect='${v}'` : ""),
|
listen: is.string().min(1).optional().transform((v) => v ? `--inspect='${v}'` : ""),
|
||||||
break: is.string().transform((v) => v ? `--inspect-brk='${v}'` : ""),
|
break: is.string().min(1).optional().transform((v) => v ? `--inspect-brk='${v}'` : ""),
|
||||||
wait: is.string().transform((v) => v.length ? `--inspect-wait='${v}'` : ""),
|
wait: is.string().min(1).optional().transform((v) => v ? `--inspect-wait='${v}'` : ""),
|
||||||
}),
|
}),
|
||||||
]).optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" "))
|
]).optional().transform((v) => Object.values(v ?? {}).filter(Boolean).join(" "))
|
||||||
|
|
||||||
@@ -218,14 +228,17 @@ const coverage = common.pick({ unstable: true, quiet: true }).extend({
|
|||||||
output: is.string().optional().transform((v) => v ? `--output='${v}'` : ""),
|
output: is.string().optional().transform((v) => v ? `--output='${v}'` : ""),
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
||||||
|
|
||||||
const doc = common.pick({ unstable: true, quiet: true, importMap: true }).extend({
|
const doc = common.pick({ unstable: true, quiet: true, importMap: true })
|
||||||
|
.extend({
|
||||||
lock: lock.read,
|
lock: lock.read,
|
||||||
modules: modules.doc,
|
modules: modules.doc,
|
||||||
private: is.boolean().optional().transform((v) => v ? "--private" : ""),
|
private: is.boolean().optional().transform((v) => v ? "--private" : ""),
|
||||||
json: is.boolean().optional().transform((v) => v ? "--json" : ""),
|
json: is.boolean().optional().transform((v) => v ? "--json" : ""),
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
||||||
|
|
||||||
const _eval = common.merge(runnable.pick({ location: true, v8Flags: true, seed: true })).extend({
|
const _eval = common.merge(
|
||||||
|
runnable.pick({ location: true, v8Flags: true, seed: true }),
|
||||||
|
).extend({
|
||||||
lock: lock.write,
|
lock: lock.write,
|
||||||
modules: modules.all,
|
modules: modules.all,
|
||||||
inspect,
|
inspect,
|
||||||
@@ -262,10 +275,6 @@ const install = common.merge(runnable).extend({
|
|||||||
force: is.boolean().optional().transform((v) => v ? "--force" : ""),
|
force: is.boolean().optional().transform((v) => v ? "--force" : ""),
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
||||||
|
|
||||||
const uninstall = common.pick({ quiet: true, unstable: true }).extend({
|
|
||||||
root: is.string().optional().transform((v) => v ? `--root='${v}'` : ""),
|
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
|
||||||
|
|
||||||
const lint = common.pick({ config: true, unstable: true, quiet: true }).extend({
|
const lint = common.pick({ config: true, unstable: true, quiet: true }).extend({
|
||||||
rules: is.object({
|
rules: is.object({
|
||||||
tags: is.array(is.string()).optional().transform((v) => v?.length ? `--rules-tags=${v.join(",")}` : ""),
|
tags: is.array(is.string()).optional().transform((v) => v?.length ? `--rules-tags=${v.join(",")}` : ""),
|
||||||
@@ -326,6 +335,10 @@ const types = common.pick({
|
|||||||
quiet: true,
|
quiet: true,
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
||||||
|
|
||||||
|
const uninstall = common.pick({ quiet: true, unstable: true }).extend({
|
||||||
|
root: is.string().optional().transform((v) => v ? `--root='${v}'` : ""),
|
||||||
|
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
||||||
|
|
||||||
const vendor = common.extend({
|
const vendor = common.extend({
|
||||||
lock: lock.check,
|
lock: lock.check,
|
||||||
modules: modules.vendor,
|
modules: modules.vendor,
|
||||||
@@ -344,11 +357,16 @@ const _make = is.object({
|
|||||||
task: is.union([is.string(), is.array(is.string())]).transform((v) => Array.isArray(v) ? v.join(" ") : v),
|
task: is.union([is.string(), is.array(is.string())]).transform((v) => Array.isArray(v) ? v.join(" ") : v),
|
||||||
description: is.union([is.string(), is.array(is.string())]).transform((v) => Array.isArray(v) ? v.join(" ") : v)
|
description: is.union([is.string(), is.array(is.string())]).transform((v) => Array.isArray(v) ? v.join(" ") : v)
|
||||||
.default(""),
|
.default(""),
|
||||||
env: is.record(is.string(), is.union([is.boolean(), is.string()])).transform((v) =>
|
env: is.record(is.string(), is.union([is.boolean(), is.string()])).transform((
|
||||||
|
v,
|
||||||
|
) =>
|
||||||
Object.fromEntries(
|
Object.fromEntries(
|
||||||
Object.entries(v).map(([k, v]) => [k, v === true ? Deno.env.get(k) ?? "" : v === false ? "" : v]),
|
Object.entries(v).map((
|
||||||
|
[k, v],
|
||||||
|
) => [k, v === true ? Deno.env.get(k) ?? "" : v === false ? "" : v]),
|
||||||
)
|
)
|
||||||
).default(() => ({})),
|
).default(() => ({})),
|
||||||
|
cwd: is.string().optional(),
|
||||||
deno: is.object({
|
deno: is.object({
|
||||||
bench,
|
bench,
|
||||||
bundle,
|
bundle,
|
||||||
@@ -372,18 +390,33 @@ const _make = is.object({
|
|||||||
})
|
})
|
||||||
|
|
||||||
/** Compute command to execute after applying deno flags */
|
/** Compute command to execute after applying deno flags */
|
||||||
export function command(raw: string, { deno }: Pick<is.infer<typeof _make>, "deno">, { colors = false } = {}) {
|
export function command(
|
||||||
|
raw: string,
|
||||||
|
{ deno }: Pick<is.infer<typeof _make>, "deno">,
|
||||||
|
{ colors = false } = {},
|
||||||
|
) {
|
||||||
for (const [subcommand, flags] of Object.entries(deno)) {
|
for (const [subcommand, flags] of Object.entries(deno)) {
|
||||||
raw = raw.replaceAll(`deno ${subcommand}`, `deno ${subcommand} ${colors ? italic(underline(flags)) : flags}`)
|
raw = raw.replaceAll(
|
||||||
|
`deno ${subcommand}`,
|
||||||
|
`deno ${subcommand} ${colors ? italic(underline(flags)) : flags}`,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
return raw
|
return raw
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Entry point */
|
/** Entry point */
|
||||||
export async function make(
|
export async function make(
|
||||||
{ task = "", config = "deno.jsonc", log = console.log, exit = true, stdio = "inherit" as "inherit" | "null" } = {},
|
{
|
||||||
|
task = "",
|
||||||
|
config = "deno.jsonc",
|
||||||
|
log = console.log,
|
||||||
|
exit = true,
|
||||||
|
stdio = "inherit" as "inherit" | "null",
|
||||||
|
} = {},
|
||||||
) {
|
) {
|
||||||
const { "+tasks": _tasks = {} } = JSONC.parse(await Deno.readTextFile(config)) as {
|
const { "+tasks": _tasks = {} } = JSONC.parse(
|
||||||
|
await Deno.readTextFile(config),
|
||||||
|
) as {
|
||||||
"+tasks"?: Record<string, unknown>
|
"+tasks"?: Record<string, unknown>
|
||||||
}
|
}
|
||||||
const tasks = Object.fromEntries(
|
const tasks = Object.fromEntries(
|
||||||
@@ -397,7 +430,7 @@ export async function make(
|
|||||||
)
|
)
|
||||||
if (task) {
|
if (task) {
|
||||||
const temp = ".deno-make.json"
|
const temp = ".deno-make.json"
|
||||||
const { task: raw, env, deno } = tasks[task]
|
const { task: raw, env, deno, cwd } = tasks[task]
|
||||||
try {
|
try {
|
||||||
const make = command(raw, { deno })
|
const make = command(raw, { deno })
|
||||||
await Deno.writeTextFile(temp, JSON.stringify({ tasks: { make } }))
|
await Deno.writeTextFile(temp, JSON.stringify({ tasks: { make } }))
|
||||||
@@ -407,6 +440,7 @@ export async function make(
|
|||||||
stderr: stdio,
|
stderr: stdio,
|
||||||
stdin: stdio,
|
stdin: stdio,
|
||||||
env,
|
env,
|
||||||
|
cwd,
|
||||||
windowsRawArguments: true,
|
windowsRawArguments: true,
|
||||||
})
|
})
|
||||||
const { code } = await process.output()
|
const { code } = await process.output()
|
||||||
@@ -418,18 +452,31 @@ export async function make(
|
|||||||
await Deno.remove(temp)
|
await Deno.remove(temp)
|
||||||
}
|
}
|
||||||
} else if (Object.keys(tasks).length) {
|
} else if (Object.keys(tasks).length) {
|
||||||
for (const [name, { task, description, env, deno }] of Object.entries(tasks)) {
|
for (
|
||||||
|
const [name, { task, description, env, cwd, deno }] of Object.entries(
|
||||||
|
tasks,
|
||||||
|
)
|
||||||
|
) {
|
||||||
const { icon = "" } = description.match(/^(?<icon>[\p{Emoji}\u200d]+) /u)?.groups ?? {}
|
const { icon = "" } = description.match(/^(?<icon>[\p{Emoji}\u200d]+) /u)?.groups ?? {}
|
||||||
log(bgBrightBlue(`${icon} ${bold(name)}`.trim().padEnd(32)))
|
log(bgBrightBlue(`${icon} ${bold(name)}`.trim().padEnd(32)))
|
||||||
log(description.replace(icon, "").trim())
|
log(description.replace(icon, "").trim())
|
||||||
if (Object.keys(env).length) {
|
if (Object.keys(env).length) {
|
||||||
log(gray(`Environment variables:`))
|
log(gray(`Environment variables:`))
|
||||||
for (const [k, v] of Object.entries(env)) {
|
for (const [k, v] of Object.entries(env)) {
|
||||||
const inherited =
|
const inherited = ((_tasks as Record<string, is.infer<typeof _make>>)[name]
|
||||||
((_tasks as Record<string, is.infer<typeof _make>>)[name].env[k] as unknown as string | boolean) === true
|
.env[k] as unknown as string | boolean) === true
|
||||||
log(gray(` ${k}=${v}${inherited ? underline(italic("→ inherited")) : ""}`.trim()))
|
log(
|
||||||
|
gray(
|
||||||
|
` ${k}=${v}${inherited ? underline(italic("→ inherited")) : ""}`
|
||||||
|
.trim(),
|
||||||
|
),
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (cwd) {
|
||||||
|
log(gray(`Working directory:`))
|
||||||
|
log(gray(` ${cwd}`))
|
||||||
|
}
|
||||||
log(gray(`Task:`))
|
log(gray(`Task:`))
|
||||||
log(gray(` ${command(task, { deno }, { colors: true })}`))
|
log(gray(` ${command(task, { deno }, { colors: true })}`))
|
||||||
log("")
|
log("")
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
Deno.bench("URL parsing", () => {
|
|
||||||
new URL("https://deno.land")
|
|
||||||
})
|
|
||||||
14
mod_test.ts
14
mod_test.ts
@@ -11,8 +11,20 @@ for await (const { path, name: _name } of expandGlob("tests/*.jsonc")) {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
Deno.test(`${name}: ${task}`, async () => {
|
Deno.test(`${name}: ${task}`, async () => {
|
||||||
const { code } = await make({ task, config: path, log: () => null, exit: false, stdio: "null" })
|
const stdio = [] as string[]
|
||||||
|
const { code } = await make({
|
||||||
|
task,
|
||||||
|
config: path,
|
||||||
|
log: (message) => stdio.push(message),
|
||||||
|
exit: false,
|
||||||
|
stdio: "null",
|
||||||
|
})
|
||||||
|
try {
|
||||||
expect(code).to.equal(0)
|
expect(code).to.equal(0)
|
||||||
|
} catch (error) {
|
||||||
|
console.log(...stdio)
|
||||||
|
throw error
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
1
tests/deno_bundle.jsonc
Normal file
1
tests/deno_bundle.jsonc
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
@@ -4,7 +4,8 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno cache tests/mod.ts"
|
"task": "deno cache mod.ts",
|
||||||
|
"cwd": "tests"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,15 +4,26 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno check tests/mod.ts"
|
"task": "deno check mod.ts",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:all": {
|
"flags:boolean_true": {
|
||||||
"task": "deno check tests/mod.ts",
|
"task": "deno check mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"check": {
|
"check": {
|
||||||
"all": true
|
"all": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"flags:boolean_false": {
|
||||||
|
"task": "deno check mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"check": {
|
||||||
|
"all": false
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,42 +3,47 @@
|
|||||||
"make": "deno run --allow-env --allow-read --allow-write=.deno-make.json --allow-run=deno ./mod.ts $0"
|
"make": "deno run --allow-env --allow-read --allow-write=.deno-make.json --allow-run=deno ./mod.ts $0"
|
||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:general": {
|
"flags:general:boolean": {
|
||||||
"task": "deno run tests/mod.ts",
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"run": {
|
"run": {
|
||||||
"unstable": true,
|
"unstable": true,
|
||||||
"quiet": true,
|
"quiet": true,
|
||||||
"seed": 0,
|
"certificateErrors": true
|
||||||
"ignoreCertificateErrors": true
|
},
|
||||||
|
"test": {
|
||||||
|
"unstable": false,
|
||||||
|
"quiet": false,
|
||||||
|
"certificateErrors": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:resolution": {
|
"flags:general:string": {
|
||||||
"task": "deno run tests/mod.ts",
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"run": {
|
"run": {
|
||||||
"importMap": "tests/.imports.json",
|
"importMap": "imports.json",
|
||||||
|
"cert": "/dev/null",
|
||||||
"location": "https://deno.test"
|
"location": "https://deno.test"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:config": {
|
"flags:general:number": {
|
||||||
"task": "deno run tests/mod.ts",
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
"deno": {
|
"deno": {
|
||||||
"run": {
|
"run": {
|
||||||
"config": "tests/deno_common.jsonc"
|
"seed": 0
|
||||||
},
|
|
||||||
"lint": {
|
|
||||||
"config": false
|
|
||||||
},
|
|
||||||
"fmt": {
|
|
||||||
"config": true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:v8_flags": {
|
"flags:general:array": {
|
||||||
"task": "deno run tests/mod.ts",
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
"deno": {
|
"deno": {
|
||||||
"run": {
|
"run": {
|
||||||
"v8Flags": ["--print-code"]
|
"v8Flags": ["--print-code"]
|
||||||
@@ -47,17 +52,298 @@
|
|||||||
"v8Flags": []
|
"v8Flags": []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"flags:config": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"config": "deno.jsonc"
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"config": true
|
||||||
|
},
|
||||||
|
"lint": {
|
||||||
|
"config": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:lock:string": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"vendor": {
|
||||||
|
"lock": "deno.lock"
|
||||||
|
},
|
||||||
|
"info": {
|
||||||
|
"lock": "deno.lock"
|
||||||
|
},
|
||||||
|
"run": {
|
||||||
|
"lock": "deno.lock"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:lock:boolean": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"info": {
|
||||||
|
"lock": false
|
||||||
|
},
|
||||||
|
"run": {
|
||||||
|
"lock": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:lock:object": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"lock": {
|
||||||
|
"write": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"lock": {
|
||||||
|
"file": "deno.lock",
|
||||||
|
"write": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:permissions:all": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"permissions": {
|
||||||
|
"allow": true,
|
||||||
|
"prompt": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"permissions": {
|
||||||
|
"allow": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:permissions:boolean": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"permissions": {
|
||||||
|
"read": true,
|
||||||
|
"write": true,
|
||||||
|
"net": true,
|
||||||
|
"env": true,
|
||||||
|
"sys": true,
|
||||||
|
"run": true,
|
||||||
|
"ffi": true,
|
||||||
|
"hrtime": true,
|
||||||
|
"prompt": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"permissions": {
|
||||||
|
"read": false,
|
||||||
|
"write": false,
|
||||||
|
"net": false,
|
||||||
|
"env": false,
|
||||||
|
"sys": false,
|
||||||
|
"run": false,
|
||||||
|
"ffi": false,
|
||||||
|
"hrtime": false,
|
||||||
|
"prompt": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:permissions:array": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"permissions": {
|
||||||
|
"read": ["test"],
|
||||||
|
"write": ["test"],
|
||||||
|
"net": ["https://example.com"],
|
||||||
|
"env": ["TEST"],
|
||||||
|
"sys": ["osRelease"],
|
||||||
|
"run": ["deno"],
|
||||||
|
"ffi": ["test"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"permissions": {
|
||||||
|
"read": [],
|
||||||
|
"write": [],
|
||||||
|
"net": [],
|
||||||
|
"env": [],
|
||||||
|
"sys": [],
|
||||||
|
"run": [],
|
||||||
|
"ffi": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:permissions:allow_deny_object": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"permissions": {
|
||||||
|
"read": { "allow": ["test"], "deny": ["test"] },
|
||||||
|
"write": { "allow": ["test"], "deny": ["test"] },
|
||||||
|
"net": { "allow": ["https://example.com"], "deny": ["https://example.com"] },
|
||||||
|
"env": { "allow": ["TEST"], "deny": ["TEST"] },
|
||||||
|
"sys": { "allow": ["osRelease"], "deny": ["osRelease"] },
|
||||||
|
"run": { "allow": ["deno"], "deny": ["deno"] },
|
||||||
|
"ffi": { "allow": ["test"], "deny": ["test"] }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"permissions": {
|
||||||
|
"read": { "allow": [], "deny": [] },
|
||||||
|
"write": { "allow": [], "deny": [] },
|
||||||
|
"net": { "allow": [], "deny": [] },
|
||||||
|
"env": { "allow": [], "deny": [] },
|
||||||
|
"sys": { "allow": [], "deny": [] },
|
||||||
|
"run": { "allow": [], "deny": [] },
|
||||||
|
"ffi": { "allow": [], "deny": [] }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:modules:boolean": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"cached": true,
|
||||||
|
"remote": true,
|
||||||
|
"npm": true,
|
||||||
|
"check": true,
|
||||||
|
"reload": true,
|
||||||
|
"node_modules": true,
|
||||||
|
"vendor": true
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"cached": false,
|
||||||
|
"remote": false,
|
||||||
|
"npm": false,
|
||||||
|
"check": false,
|
||||||
|
"reload": false,
|
||||||
|
"node_modules": false,
|
||||||
|
"vendor": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:modules:string": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"check": "all"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:modules:array": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"reload": ["npm:"]
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"reload": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:inspect:string": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"inspect": "127.0.0.1:9229"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:inspect:object": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"inspect": {
|
||||||
|
"listen": "127.0.0.1:9229",
|
||||||
|
"break": "127.0.0.1:9230",
|
||||||
|
"wait:": "127.0.0.1:9229"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"inspect": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:watch:boolean": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"watch": true
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"watch": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:watch:array": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"watch": ["mod.ts"]
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"watch": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:watch:object": {
|
||||||
|
"task": "deno help",
|
||||||
|
"cwd": "tests",
|
||||||
|
|
||||||
|
"deno": {
|
||||||
|
"run": {
|
||||||
|
"watch": {
|
||||||
|
"files": ["mod.ts"],
|
||||||
|
"clearScreen": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"watch": {
|
||||||
|
"files": [],
|
||||||
|
"clearScreen": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Common flags
|
|
||||||
const common = is.object({
|
|
||||||
config: is.union([
|
|
||||||
is.boolean().transform((v) => v === false ? "--no-config" : ""),
|
|
||||||
is.string().transform((v) => v ? `--config='${v}'` : ""),
|
|
||||||
]).optional(),
|
|
||||||
cert: is.string().optional().transform((v) => v ? `--cert='${v}'` : ""),
|
|
||||||
})
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|||||||
1
tests/deno_compile.jsonc
Normal file
1
tests/deno_compile.jsonc
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
@@ -4,10 +4,30 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno coverage tests/.coverage"
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:filters": {
|
"flags:boolean_true": {
|
||||||
"task": "deno coverage tests/.coverage",
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"coverage": {
|
||||||
|
"lcov": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:boolean_false": {
|
||||||
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"coverage": {
|
||||||
|
"lcov": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:string": {
|
||||||
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"coverage": {
|
"coverage": {
|
||||||
"include": "^file:",
|
"include": "^file:",
|
||||||
@@ -15,12 +35,31 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flags:array": {
|
||||||
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"coverage": {
|
||||||
|
"ignore": ["foo"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:array_empty": {
|
||||||
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"coverage": {
|
||||||
|
"ignore": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"flags:lcov": {
|
"flags:lcov": {
|
||||||
"task": "deno coverage tests/.coverage",
|
"task": "deno coverage .coverage",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"coverage": {
|
"coverage": {
|
||||||
"lcov": true,
|
"lcov": true,
|
||||||
"output": "tests/.coverage.report"
|
"output": ".coverage.report"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,16 +4,28 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno doc tests/mod.ts"
|
"task": "deno doc mod.ts",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:options": {
|
"flags:boolean_true": {
|
||||||
"task": "deno doc tests/mod.ts",
|
"task": "deno doc mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"doc": {
|
"doc": {
|
||||||
"private": true,
|
"private": true,
|
||||||
"json": true
|
"json": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"flags:boolean_false": {
|
||||||
|
"task": "deno doc mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"doc": {
|
||||||
|
"private": false,
|
||||||
|
"json": false
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
1
tests/deno_eval.jsonc
Normal file
1
tests/deno_eval.jsonc
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
@@ -4,23 +4,70 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno check tests/mod.ts"
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:fmt": {
|
"flags:boolean_true": {
|
||||||
"task": "deno check tests/mod.ts",
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"fmt": {
|
"fmt": {
|
||||||
"check": true,
|
"check": true,
|
||||||
"tabs": true,
|
"tabs": true,
|
||||||
"lineWidth": 80,
|
|
||||||
"indentWidth": 2,
|
|
||||||
"singleQuote": true,
|
"singleQuote": true,
|
||||||
"semicolons": false,
|
"semicolons": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:boolean_false": {
|
||||||
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"fmt": {
|
||||||
|
"check": false,
|
||||||
|
"tabs": false,
|
||||||
|
"singleQuote": false,
|
||||||
|
"semicolons": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:string": {
|
||||||
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"fmt": {
|
||||||
"proseWrap": "always",
|
"proseWrap": "always",
|
||||||
"ignore": ["*"],
|
|
||||||
"ext": "js"
|
"ext": "js"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"flags:number": {
|
||||||
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"fmt": {
|
||||||
|
"lineWidth": 80,
|
||||||
|
"indentWidth": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:array": {
|
||||||
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"fmt": {
|
||||||
|
"ignore": ["*"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:array_empty": {
|
||||||
|
"task": "deno fmt mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"fmt": {
|
||||||
|
"ignore": []
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,29 +4,24 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno info"
|
|
||||||
},
|
|
||||||
"flags:lock_1": {
|
|
||||||
"task": "deno info",
|
"task": "deno info",
|
||||||
|
"cwd": "tests"
|
||||||
|
},
|
||||||
|
"flags:boolean_true": {
|
||||||
|
"task": "deno info",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"info": {
|
"info": {
|
||||||
"lock": true
|
"json": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:lock_2": {
|
"flags:boolean_false": {
|
||||||
"task": "deno info",
|
"task": "deno info",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"info": {
|
"info": {
|
||||||
"lock": false
|
"json": false
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:lock_3": {
|
|
||||||
"task": "deno info",
|
|
||||||
"deno": {
|
|
||||||
"info": {
|
|
||||||
"lock": "deno.lock"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
1
tests/deno_install.jsonc
Normal file
1
tests/deno_install.jsonc
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
@@ -4,10 +4,50 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno types"
|
|
||||||
},
|
|
||||||
"flags:rules_1": {
|
|
||||||
"task": "deno lint",
|
"task": "deno lint",
|
||||||
|
"cwd": "tests"
|
||||||
|
},
|
||||||
|
"flags:json": {
|
||||||
|
"task": "deno lint",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"lint": {
|
||||||
|
"json": true,
|
||||||
|
"compact": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:compact": {
|
||||||
|
"task": "deno lint",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"lint": {
|
||||||
|
"compact": true,
|
||||||
|
"json": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:array": {
|
||||||
|
"task": "deno lint",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"lint": {
|
||||||
|
"ignore": ["*.js"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:array_empty": {
|
||||||
|
"task": "deno lint",
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"lint": {
|
||||||
|
"ignore": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flags:rules": {
|
||||||
|
"task": "deno lint",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"lint": {
|
"lint": {
|
||||||
"rules": {
|
"rules": {
|
||||||
@@ -18,8 +58,9 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:rules_2": {
|
"flags:rules_empty": {
|
||||||
"task": "deno lint",
|
"task": "deno lint",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"lint": {
|
"lint": {
|
||||||
"rules": {
|
"rules": {
|
||||||
@@ -29,38 +70,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"flags:json": {
|
|
||||||
"task": "deno lint",
|
|
||||||
"deno": {
|
|
||||||
"lint": {
|
|
||||||
"json": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:compact": {
|
|
||||||
"task": "deno lint",
|
|
||||||
"deno": {
|
|
||||||
"lint": {
|
|
||||||
"compact": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:ignore_1": {
|
|
||||||
"task": "deno lint",
|
|
||||||
"deno": {
|
|
||||||
"lint": {
|
|
||||||
"ignore": ["*.js"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:ignore_2": {
|
|
||||||
"task": "deno lint",
|
|
||||||
"deno": {
|
|
||||||
"lint": {
|
|
||||||
"ignore": []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,22 +4,30 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"make": {
|
"make": {
|
||||||
"task": "exit 1",
|
|
||||||
"description": "🦕 test",
|
|
||||||
"env": {
|
|
||||||
"DINOSAUR": "🦖"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"make:no_description": {
|
|
||||||
"task": "exit 1"
|
"task": "exit 1"
|
||||||
},
|
},
|
||||||
|
"make:description": {
|
||||||
|
"task": "exit 1",
|
||||||
|
"description": "🦕 test"
|
||||||
|
},
|
||||||
"make:deno": {
|
"make:deno": {
|
||||||
"task": "deno quiet",
|
"task": "deno info",
|
||||||
"deno": {
|
"deno": {
|
||||||
"info": {
|
"info": {
|
||||||
"quiet": true
|
"quiet": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"make:env": {
|
||||||
|
"task": "exit 1",
|
||||||
|
"env": {
|
||||||
|
"DINOSAUR": "🦖",
|
||||||
|
"INHERIT": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"make:cwd": {
|
||||||
|
"task": "cwd",
|
||||||
|
"cwd": "tests"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,108 +0,0 @@
|
|||||||
{
|
|
||||||
"tasks": {
|
|
||||||
"make": "deno run --allow-env --allow-read --allow-write=.deno-make.json --allow-run=deno ./mod.ts $0"
|
|
||||||
},
|
|
||||||
"+tasks": {
|
|
||||||
"flags:all": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"permissions": {
|
|
||||||
"allow": true,
|
|
||||||
"prompt": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"test": {
|
|
||||||
"permissions": {
|
|
||||||
"allow": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:booleans": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"permissions": {
|
|
||||||
"read": true,
|
|
||||||
"write": true,
|
|
||||||
"net": true,
|
|
||||||
"env": true,
|
|
||||||
"sys": true,
|
|
||||||
"run": true,
|
|
||||||
"ffi": true,
|
|
||||||
"hrtime": true,
|
|
||||||
"prompt": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"test": {
|
|
||||||
"permissions": {
|
|
||||||
"read": false,
|
|
||||||
"write": false,
|
|
||||||
"net": false,
|
|
||||||
"env": false,
|
|
||||||
"sys": false,
|
|
||||||
"run": false,
|
|
||||||
"ffi": false,
|
|
||||||
"hrtime": false,
|
|
||||||
"prompt": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:paths": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"permissions": {
|
|
||||||
"read": ["test"],
|
|
||||||
"write": ["test"],
|
|
||||||
"net": ["https://example.com"],
|
|
||||||
"env": ["FOO"],
|
|
||||||
"sys": ["osRelease"],
|
|
||||||
"run": ["deno"],
|
|
||||||
"ffi": ["test"]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"test": {
|
|
||||||
"permissions": {
|
|
||||||
"read": [],
|
|
||||||
"write": [],
|
|
||||||
"net": [],
|
|
||||||
"env": [],
|
|
||||||
"sys": [],
|
|
||||||
"run": [],
|
|
||||||
"ffi": []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:allow_deny": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"permissions": {
|
|
||||||
"read": { "allow": ["test"], "deny": ["test"] },
|
|
||||||
"write": { "allow": ["test"], "deny": ["test"] },
|
|
||||||
"net": { "allow": ["https://example.com"], "deny": ["https://example.com"] },
|
|
||||||
"env": { "allow": ["FOO"], "deny": ["FOO"] },
|
|
||||||
"sys": { "allow": ["osRelease"], "deny": ["osRelease"] },
|
|
||||||
"run": { "allow": ["deno"], "deny": ["deno"] },
|
|
||||||
"ffi": { "allow": ["test"], "deny": ["test"] }
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"test": {
|
|
||||||
"permissions": {
|
|
||||||
"read": { "allow": [], "deny": [] },
|
|
||||||
"write": { "allow": [], "deny": [] },
|
|
||||||
"net": { "allow": [], "deny": [] },
|
|
||||||
"env": { "allow": [], "deny": [] },
|
|
||||||
"sys": { "allow": [], "deny": [] },
|
|
||||||
"run": { "allow": [], "deny": [] },
|
|
||||||
"ffi": { "allow": [], "deny": [] }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
1
tests/deno_repl.jsonc
Normal file
1
tests/deno_repl.jsonc
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
@@ -4,60 +4,17 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno run tests/mod.ts"
|
"task": "deno run mod.ts",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:ext": {
|
"flags:string": {
|
||||||
"task": "deno run tests/mod.ts",
|
"task": "deno run mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"run": {
|
"run": {
|
||||||
"ext": "ts"
|
"ext": "ts"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"flags:lock_1": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"lock": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:lock_2": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"lock": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:lock_3": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"lock": {
|
|
||||||
"write": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:lock_4": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"lock": {
|
|
||||||
"file": "tests/.deno.lock",
|
|
||||||
"write": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:lock_5": {
|
|
||||||
"task": "deno run tests/mod.ts",
|
|
||||||
"deno": {
|
|
||||||
"run": {
|
|
||||||
"lock": "deno.lock"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,20 +4,15 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno test tests/mod_test.ts"
|
"task": "deno test mod_test.ts",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:doc": {
|
"flags:boolean_true": {
|
||||||
"task": "deno test tests/mod_test.ts",
|
"task": "deno test mod_test.ts",
|
||||||
"deno": {
|
"cwd": "tests",
|
||||||
"test": {
|
|
||||||
"doc": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flags:execution_1": {
|
|
||||||
"task": "deno test tests/mod_test.ts",
|
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
|
"doc": true,
|
||||||
"traceOps": true,
|
"traceOps": true,
|
||||||
"failFast": true,
|
"failFast": true,
|
||||||
"shuffle": true,
|
"shuffle": true,
|
||||||
@@ -27,10 +22,12 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:execution_2": {
|
"flags:boolean_false": {
|
||||||
"task": "deno test tests/mod_test.ts",
|
"task": "deno test mod_test.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
|
"doc": false,
|
||||||
"traceOps": false,
|
"traceOps": false,
|
||||||
"failFast": false,
|
"failFast": false,
|
||||||
"shuffle": false,
|
"shuffle": false,
|
||||||
@@ -40,8 +37,9 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:execution_number": {
|
"flags:number": {
|
||||||
"task": "deno test tests/mod_test.ts",
|
"task": "deno test mod_test.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
"failFast": 1,
|
"failFast": 1,
|
||||||
@@ -49,39 +47,35 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:reporter": {
|
"flags:string": {
|
||||||
"task": "deno test tests/mod_test.ts",
|
"task": "deno test tests/mod_test.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
"coverage": "tests/.coverage",
|
"coverage": ".coverage",
|
||||||
"reporter": "junit",
|
"reporter": "junit",
|
||||||
|
"filter": "junit",
|
||||||
"junitPath": "tests/.junit.xml"
|
"junitPath": "tests/.junit.xml"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:ignore_1": {
|
"flags:array": {
|
||||||
"task": "deno test tests/mod_test.ts",
|
"task": "deno test tests/mod_test.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
"ignore": ["*_test.ts"]
|
"ignore": ["*_test.ts"]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:ignore_2": {
|
"flags:array_empty": {
|
||||||
"task": "deno test tests/mod_test.ts",
|
"task": "deno test tests/mod_test.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
"ignore": []
|
"ignore": []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"flags:filter": {
|
|
||||||
"task": "deno test tests/mod_test.ts",
|
|
||||||
"deno": {
|
|
||||||
"test": {
|
|
||||||
"filter": "dummy"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,8 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno types"
|
"task": "deno types",
|
||||||
|
"cwd": "tests"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
1
tests/deno_uninstall.jsonc
Normal file
1
tests/deno_uninstall.jsonc
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
@@ -4,10 +4,12 @@
|
|||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"flags:none": {
|
"flags:none": {
|
||||||
"task": "deno vendor 'data:application/typescript;base64,Y29uc29sZS5sb2coJ2Zvbycp'"
|
"task": "deno vendor mod.ts",
|
||||||
|
"cwd": "tests"
|
||||||
},
|
},
|
||||||
"flags:output_1": {
|
"flags:output_1": {
|
||||||
"task": "deno run 'data:application/typescript;base64,Y29uc29sZS5sb2coJ2Zvbycp'",
|
"task": "deno run mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"vendor": {
|
"vendor": {
|
||||||
"output": "vendor"
|
"output": "vendor"
|
||||||
@@ -15,7 +17,8 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:output_2": {
|
"flags:output_2": {
|
||||||
"task": "deno run 'data:application/typescript;base64,Y29uc29sZS5sb2coJ2Zvbycp'",
|
"task": "deno run mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"vendor": {
|
"vendor": {
|
||||||
"output": {
|
"output": {
|
||||||
@@ -26,7 +29,8 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:output_3": {
|
"flags:output_3": {
|
||||||
"task": "deno run 'data:application/typescript;base64,Y29uc29sZS5sb2coJ2Zvbycp'",
|
"task": "deno run mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"vendor": {
|
"vendor": {
|
||||||
"output": {
|
"output": {
|
||||||
@@ -36,7 +40,8 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flags:lock": {
|
"flags:lock": {
|
||||||
"task": "deno run 'data:application/typescript;base64,Y29uc29sZS5sb2coJ2Zvbycp'",
|
"task": "deno run mod.ts",
|
||||||
|
"cwd": "tests",
|
||||||
"deno": {
|
"deno": {
|
||||||
"vendor": {
|
"vendor": {
|
||||||
"lock": "deno.lock"
|
"lock": "deno.lock"
|
||||||
|
|||||||
1
tests/imports.json
Normal file
1
tests/imports.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
Reference in New Issue
Block a user