1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-21 05:42:25 -05:00
This commit is contained in:
Marvin Hagemeister 2024-10-14 11:43:39 +02:00
parent 2fce56964e
commit fd35d4b688
2 changed files with 52 additions and 0 deletions

View file

@ -962,6 +962,56 @@ globalThis.afterEach = afterEach;
globalThis.it = it;
globalThis.describe = describe;
/**
* @param {number} seed
*/
function prepareTests(seed) {
const hasOnly = BDD_CONTEXT.hasOnly;
if (hasOnly) {
ROOT_TEST_GROUP.only = ROOT_TEST_GROUP.children.some((child) => child.only);
}
const stack = [ROOT_TEST_GROUP];
/** @type {TestGroup | undefined} */
let group;
// deno-lint-ignore no-extra-boolean-cast
while (!!(group = stack.pop())) {
if (hasOnly && !group.only) {
group.ignore = true;
}
if (seed > 0 && !group.ignore && group.children.length > 1) {
shuffle(group.children, seed);
}
// Sort tests:
// - non-ignored tests first (might be shuffled earlier)
// - ignored tests second
// - groups last
group.children.sort(sortTestItems);
for (let i = 0; i < group.children.length; i++) {
const child = group.children[i];
if (group.ignore) {
child.ignore = true;
}
if (isTestGroup(child)) {
stack.push(child);
}
}
}
}
/**
* @param {*} seed
* @param {*} group
*/
function prepareGroup(seed, group) {
}
/**
* This function is called from Rust.
* @param {number} seed

View file

@ -855,6 +855,8 @@ pub async fn run_tests_for_worker(
.js_runtime
.with_event_loop_promise(call, PollEventLoopOptions::default())
.await;
_ = send_test_event(&state_rc, TestEvent::Completed);
return Ok(());
}