Skip to content

Commit 06d6207

Browse files
authored
perf(reporters): optimize getting the tests stats (#8908)
1 parent 2f37cce commit 06d6207

File tree

1 file changed

+8
-8
lines changed
  • packages/vitest/src/node/reporters/renderers

1 file changed

+8
-8
lines changed

packages/vitest/src/node/reporters/renderers/utils.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -149,17 +149,17 @@ export function getStateString(
149149
return c.dim(`no ${name}`)
150150
}
151151

152-
const passed = tasks.filter(i => i.result?.state === 'pass')
153-
const failed = tasks.filter(i => i.result?.state === 'fail')
154-
const skipped = tasks.filter(i => i.mode === 'skip')
155-
const todo = tasks.filter(i => i.mode === 'todo')
152+
const passed = tasks.reduce((acc, i) => i.result?.state === 'pass' ? acc + 1 : acc, 0)
153+
const failed = tasks.reduce((acc, i) => i.result?.state === 'fail' ? acc + 1 : acc, 0)
154+
const skipped = tasks.reduce((acc, i) => i.mode === 'skip' ? acc + 1 : acc, 0)
155+
const todo = tasks.reduce((acc, i) => i.mode === 'todo' ? acc + 1 : acc, 0)
156156

157157
return (
158158
[
159-
failed.length ? c.bold(c.red(`${failed.length} failed`)) : null,
160-
passed.length ? c.bold(c.green(`${passed.length} passed`)) : null,
161-
skipped.length ? c.yellow(`${skipped.length} skipped`) : null,
162-
todo.length ? c.gray(`${todo.length} todo`) : null,
159+
failed ? c.bold(c.red(`${failed} failed`)) : null,
160+
passed ? c.bold(c.green(`${passed} passed`)) : null,
161+
skipped ? c.yellow(`${skipped} skipped`) : null,
162+
todo ? c.gray(`${todo} todo`) : null,
163163
]
164164
.filter(Boolean)
165165
.join(c.dim(' | ')) + (showTotal ? c.gray(` (${tasks.length})`) : '')

0 commit comments

Comments
 (0)