diff options
| author | Adam Mathes <adam@adammathes.com> | 2026-02-13 21:34:48 -0800 |
|---|---|---|
| committer | Adam Mathes <adam@adammathes.com> | 2026-02-13 21:34:48 -0800 |
| commit | 76cb9c2a39d477a64824a985ade40507e3bbade1 (patch) | |
| tree | 41e997aa9c6f538d3a136af61dae9424db2005a9 /vanilla/node_modules/vitest/dist/chunks/benchmark.B3N2zMcH.js | |
| parent | 819a39a21ac992b1393244a4c283bbb125208c69 (diff) | |
| download | neko-76cb9c2a39d477a64824a985ade40507e3bbade1.tar.gz neko-76cb9c2a39d477a64824a985ade40507e3bbade1.tar.bz2 neko-76cb9c2a39d477a64824a985ade40507e3bbade1.zip | |
feat(vanilla): add testing infrastructure and tests (NK-wjnczv)
Diffstat (limited to 'vanilla/node_modules/vitest/dist/chunks/benchmark.B3N2zMcH.js')
| -rw-r--r-- | vanilla/node_modules/vitest/dist/chunks/benchmark.B3N2zMcH.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/vanilla/node_modules/vitest/dist/chunks/benchmark.B3N2zMcH.js b/vanilla/node_modules/vitest/dist/chunks/benchmark.B3N2zMcH.js new file mode 100644 index 0000000..f51879c --- /dev/null +++ b/vanilla/node_modules/vitest/dist/chunks/benchmark.B3N2zMcH.js @@ -0,0 +1,40 @@ +import { getCurrentSuite } from '@vitest/runner'; +import { createChainable } from '@vitest/runner/utils'; +import { noop } from '@vitest/utils/helpers'; +import { g as getWorkerState } from './utils.DvEY5TfP.js'; + +const benchFns = /* @__PURE__ */ new WeakMap(); +const benchOptsMap = /* @__PURE__ */ new WeakMap(); +function getBenchOptions(key) { + return benchOptsMap.get(key); +} +function getBenchFn(key) { + return benchFns.get(key); +} +const bench = createBenchmark(function(name, fn = noop, options = {}) { + if (getWorkerState().config.mode !== "benchmark") throw new Error("`bench()` is only available in benchmark mode."); + const task = getCurrentSuite().task(formatName(name), { + ...this, + meta: { benchmark: true } + }); + benchFns.set(task, fn); + benchOptsMap.set(task, options); + // vitest runner sets mode to `todo` if handler is not passed down + // but we store handler separetly + if (!this.todo && task.mode === "todo") task.mode = "run"; +}); +function createBenchmark(fn) { + const benchmark = createChainable([ + "skip", + "only", + "todo" + ], fn); + benchmark.skipIf = (condition) => condition ? benchmark.skip : benchmark; + benchmark.runIf = (condition) => condition ? benchmark : benchmark.skip; + return benchmark; +} +function formatName(name) { + return typeof name === "string" ? name : typeof name === "function" ? name.name || "<anonymous>" : String(name); +} + +export { getBenchOptions as a, bench as b, getBenchFn as g }; |
