diff --git a/.gitignore b/.gitignore index a164018c15f07df97ac8a0e7896bf43d10ff0212..ade49e1eccbd37ac1df7a8c3efc9fb082e9c276a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ dist node_modules .nyc_output coverage +test-results.xml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7cd648ddf453c70ec8116dd7fde0cb6ccae6d9aa..ffa112576d7b8c703c6e7b54d3e89943b6374a71 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,6 +9,13 @@ test: - npm install - npm run coverage coverage: '/All files[^|]*\|[^|]*\s+([\d\.]+)/' + artifacts: + expire_in: 1 hour + paths: + - coverage/ + reports: + junit: test-results.xml + cobertura: coverage/cobertura-coverage.xml tags: - docker diff --git a/package-lock.json b/package-lock.json index aa948ba9e714f9d6871d8dbd5cde2132953fb678..ddacca2566975652df59c6690c4fdc5118f56b84 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { - "name": "broken-links-inspector", - "version": "0.1.0", + "name": "@dbogatov/broken-links-inspector", + "version": "0.1.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -509,6 +509,12 @@ "supports-color": "^7.1.0" } }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", + "dev": true + }, "check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", @@ -626,6 +632,12 @@ "which": "^2.0.1" } }, + "crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", + "dev": true + }, "debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", @@ -1367,6 +1379,25 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "md5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.2.1.tgz", + "integrity": "sha1-U6s41f48iJG6RlMp6iP6wFQBJvk=", + "dev": true, + "requires": { + "charenc": "~0.0.1", + "crypt": "~0.0.1", + "is-buffer": "~1.1.1" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + } + } + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -1382,6 +1413,15 @@ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, "mocha": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.0.1.tgz", @@ -1415,6 +1455,36 @@ "yargs-unparser": "1.6.0" } }, + "mocha-junit-reporter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mocha-junit-reporter/-/mocha-junit-reporter-2.0.0.tgz", + "integrity": "sha512-20HoWh2HEfhqmigfXOKUhZQyX23JImskc37ZOhIjBKoBEsb+4cAFRJpAVhFpnvsztLklW/gFVzsrobjLwmX4lA==", + "dev": true, + "requires": { + "debug": "^2.2.0", + "md5": "^2.1.0", + "mkdirp": "~0.5.1", + "strip-ansi": "^4.0.0", + "xml": "^1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -2092,6 +2162,12 @@ "typedarray-to-buffer": "^3.1.5" } }, + "xml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", + "integrity": "sha1-eLpyAgApxbyHuKgaPPzXS0ovweU=", + "dev": true + }, "y18n": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", diff --git a/package.json b/package.json index ddd25a056a97a84502a99bed65f538de8be01a46..ec7c5686d980f0f949467397b351464848a2f87c 100644 --- a/package.json +++ b/package.json @@ -1,14 +1,14 @@ { "name": "@dbogatov/broken-links-inspector", - "version": "0.1.1", + "version": "0.1.2", "description": "Extract and recursively check all URLs reporting broken ones", "main": "index.js", "directories": { "test": "test" }, "scripts": { - "clean": "rm -rf .nyc_output coverage dist", - "test": "mocha -r ts-node/register test/**/*.ts", + "clean": "rm -rf .nyc_output coverage dist test-results.xml", + "test": "mocha --reporter mocha-junit-reporter -r ts-node/register test/**/*.ts", "coverage": "nyc --reporter=html --reporter=cobertura --reporter=text -e .ts -n \"src/**/*.ts\" -x \"test/**/*.ts\" npm run test" }, "publishConfig": { @@ -39,6 +39,7 @@ "@types/mocha": "^7.0.2", "chai": "^4.2.0", "mocha": "^8.0.1", + "mocha-junit-reporter": "^2.0.0", "nyc": "^15.1.0", "ts-node": "^8.10.2", "typescript": "^3.9.5"