aboutsummaryrefslogtreecommitdiffstats
path: root/vanilla/node_modules/istanbul-reports/lib/json
diff options
context:
space:
mode:
authorAdam Mathes <adam@adammathes.com>2026-02-13 21:34:48 -0800
committerAdam Mathes <adam@adammathes.com>2026-02-13 21:34:48 -0800
commit76cb9c2a39d477a64824a985ade40507e3bbade1 (patch)
tree41e997aa9c6f538d3a136af61dae9424db2005a9 /vanilla/node_modules/istanbul-reports/lib/json
parent819a39a21ac992b1393244a4c283bbb125208c69 (diff)
downloadneko-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/istanbul-reports/lib/json')
-rw-r--r--vanilla/node_modules/istanbul-reports/lib/json/index.js44
1 files changed, 44 insertions, 0 deletions
diff --git a/vanilla/node_modules/istanbul-reports/lib/json/index.js b/vanilla/node_modules/istanbul-reports/lib/json/index.js
new file mode 100644
index 0000000..bcae6ae
--- /dev/null
+++ b/vanilla/node_modules/istanbul-reports/lib/json/index.js
@@ -0,0 +1,44 @@
+/*
+ Copyright 2012-2015, Yahoo Inc.
+ Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
+ */
+'use strict';
+const { ReportBase } = require('istanbul-lib-report');
+
+class JsonReport extends ReportBase {
+ constructor(opts) {
+ super();
+
+ this.file = opts.file || 'coverage-final.json';
+ this.first = true;
+ }
+
+ onStart(root, context) {
+ this.contentWriter = context.writer.writeFile(this.file);
+ this.contentWriter.write('{');
+ }
+
+ onDetail(node) {
+ const fc = node.getFileCoverage();
+ const key = fc.path;
+ const cw = this.contentWriter;
+
+ if (this.first) {
+ this.first = false;
+ } else {
+ cw.write(',');
+ }
+ cw.write(JSON.stringify(key));
+ cw.write(': ');
+ cw.write(JSON.stringify(fc));
+ cw.println('');
+ }
+
+ onEnd() {
+ const cw = this.contentWriter;
+ cw.println('}');
+ cw.close();
+ }
+}
+
+module.exports = JsonReport;