diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b0ca237c0c..44f5325ce0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -53,8 +53,16 @@ jobs: done - name: Run tests - run: | - npm run test + run: npm run test + + - name: Report test results + uses: dorny/test-reporter@c9b3d0e2bd2a4e96aaf424dbaa31c46b42318226 + if: always() + with: + name: Test Results + path: "junit.xml" + reporter: jest-junit + fail-on-error: true rust: name: rust - ${{ matrix.os }} @@ -102,6 +110,4 @@ jobs: - name: Test Windows / macOS if: ${{ matrix.os!='ubuntu-latest' }} working-directory: ./apps/desktop/desktop_native - run: | - cargo test -- --test-threads=1 - + run: cargo test -- --test-threads=1 diff --git a/.gitignore b/.gitignore index d7f237aa07..11a4d4c80f 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,7 @@ build # Testing coverage +junit.xml # Misc *.crx diff --git a/jest.config.js b/jest.config.js index 13eefb7b7d..ae9de057fb 100644 --- a/jest.config.js +++ b/jest.config.js @@ -3,6 +3,8 @@ const { pathsToModuleNameMapper } = require("ts-jest"); const { compilerOptions } = require("./tsconfig"); module.exports = { + reporters: ["default", "jest-junit"], + collectCoverage: true, coverageReporters: ["html", "lcov"], coverageDirectory: "coverage", diff --git a/package-lock.json b/package-lock.json index f85d8341be..988b7991ba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -138,6 +138,7 @@ "html-webpack-injector": "^1.1.4", "html-webpack-plugin": "^5.5.0", "husky": "^8.0.1", + "jest-junit": "^15.0.0", "jest-mock-extended": "2.0.6", "jest-preset-angular": "^12.1.0", "lint-staged": "^13.0.3", @@ -28370,6 +28371,21 @@ "node": ">= 10.13.0" } }, + "node_modules/jest-junit": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/jest-junit/-/jest-junit-15.0.0.tgz", + "integrity": "sha512-Z5sVX0Ag3HZdMUnD5DFlG+1gciIFSy7yIVPhOdGUi8YJaI9iLvvBb530gtQL2CHmv0JJeiwRZenr0VrSR7frvg==", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "strip-ansi": "^6.0.1", + "uuid": "^8.3.2", + "xml": "^1.0.1" + }, + "engines": { + "node": ">=10.12.0" + } + }, "node_modules/jest-leak-detector": { "version": "28.1.3", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz", @@ -43046,6 +43062,12 @@ "node": ">=8" } }, + "node_modules/xml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", + "integrity": "sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==", + "dev": true + }, "node_modules/xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", @@ -64858,6 +64880,18 @@ } } }, + "jest-junit": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/jest-junit/-/jest-junit-15.0.0.tgz", + "integrity": "sha512-Z5sVX0Ag3HZdMUnD5DFlG+1gciIFSy7yIVPhOdGUi8YJaI9iLvvBb530gtQL2CHmv0JJeiwRZenr0VrSR7frvg==", + "dev": true, + "requires": { + "mkdirp": "^1.0.4", + "strip-ansi": "^6.0.1", + "uuid": "^8.3.2", + "xml": "^1.0.1" + } + }, "jest-leak-detector": { "version": "28.1.3", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz", @@ -76245,6 +76279,12 @@ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, + "xml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", + "integrity": "sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==", + "dev": true + }, "xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", diff --git a/package.json b/package.json index 9a8d1b8953..e2ecaef0e4 100644 --- a/package.json +++ b/package.json @@ -103,6 +103,7 @@ "html-webpack-injector": "^1.1.4", "html-webpack-plugin": "^5.5.0", "husky": "^8.0.1", + "jest-junit": "^15.0.0", "jest-mock-extended": "2.0.6", "jest-preset-angular": "^12.1.0", "lint-staged": "^13.0.3",