Skip to content

Commit 58cf8cd

Browse files
committed
move lib to folder
1 parent 0529f0c commit 58cf8cd

24 files changed

+66
-37
lines changed

package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,12 @@
2121
],
2222
"license": "EUPL-1.2",
2323
"engines": {
24-
"node": ">=18.0.0"
24+
"node": ">=22.18.0"
2525
},
2626
"type": "module",
2727
"files": [
28-
"dist"
28+
"dist",
29+
"src/cli"
2930
],
3031
"main": "dist/css-code-coverage.js",
3132
"exports": {

src/cli/cli.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#!/usr/bin/env node
2+
13
import { validate_arguments, parse_arguments, InvalidArgumentsError } from './arguments.ts'
24
import { program, MissingDataError } from './program.ts'
35
import { read } from './file-reader.ts'

src/cli/file-reader.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { readFile, stat, readdir } from 'node:fs/promises'
22
import { join } from 'node:path'
3-
import { parse_coverage, type Coverage } from '../parse-coverage.ts'
3+
import { parse_coverage, type Coverage } from '../lib/parse-coverage.ts'
44

55
export async function read(coverage_dir: string): Promise<Coverage[]> {
66
let s = await stat(coverage_dir)

src/cli/program.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import type { CliArguments } from './arguments'
2-
import { calculate_coverage, type Coverage, type CoverageResult } from '../index.ts'
3-
import { read } from './file-reader.ts'
1+
import { calculate_coverage, type Coverage, type CoverageResult } from '../lib/index.ts'
42
import { DOMParser } from 'linkedom'
53

64
function parse_html(html: string) {
@@ -9,7 +7,7 @@ function parse_html(html: string) {
97

108
export class MissingDataError extends Error {
119
constructor() {
12-
super('Missing data to analyze')
10+
super('No data to analyze')
1311
}
1412
}
1513

src/cli/reporters/tap.ts

Lines changed: 42 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,30 @@
11
import type { CliArguments } from '../arguments'
22
import type { Report } from '../program'
33

4+
function version() {
5+
console.log('TAP version 13')
6+
}
7+
8+
function plan(total: number) {
9+
console.log(`1..${total}`)
10+
}
11+
12+
function ok(n: number, description?: string) {
13+
console.log(`ok ${n} ${description ? `- ${description}` : ''}`)
14+
}
15+
16+
function not_ok(n: number, description?: string) {
17+
console.log(`not ok ${n} ${description ? `- ${description}` : ''}`)
18+
}
19+
20+
function meta(data: Record<string | number, string | number>) {
21+
console.log(' ---')
22+
for (let key in data) {
23+
console.log(` ${key}: ${data[key]}`)
24+
}
25+
console.log(' ...')
26+
}
27+
428
export function print({ report, context }: Report, params: CliArguments) {
529
let total_files = context.coverage.coverage_per_stylesheet.length
630
let total_checks = total_files + 1
@@ -11,37 +35,41 @@ export function print({ report, context }: Report, params: CliArguments) {
1135
checks_added++
1236
}
1337

14-
console.log('TAP version 13')
15-
console.log(`1..${total_checks}`)
38+
version()
39+
plan(total_checks)
1640

1741
// global line coverage
1842
if (report.min_line_coverage.ok) {
19-
console.log(`ok 1 - overall line coverage`)
43+
ok(1, 'overall line coverage')
2044
} else {
21-
console.log(`not ok 1 - overall line coverage`)
45+
not_ok(1, 'overall line coverage')
2246
}
2347

2448
// per-file line coverage
2549
if (report.min_file_line_coverage.expected !== undefined) {
2650
if (report.min_file_line_coverage.ok) {
27-
console.log(`ok 2 - line coverage per file`)
51+
ok(2, 'line coverage per file')
2852
} else {
29-
console.log(`not ok 2 - line coverage per file`)
53+
not_ok(2, 'line coverage per file')
54+
meta({
55+
expected_min_coverage: report.min_file_line_coverage.expected,
56+
actual_min_coverage: report.min_file_line_coverage.actual,
57+
})
3058
}
3159

3260
for (let i = 0; i < total_files; i++) {
3361
let sheet = context.coverage.coverage_per_stylesheet[i]!
3462
let num = i + checks_added + 1
3563
if (sheet.line_coverage_ratio < report.min_file_line_coverage.expected) {
36-
console.log(`not ok ${num} - ${sheet.url}`)
37-
console.log('---')
38-
console.log(`expected_coverage: ${(report.min_file_line_coverage.expected * 100).toFixed(2)}%`)
39-
console.log(`actual_coverage: ${(sheet.line_coverage_ratio * 100).toFixed(2)}%`)
40-
console.log(`lines_covered: ${sheet.covered_lines}`)
41-
console.log(`total_lines: ${sheet.total_lines}`)
42-
console.log('...')
64+
not_ok(num, sheet.url)
65+
meta({
66+
expected_coverage: report.min_file_line_coverage.expected,
67+
actual_coverage: report.min_file_line_coverage.actual,
68+
lines_covered: sheet.covered_lines,
69+
total_lines: sheet.total_lines,
70+
})
4371
} else {
44-
console.log(`ok ${num} - ${sheet.url}`)
72+
ok(num, sheet.url)
4573
}
4674
}
4775
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)