mirror of
https://github.com/kucherenko/jscpd.git
synced 2026-09-19 08:11:03 +08:00
64e471e2b0
Adds 92 new tests (178 → 270 total) with zero source-file modifications: - packages/finder: 13 new test files covering all reporters, subscribers, validators, hooks, utils, options, cloneFound, getFilesToDetect, and InFilesDetector; shared buildClone() factory helper - apps/jscpd: 3 new test files (options-unit, print, store) plus extensions to formats, modes, and options integration tests - vitest.config.ts added to both packages to restrict coverage.include to src/** only, eliminating bin/ and prism.js noise - Fixes 3 tokenizer bugs (trailing space in format lookup, tokenization edge cases) uncovered by the new format fixture suite - Adds fixture files for 40+ language formats to support formats.test.ts
32 lines
648 B
Awk
32 lines
648 B
Awk
#!/usr/bin/awk -f
|
|
# AWK script to process CSV data and compute statistics
|
|
|
|
BEGIN {
|
|
FS = ",";
|
|
OFS = "\t";
|
|
total = 0;
|
|
count = 0;
|
|
print "Processing records...";
|
|
print "Name\tValue\tRunning Total";
|
|
}
|
|
|
|
NR > 1 {
|
|
name = $1;
|
|
value = $2;
|
|
total += value;
|
|
count++;
|
|
printf "%-20s\t%8.2f\t%10.2f\n", name, value, total;
|
|
}
|
|
|
|
END {
|
|
if (count > 0) {
|
|
average = total / count;
|
|
max_val = 0;
|
|
printf "\nSummary:\n";
|
|
printf " Records: %d\n", count;
|
|
printf " Total: %.2f\n", total;
|
|
printf " Average: %.2f\n", average;
|
|
printf " Max: %.2f\n", max_val;
|
|
}
|
|
}
|