@plugjs/plug 0.0.11 → 0.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/{types → dist}/assert.d.ts +0 -0
  2. package/{types → dist}/async.d.ts +0 -0
  3. package/{types → dist}/build.d.ts +0 -0
  4. package/dist/files.cjs +1 -1
  5. package/dist/files.cjs.map +1 -1
  6. package/{types → dist}/files.d.ts +0 -0
  7. package/dist/files.mjs +2 -2
  8. package/dist/files.mjs.map +1 -1
  9. package/dist/fork.cjs +1 -1
  10. package/dist/fork.cjs.map +1 -1
  11. package/{types → dist}/fork.d.ts +0 -0
  12. package/dist/fork.mjs +2 -2
  13. package/dist/fork.mjs.map +1 -1
  14. package/dist/helpers.cjs +12 -2
  15. package/dist/helpers.cjs.map +1 -1
  16. package/{types → dist}/helpers.d.ts +5 -1
  17. package/dist/helpers.mjs +15 -2
  18. package/dist/helpers.mjs.map +1 -1
  19. package/{types → dist}/index.d.ts +0 -0
  20. package/{types → dist}/log/colors.d.ts +0 -0
  21. package/{types → dist}/log/emit.d.ts +0 -0
  22. package/{types → dist}/log/levels.d.ts +0 -0
  23. package/{types → dist}/log/logger.d.ts +0 -0
  24. package/{types → dist}/log/options.d.ts +0 -0
  25. package/dist/log/report.cjs +2 -2
  26. package/dist/log/report.cjs.map +1 -1
  27. package/{types → dist}/log/report.d.ts +0 -0
  28. package/dist/log/report.mjs +2 -2
  29. package/dist/log/report.mjs.map +1 -1
  30. package/{types → dist}/log/spinner.d.ts +0 -0
  31. package/{types → dist}/log.d.ts +0 -0
  32. package/dist/paths.cjs +7 -7
  33. package/dist/paths.cjs.map +1 -1
  34. package/{types → dist}/paths.d.ts +2 -2
  35. package/dist/paths.mjs +5 -5
  36. package/dist/paths.mjs.map +1 -1
  37. package/{types → dist}/pipe.d.ts +0 -0
  38. package/{types → dist}/plugs/copy.d.ts +0 -0
  39. package/{types → dist}/plugs/coverage/analysis.d.ts +0 -0
  40. package/dist/plugs/coverage/report.cjs +3 -1
  41. package/dist/plugs/coverage/report.cjs.map +1 -1
  42. package/{types → dist}/plugs/coverage/report.d.ts +0 -0
  43. package/dist/plugs/coverage/report.mjs +3 -1
  44. package/dist/plugs/coverage/report.mjs.map +1 -1
  45. package/dist/plugs/coverage.cjs +4 -2
  46. package/dist/plugs/coverage.cjs.map +1 -1
  47. package/{types → dist}/plugs/coverage.d.ts +0 -0
  48. package/dist/plugs/coverage.mjs +4 -2
  49. package/dist/plugs/coverage.mjs.map +1 -1
  50. package/{types → dist}/plugs/debug.d.ts +0 -0
  51. package/{types → dist}/plugs/esbuild/bundle-locals.d.ts +0 -0
  52. package/dist/plugs/esbuild/fix-extensions.cjs +6 -6
  53. package/dist/plugs/esbuild/fix-extensions.cjs.map +2 -2
  54. package/{types → dist}/plugs/esbuild/fix-extensions.d.ts +0 -0
  55. package/dist/plugs/esbuild/fix-extensions.mjs +7 -7
  56. package/dist/plugs/esbuild/fix-extensions.mjs.map +2 -2
  57. package/{types → dist}/plugs/esbuild.d.ts +0 -0
  58. package/dist/plugs/eslint/runner.cjs +2 -2
  59. package/dist/plugs/eslint/runner.cjs.map +1 -1
  60. package/{types → dist}/plugs/eslint/runner.d.ts +0 -0
  61. package/dist/plugs/eslint/runner.mjs +3 -3
  62. package/dist/plugs/eslint/runner.mjs.map +1 -1
  63. package/dist/plugs/exec.cjs +3 -3
  64. package/dist/plugs/exec.cjs.map +1 -1
  65. package/{types → dist}/plugs/exec.d.ts +0 -0
  66. package/dist/plugs/exec.mjs +4 -4
  67. package/dist/plugs/exec.mjs.map +1 -1
  68. package/{types → dist}/plugs/filter.d.ts +0 -0
  69. package/dist/plugs/mocha/reporter.cjs +7 -0
  70. package/dist/plugs/mocha/reporter.cjs.map +1 -1
  71. package/{types → dist}/plugs/mocha/reporter.d.ts +0 -0
  72. package/dist/plugs/mocha/reporter.mjs +7 -0
  73. package/dist/plugs/mocha/reporter.mjs.map +1 -1
  74. package/{types → dist}/plugs/mocha/runner.d.ts +0 -0
  75. package/{types → dist}/plugs/rmf.d.ts +0 -0
  76. package/{types → dist}/plugs/tsc/compiler.d.ts +0 -0
  77. package/{types → dist}/plugs/tsc/options.d.ts +0 -0
  78. package/{types → dist}/plugs/tsc/report.d.ts +0 -0
  79. package/dist/plugs/tsc/runner.cjs +2 -2
  80. package/dist/plugs/tsc/runner.cjs.map +1 -1
  81. package/{types → dist}/plugs/tsc/runner.d.ts +0 -0
  82. package/dist/plugs/tsc/runner.mjs +3 -3
  83. package/dist/plugs/tsc/runner.mjs.map +1 -1
  84. package/{types → dist}/plugs.d.ts +0 -0
  85. package/{types → dist}/run.d.ts +0 -0
  86. package/{types → dist}/task.d.ts +0 -0
  87. package/{types → dist}/utils/asyncfs.d.ts +0 -0
  88. package/{types → dist}/utils/caller.d.ts +0 -0
  89. package/{types → dist}/utils/match.d.ts +0 -0
  90. package/{types → dist}/utils/options.d.ts +0 -0
  91. package/{types → dist}/utils/walk.d.ts +0 -0
  92. package/package.json +10 -9
  93. package/src/log/report.ts +2 -2
  94. package/src/plugs/coverage/report.ts +3 -1
  95. package/src/plugs/coverage.ts +4 -2
  96. package/src/plugs/mocha/reporter.ts +9 -0
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "@plugjs/plug",
3
- "version": "0.0.11",
3
+ "version": "0.0.14",
4
4
  "type": "commonjs",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
