diff --git a/.circleci/config.yml b/.circleci/config.yml index 0d2a2961..3c37299c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -20,7 +20,7 @@ aliases: command: npm run lint - &unit name: "run unit tests" - command: npm run unit + command: JEST_JUNIT_OUTPUT_NAME=unit-jest-results.xml npm run unit -- --reporters=jest-junit - &build name: "run npm build" command: | diff --git a/.gitignore b/.gitignore index c6c5feec..9a2237b0 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,6 @@ dist/* # generated translation files /translations /locale + +# tests +/test/results/* diff --git a/package-lock.json b/package-lock.json index 6541d7a7..7a572758 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10238,6 +10238,41 @@ } } }, + "jest-junit": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/jest-junit/-/jest-junit-13.0.0.tgz", + "integrity": "sha512-JSHR+Dhb32FGJaiKkqsB7AR3OqWKtldLd6ZH2+FJ8D4tsweb8Id8zEVReU4+OlrRO1ZluqJLQEETm+Q6/KilBg==", + "dev": true, + "requires": { + "mkdirp": "^1.0.4", + "strip-ansi": "^6.0.1", + "uuid": "^8.3.2", + "xml": "^1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true + } + } + }, "jest-leak-detector": { "version": "22.4.3", "resolved": "http://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-22.4.3.tgz", @@ -21460,6 +21495,12 @@ "async-limiter": "~1.0.0" } }, + "xml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", + "integrity": "sha1-eLpyAgApxbyHuKgaPPzXS0ovweU=", + "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 f1d4b019..7f99aa12 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "lint": "eslint . --ext .js,.jsx", "start": "webpack-dev-server", "test": "npm run lint && npm run unit && NODE_ENV=production npm run build", - "unit": "jest", + "unit": "jest --reporters=default", "watch": "webpack --progress --colors --watch" }, "author": "Massachusetts Institute of Technology", @@ -69,6 +69,7 @@ "html-webpack-plugin": "3.2.0", "jest": "22.4.4", "jest-canvas-mock": "2.3.1", + "jest-junit": "13.0.0", "json": "9.0.6", "lodash.defaultsdeep": "4.6.1", "mkdirp": "1.0.4", @@ -114,6 +115,9 @@ "\\.(css|less)$": "<rootDir>/test/__mocks__/styleMock.js" } }, + "jest-junit": { + "outputDirectory": "./test/results" + }, "browserslist": [ "last 3 versions", "Safari >= 8",