UNPKG

@tapjs/reporter

Version:

Pretty test output reporters for tap

33 lines 1.62 kB
import { Box, Text } from 'ink'; import React from 'react'; import { useCountsLists } from './hooks/use-counts-lists.js'; import { useTestTime } from './hooks/use-test-time.js'; import { ms } from './ms.js'; import { TestBadge } from './test-badge.js'; import { TestResultsList } from './test-results-list.js'; export const TestSummary = ({ test, details = false, }) => { const [counts] = useCountsLists(test); const time = useTestTime(test); const { total, todo, skip, fail } = counts; const { exitCode, signal } = test.options; const ok = !todo && !skip && !fail && !exitCode && !signal; return (React.createElement(Box, { flexDirection: "column" }, React.createElement(Box, { gap: 1 }, React.createElement(TestBadge, { test: test }), React.createElement(Text, null, test.name), !!fail && React.createElement(Text, { color: "red" }, fail, " failed"), !!todo && React.createElement(Text, { color: "magenta" }, todo, " todo"), !!skip && React.createElement(Text, { color: "cyan" }, skip, " skip"), !!(fail || todo || skip) && React.createElement(Text, null, "of"), React.createElement(Text, { bold: true }, total), ok && React.createElement(Text, { color: "green" }, "OK"), time !== 0 && (React.createElement(Text, { bold: true, dimColor: true }, ms(time)))), React.createElement(TestResultsList, { test: test, details: details }))); }; //# sourceMappingURL=test-summary.js.map