7
- "types": "./types/index.d.ts",
7
+ "types": "./dist/index.d.ts",
8
8
  "exports": {
9
9
  ".": {
10
10
  "require": {
11
- "types": "./types/index.d.ts",
11
+ "types": "./dist/index.d.ts",
12
12
  "default": "./dist/index.cjs"
13
13
  },
14
14
  "import": {
15
- "types": "./types/index.d.ts",
15
+ "types": "./dist/index.d.ts",
16
16
  "default": "./dist/index.mjs"
17
17
  }
18
18
  }
@@ -28,9 +28,9 @@
28
28
  "author": "",
29
29
  "license": "ISC",
30
30
  "dependencies": {
31
- "@babel/parser": "^7.18.11",
32
- "@babel/types": "^7.18.10",
33
- "@plugjs/cov8-html": "^0.0.1",
31
+ "@babel/parser": "^7.18.13",
32
+ "@babel/types": "^7.18.13",
33
+ "@plugjs/cov8-html": "^0.0.2",
34
34
  "@types/node": "<17",
35
35
  "diff": "^5.1.0",
36
36
  "esbuild": "^0.15.5",
@@ -42,6 +42,7 @@
42
42
  "yargs-parser": "^21.1.1"
43
43
  },
44
44
  "devDependencies": {
45
+ "@plugjs/eslint-plugin": "^0.0.2",
45
46
  "@types/chai": "^4.3.3",
46
47
  "@types/diff": "^5.0.2",
47
48
  "@types/eslint": "^8.4.6",
@@ -49,8 +50,8 @@
49
50
  "@types/ms": "^0.7.31",
50
51
  "@types/picomatch": "^2.3.0",
51
52
  "@types/yargs-parser": "^21.0.0",
52
- "@typescript-eslint/eslint-plugin": "^5.33.1",
53
- "@typescript-eslint/parser": "^5.33.1",
53
+ "@typescript-eslint/eslint-plugin": "^5.34.0",
54
+ "@typescript-eslint/parser": "^5.34.0",
54
55
  "chai": "^4.3.6",
55
56
  "eslint-config-google": "^0.14.0"
56
57
  }
package/src/log/report.ts CHANGED
@@ -354,8 +354,8 @@ class ReportImpl implements Report {
354
354
  if (file && file !== nul && annotation) {
355
355
  const { level, note } = annotation
356
356
  const $col = level === NOTICE ? $blu : level === WARN ? $ylw : $red
357
- const ann = `${$gry('[')}${$col(note.padStart(aPad))}${$gry(']')}`
358
- const pad = ''.padStart(fPad - file.length) // file is underlined
357
+ const ann = `${$gry('[')}${$col(note)}${$gry(']')}`
358
+ const pad = ''.padStart((fPad + aPad) - (file.length + note.length))
359
359
 
360
360
  this._emitter({ ...options, level }, [ $wht($und(file)), pad, ann ])
361
361
  } else if (file !== nul ) {
@@ -329,7 +329,9 @@ export async function coverageReport(
329
329
  function updateNodeCoverageResult(result: NodeCoverageResult): void {
330
330
  const { coveredNodes, missingNodes, ignoredNodes } = result
331
331
  const totalNodes = result.totalNodes = coveredNodes + missingNodes + ignoredNodes
332
- if (totalNodes - ignoredNodes) {
332
+ if (totalNodes === 0) {
333
+ result.coverage = 100 // No "total" nodes, means all ignored
334
+ } else if (totalNodes - ignoredNodes) {
333
335
  result.coverage = Math.floor((100 * coveredNodes) / (totalNodes - ignoredNodes))
334
336
  } else {
335
337
  result.coverage = 0 // No "infinity" on division by zero...
@@ -98,10 +98,12 @@ export class Coverage<
98
98
  const _report = run.report('Coverage report')
99
99
 
100
100
  for (const [ _file, result ] of Object.entries(report.results)) {
101
- const { coverage } = result.nodeCoverage
101
+ const { coverage, totalNodes } = result.nodeCoverage
102
102
  const file = _file as AbsolutePath
103
103
 
104
- if (coverage < minimumFileCoverage) {
104
+ if (totalNodes === 0) {
105
+ _report.annotate(NOTICE, file, 'n/a')
106
+ } else if (coverage < minimumFileCoverage) {
105
107
  _report.annotate(ERROR, file, `${coverage} %`)
106
108
  fileErrors ++
107
109
  } else if (coverage < optimalFileCoverage) {
@@ -39,6 +39,15 @@ export class PlugReporter extends RealMocha.reporters.Base {
39
39
  log.leave()
40
40
  })
41
41
 
42
+ runner.on('fail', (test) => {
43
+ // Hooks fail here (not on "hook end")
44
+ if (test.type as any === 'hook') {
45
+ const number = failures.push(test)
46
+ const tag = $gry('[') + $red('failed') + $gry('] [') + $red(number) + $gry(']')
47
+ log.error(`${$red(_failure)} ${test.title} ${tag}`)
48
+ }
49
+ })
50
+
42
51
  // Enter a test (increase indent)
43
52
  runner.on('test', (test) => {
44
53
  log.enter(NOTICE, `${$blu(_pending)} ${test.title}`)