UNPKG

@riddance/service

Version:

Too much code slows you down, creates risks, increases maintainability burdens, confuses AI. So let's commit less of it.

42 lines 4.78 kB
import { getTestContext } from './setup.js'; export function getLoggedEntries() { return getTestContext().log.getEntries(); } export function clearLoggedEntries() { getTestContext().log.clear(); } export function getEmitted() { return [...getTestContext().emitted]; } export function clearEmitted() { getTestContext().emitted = []; } export function allowErrorLogs() { const l = getTestContext().log; l.failOnErrorLogs = false; return { [Symbol.dispose]: () => { l.failOnErrorLogs = true; }, }; } export function timeShift(seconds) { getTestContext().timeShift += seconds; } export function timeShiftTo(when) { getTestContext().timeShift = 0; timeShift((when.getTime() - Date.now()) / 1000); } export function freezeTime(when) { getTestContext().frozenTime = when.getTime(); } export function unfreezeTime() { getTestContext().frozenTime = undefined; } export function getEnvironment() { return { ...getTestContext().env }; } export function setEnvironment(env) { Object.assign(getTestContext().env, env); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUUzQyxNQUFNLFVBQVUsZ0JBQWdCO0lBQzVCLE9BQU8sY0FBYyxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFBO0FBQzVDLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCO0lBQzlCLGNBQWMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtBQUNoQyxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVU7SUFPdEIsT0FBTyxDQUFDLEdBQUcsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDeEMsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZO0lBQ3hCLGNBQWMsRUFBRSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUE7QUFDakMsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjO0lBQzFCLE1BQU0sQ0FBQyxHQUFHLGNBQWMsRUFBRSxDQUFDLEdBQUcsQ0FBQTtJQUM5QixDQUFDLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQTtJQUN6QixPQUFPO1FBQ0gsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxFQUFFO1lBQ25CLENBQUMsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFBO1FBQzVCLENBQUM7S0FDSixDQUFBO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUMsT0FBZTtJQUNyQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFBO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQVU7SUFDbEMsY0FBYyxFQUFFLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQTtJQUM5QixTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBVTtJQUNqQyxjQUFjLEVBQUUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFBO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWTtJQUN4QixjQUFjLEVBQUUsQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFBO0FBQzNDLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYztJQUMxQixPQUFPLEVBQUUsR0FBRyxjQUFjLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtBQUN0QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxHQUF5QjtJQUNwRCxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtBQUM1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9nRW50cnkgfSBmcm9tICdAcmlkZGFuY2UvaG9zdC9jb250ZXh0J1xuaW1wb3J0IHsgRW52aXJvbm1lbnQsIEpzb24gfSBmcm9tICcuLi9jb250ZXh0LmpzJ1xuaW1wb3J0IHsgZ2V0VGVzdENvbnRleHQgfSBmcm9tICcuL3NldHVwLmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TG9nZ2VkRW50cmllcygpOiBMb2dFbnRyeVtdIHtcbiAgICByZXR1cm4gZ2V0VGVzdENvbnRleHQoKS5sb2cuZ2V0RW50cmllcygpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhckxvZ2dlZEVudHJpZXMoKSB7XG4gICAgZ2V0VGVzdENvbnRleHQoKS5sb2cuY2xlYXIoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RW1pdHRlZCgpOiB7XG4gICAgdG9waWM6IHN0cmluZ1xuICAgIHR5cGU6IHN0cmluZ1xuICAgIHN1YmplY3Q6IHN0cmluZ1xuICAgIGRhdGE/OiBKc29uXG4gICAgbWVzc2FnZUlkPzogc3RyaW5nXG59W10ge1xuICAgIHJldHVybiBbLi4uZ2V0VGVzdENvbnRleHQoKS5lbWl0dGVkXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJFbWl0dGVkKCkge1xuICAgIGdldFRlc3RDb250ZXh0KCkuZW1pdHRlZCA9IFtdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhbGxvd0Vycm9yTG9ncygpIHtcbiAgICBjb25zdCBsID0gZ2V0VGVzdENvbnRleHQoKS5sb2dcbiAgICBsLmZhaWxPbkVycm9yTG9ncyA9IGZhbHNlXG4gICAgcmV0dXJuIHtcbiAgICAgICAgW1N5bWJvbC5kaXNwb3NlXTogKCkgPT4ge1xuICAgICAgICAgICAgbC5mYWlsT25FcnJvckxvZ3MgPSB0cnVlXG4gICAgICAgIH0sXG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdGltZVNoaWZ0KHNlY29uZHM6IG51bWJlcikge1xuICAgIGdldFRlc3RDb250ZXh0KCkudGltZVNoaWZ0ICs9IHNlY29uZHNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRpbWVTaGlmdFRvKHdoZW46IERhdGUpIHtcbiAgICBnZXRUZXN0Q29udGV4dCgpLnRpbWVTaGlmdCA9IDBcbiAgICB0aW1lU2hpZnQoKHdoZW4uZ2V0VGltZSgpIC0gRGF0ZS5ub3coKSkgLyAxMDAwKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJlZXplVGltZSh3aGVuOiBEYXRlKSB7XG4gICAgZ2V0VGVzdENvbnRleHQoKS5mcm96ZW5UaW1lID0gd2hlbi5nZXRUaW1lKClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVuZnJlZXplVGltZSgpIHtcbiAgICBnZXRUZXN0Q29udGV4dCgpLmZyb3plblRpbWUgPSB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVudmlyb25tZW50KCkge1xuICAgIHJldHVybiB7IC4uLmdldFRlc3RDb250ZXh0KCkuZW52IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldEVudmlyb25tZW50KGVudjogUGFydGlhbDxFbnZpcm9ubWVudD4pIHtcbiAgICBPYmplY3QuYXNzaWduKGdldFRlc3RDb250ZXh0KCkuZW52LCBlbnYpXG59XG4iXX0=