mirror of
https://github.com/denoland/deno.git
synced 2024-11-29 16:30:56 -05:00
fix: don't error if Deno.bench() or Deno.test() are used in run subcommand (#14946)
This commit is contained in:
parent
9f9941c03b
commit
22bd1fee85
6 changed files with 42 additions and 0 deletions
|
@ -199,6 +199,11 @@ async fn test_specifier(
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
worker.js_runtime.execute_script(
|
||||||
|
&located_script_name!(),
|
||||||
|
r#"Deno[Deno.internal].enableTestAndBench()"#,
|
||||||
|
)?;
|
||||||
|
|
||||||
worker
|
worker
|
||||||
.execute_script(
|
.execute_script(
|
||||||
&located_script_name!(),
|
&located_script_name!(),
|
||||||
|
|
|
@ -2728,3 +2728,8 @@ fn running_declaration_files() {
|
||||||
assert!(output.status.success());
|
assert!(output.status.success());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
itest!(test_and_bench_are_noops_in_run {
|
||||||
|
args: "run test_and_bench_in_run.js",
|
||||||
|
output_str: Some(""),
|
||||||
|
});
|
||||||
|
|
5
cli/tests/testdata/test_and_bench_in_run.js
vendored
Normal file
5
cli/tests/testdata/test_and_bench_in_run.js
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
Deno.test(function foo() {
|
||||||
|
});
|
||||||
|
|
||||||
|
Deno.bench(function bar() {
|
||||||
|
});
|
|
@ -369,6 +369,11 @@ async fn bench_specifier(
|
||||||
Default::default(),
|
Default::default(),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
worker.js_runtime.execute_script(
|
||||||
|
&located_script_name!(),
|
||||||
|
r#"Deno[Deno.internal].enableTestAndBench()"#,
|
||||||
|
)?;
|
||||||
|
|
||||||
if options.compat_mode {
|
if options.compat_mode {
|
||||||
worker.execute_side_module(&compat::GLOBAL_URL).await?;
|
worker.execute_side_module(&compat::GLOBAL_URL).await?;
|
||||||
worker.execute_side_module(&compat::MODULE_URL).await?;
|
worker.execute_side_module(&compat::MODULE_URL).await?;
|
||||||
|
|
|
@ -743,6 +743,11 @@ async fn test_specifier(
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
worker.js_runtime.execute_script(
|
||||||
|
&located_script_name!(),
|
||||||
|
r#"Deno[Deno.internal].enableTestAndBench()"#,
|
||||||
|
)?;
|
||||||
|
|
||||||
let mut maybe_coverage_collector = if let Some(ref coverage_dir) =
|
let mut maybe_coverage_collector = if let Some(ref coverage_dir) =
|
||||||
ps.coverage_dir
|
ps.coverage_dir
|
||||||
{
|
{
|
||||||
|
|
|
@ -554,6 +554,7 @@
|
||||||
const tests = [];
|
const tests = [];
|
||||||
/** @type {BenchDescription[]} */
|
/** @type {BenchDescription[]} */
|
||||||
const benchDescs = [];
|
const benchDescs = [];
|
||||||
|
let isTestOrBenchSubcommand = false;
|
||||||
|
|
||||||
// Main test function provided by Deno.
|
// Main test function provided by Deno.
|
||||||
function test(
|
function test(
|
||||||
|
@ -561,6 +562,10 @@
|
||||||
optionsOrFn,
|
optionsOrFn,
|
||||||
maybeFn,
|
maybeFn,
|
||||||
) {
|
) {
|
||||||
|
if (!isTestOrBenchSubcommand) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
let testDef;
|
let testDef;
|
||||||
const defaults = {
|
const defaults = {
|
||||||
ignore: false,
|
ignore: false,
|
||||||
|
@ -669,6 +674,10 @@
|
||||||
optionsOrFn,
|
optionsOrFn,
|
||||||
maybeFn,
|
maybeFn,
|
||||||
) {
|
) {
|
||||||
|
if (!isTestOrBenchSubcommand) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
core.opSync("op_bench_check_unstable");
|
core.opSync("op_bench_check_unstable");
|
||||||
let benchDesc;
|
let benchDesc;
|
||||||
const defaults = {
|
const defaults = {
|
||||||
|
@ -1043,6 +1052,13 @@
|
||||||
return core.opSync("op_bench_now");
|
return core.opSync("op_bench_now");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This function is called by Rust side if we're in `deno test` or
|
||||||
|
// `deno bench` subcommand. If this function is not called then `Deno.test()`
|
||||||
|
// and `Deno.bench()` become noops.
|
||||||
|
function enableTestAndBench() {
|
||||||
|
isTestOrBenchSubcommand = true;
|
||||||
|
}
|
||||||
|
|
||||||
async function runTests({
|
async function runTests({
|
||||||
filter = null,
|
filter = null,
|
||||||
shuffle = null,
|
shuffle = null,
|
||||||
|
@ -1507,6 +1523,7 @@
|
||||||
|
|
||||||
window.__bootstrap.internals = {
|
window.__bootstrap.internals = {
|
||||||
...window.__bootstrap.internals ?? {},
|
...window.__bootstrap.internals ?? {},
|
||||||
|
enableTestAndBench,
|
||||||
runTests,
|
runTests,
|
||||||
runBenchmarks,
|
runBenchmarks,
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue