@practica/create-node-app
Version:
Create Node.js app that is packed with best practices AND strive for simplicity
203 lines (150 loc) • 15.5 kB
Plain Text
> /error-handling@0.0.3 test
> jest --runInBand
[1m[2mDetermining test suites to run...[22m[22m[999D[K
[K
[1A[999D[K
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1Ats-jest[versions] (WARN) Version 5.2.2 of typescript installed has not been tested with ts-jest. If you're experiencing issues, consider using a supported version (>=4.3.0 <5.0.0-0). Please do not report issues in ts-jest if you are using unsupported versions.
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1Ats-jest[ts-jest-transformer] (WARN) Got a `.js` file to compile while `allowJs` option is not set to `true` (file: /Users/goldbergyoni/solutions/practica/src/code-templates/libraries/global-context/.dist/index.js). To fix this:
- if you want TypeScript to process JS files, set `allowJs` to `true` in your TypeScript config (usually tsconfig.json)
- if you do not want TypeScript to process your `.js` files, in your Jest config change the `transform` key which value is `ts-jest` so that it does not match `.js` files anymore
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1Ats-jest[ts-jest-transformer] (WARN) Got a `.js` file to compile while `allowJs` option is not set to `true` (file: /Users/goldbergyoni/solutions/practica/src/code-templates/libraries/global-context/.dist/src/context.js). To fix this:
- if you want TypeScript to process JS files, set `allowJs` to `true` in your TypeScript config (usually tsconfig.json)
- if you do not want TypeScript to process your `.js` files, in your Jest config change the `transform` key which value is `ts-jest` so that it does not match `.js` files anymore
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039627,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039633,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"Error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039636,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039636,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"invalid-input\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039637,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039637,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039637,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039637,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039638,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039639,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039639,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039639,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039639,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039642,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039642,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039643,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039643,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039644,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039644,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039646,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Handling error1"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A{"level":30,"time":1712468039646,"pid":20710,"hostname":"Yonis-MacBook-Pro-2.local","msg":"Firing metric error with labels {\"errorName\":\"unknown-error\"}"}
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A[0m[7m[1m[32m PASS [39m[22m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A Error handler
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A Listen to error events
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen uncaughtException emitted, error handled should catch and handle the error properly (9 ms)[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A Handle error
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen passing standard AppError object, then all the important properties are passed to the logger[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving extra custom properties, then standard properties and extra properties are logged[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties (1 ms)[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties (1 ms)[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties (2 ms)[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A [32m✓[39m [2mWhen receiving non standard Error input, then calling the logger with all the mandatory properties[22m
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A
[0m[7m[33m[1m RUNS [22m[39m[27m[0m [2mtest/[22m[1mmain-error-flows.test.ts[22m
[K
[1A
[K
[1A[999D[K------------------|---------|----------|---------|---------|----------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
------------------|---------|----------|---------|---------|----------------------
[32;1mAll files [0m | [32;1m 88.43[0m | [32;1m 94.44[0m | [32;1m 100[0m | [32;1m 88.43[0m | [31;1m [0m
[32;1m app-error.ts [0m | [32;1m 100[0m | [32;1m 100[0m | [32;1m 100[0m | [32;1m 100[0m | [33;1m [0m
[32;1m error-handler.ts[0m | [32;1m 87.5[0m | [32;1m 94.11[0m | [32;1m 100[0m | [32;1m 87.5[0m | [31;1m16,20-23,27-30,46-53[0m
------------------|---------|----------|---------|---------|----------------------
[1mTest Suites: [22m[1m[32m1 passed[39m[22m, 1 total
[1mTests: [22m[1m[32m14 passed[39m[22m, 14 total
[1mSnapshots: [22m0 total
[1mTime:[22m 4.549 s
[2mRan all test suites[22m[2m.[22m