diff --git a/.gitignore b/.gitignore index 8bd19c97593cdb7b55c66cf2997390a996e13077..a38ab5a59dfa692665de434f708bd8154d39842a 100644 --- a/.gitignore +++ b/.gitignore @@ -35,6 +35,7 @@ speed-measure-plugin.json /.sass-cache /connect.lock /coverage +/reports /libpeerconnection.log npm-debug.log yarn-error.log diff --git a/package-lock.json b/package-lock.json index 2139619f0ba29567ec9f4aa6420e330da42a6096..cc445d10390de1e067765eb7aa1d276cea9bded2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2870,6 +2870,17 @@ "to-fast-properties": "^2.0.0" } }, + "@dabh/diagnostics": { + "version": "2.0.2", + "resolved": "https://nexus.ria.ee/repository/npm-public/@dabh/diagnostics/-/diagnostics-2.0.2.tgz", + "integrity": "sha512-+A1YivoVDNNVCdfozHSR8v/jyuuLTMXwjWuxPFlFlUapXoGc+Gj9mDlTDDfrwl7rXCl2tNZ0kE8sIBO6YOn96Q==", + "dev": true, + "requires": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, "@eslint/eslintrc": { "version": "0.2.1", "resolved": "https://nexus.ria.ee/repository/npm-public/@eslint/eslintrc/-/eslintrc-0.2.1.tgz", @@ -3108,12 +3119,87 @@ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, + "@types/karma": { + "version": "5.0.1", + "resolved": "https://nexus.ria.ee/repository/npm-public/@types/karma/-/karma-5.0.1.tgz", + "integrity": "sha512-zSaPZ+ABVx/DQ5imAQZUITgLy19H0aAogknHU67JuDi2PvaXGjYBevFakkDtooBvr7dMsq/YD9vtOxMcSHWnxw==", + "dev": true, + "requires": { + "@types/node": "*", + "log4js": "^4.0.0" + }, + "dependencies": { + "date-format": { + "version": "2.1.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/date-format/-/date-format-2.1.0.tgz", + "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", + "dev": true + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://nexus.ria.ee/repository/npm-public/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "log4js": { + "version": "4.5.1", + "resolved": "https://nexus.ria.ee/repository/npm-public/log4js/-/log4js-4.5.1.tgz", + "integrity": "sha512-EEEgFcE9bLgaYUKuozyFfytQM2wDHtXn4tAN41pkaxpNjAykv11GVdeI4tHtmPWW4Xrgh9R/2d7XYghDVjbKKw==", + "dev": true, + "requires": { + "date-format": "^2.0.0", + "debug": "^4.1.1", + "flatted": "^2.0.0", + "rfdc": "^1.1.4", + "streamroller": "^1.0.6" + } + }, + "streamroller": { + "version": "1.0.6", + "resolved": "https://nexus.ria.ee/repository/npm-public/streamroller/-/streamroller-1.0.6.tgz", + "integrity": "sha512-3QC47Mhv3/aZNFpDDVO44qQb9gwB9QggMEE0sQmkTAwBVYdBRWISdsywlkfm5II1Q5y/pmrHflti/IgmIzdDBg==", + "dev": true, + "requires": { + "async": "^2.6.2", + "date-format": "^2.0.0", + "debug": "^3.2.6", + "fs-extra": "^7.0.1", + "lodash": "^4.17.14" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://nexus.ria.ee/repository/npm-public/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + } + } + }, "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", "dev": true }, + "@types/mkdirp": { + "version": "1.0.1", + "resolved": "https://nexus.ria.ee/repository/npm-public/@types/mkdirp/-/mkdirp-1.0.1.tgz", + "integrity": "sha512-HkGSK7CGAXncr8Qn/0VqNtExEE+PHMWb+qlR1faHMao7ng6P3tAaoWWBMdva0gL5h4zprjIO89GJOLXsMcDm1Q==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/node": { "version": "12.19.6", "resolved": "https://nexus.ria.ee/repository/npm-public/@types/node/-/node-12.19.6.tgz", @@ -4773,6 +4859,15 @@ "shallow-clone": "^3.0.0" } }, + "clone-regexp": { + "version": "2.2.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/clone-regexp/-/clone-regexp-2.2.0.tgz", + "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", + "dev": true, + "requires": { + "is-regexp": "^2.0.0" + } + }, "coa": { "version": "2.0.2", "resolved": "https://nexus.ria.ee/repository/npm-public/coa/-/coa-2.0.2.tgz", @@ -4895,6 +4990,28 @@ "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true }, + "colorspace": { + "version": "1.1.2", + "resolved": "https://nexus.ria.ee/repository/npm-public/colorspace/-/colorspace-1.1.2.tgz", + "integrity": "sha512-vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ==", + "dev": true, + "requires": { + "color": "3.0.x", + "text-hex": "1.0.x" + }, + "dependencies": { + "color": { + "version": "3.0.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/color/-/color-3.0.0.tgz", + "integrity": "sha512-jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w==", + "dev": true, + "requires": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + } + } + }, "combined-stream": { "version": "1.0.8", "resolved": "https://nexus.ria.ee/repository/npm-public/combined-stream/-/combined-stream-1.0.8.tgz", @@ -5998,6 +6115,12 @@ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, + "enabled": { + "version": "2.0.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==", + "dev": true + }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -7112,6 +7235,12 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, + "fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://nexus.ria.ee/repository/npm-public/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "dev": true + }, "fastparse": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", @@ -7136,6 +7265,12 @@ "websocket-driver": ">=0.5.1" } }, + "fecha": { + "version": "4.2.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/fecha/-/fecha-4.2.0.tgz", + "integrity": "sha512-aN3pcx/DSmtyoovUudctc8+6Hl4T+hI9GBBHLjA76jdZl7+b1sgh5g4k+u/GL3dTy1/pnYzKp69FpJ0OicE3Wg==", + "dev": true + }, "figgy-pudding": { "version": "3.5.2", "resolved": "https://nexus.ria.ee/repository/npm-public/figgy-pudding/-/figgy-pudding-3.5.2.tgz", @@ -7331,6 +7466,12 @@ "readable-stream": "^2.3.6" } }, + "fn.name": { + "version": "1.1.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==", + "dev": true + }, "follow-redirects": { "version": "1.13.0", "resolved": "https://nexus.ria.ee/repository/npm-public/follow-redirects/-/follow-redirects-1.13.0.tgz", @@ -8511,6 +8652,12 @@ "has-symbols": "^1.0.1" } }, + "is-regexp": { + "version": "2.1.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/is-regexp/-/is-regexp-2.1.0.tgz", + "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", + "dev": true + }, "is-resolvable": { "version": "1.1.0", "resolved": "https://nexus.ria.ee/repository/npm-public/is-resolvable/-/is-resolvable-1.1.0.tgz", @@ -8761,6 +8908,15 @@ "esprima": "^4.0.0" } }, + "js2xmlparser": { + "version": "4.0.1", + "resolved": "https://nexus.ria.ee/repository/npm-public/js2xmlparser/-/js2xmlparser-4.0.1.tgz", + "integrity": "sha512-KrPTolcw6RocpYjdC7pL7v62e55q7qOMHvLX1UCLc5AAS8qeJ6nukarEJAF2KL2PZxlbGueEbINqZR2bDe/gUw==", + "dev": true, + "requires": { + "xmlcreate": "^2.0.3" + } + }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -9141,6 +9297,30 @@ "integrity": "sha512-PtilRLno5O6wH3lDihRnz0Ba8oSn0YUJqKjjux1peoYGwo0AQqrWRbdWk/RLzcGlb+onTyXAnHl6M+Hu3UxG/Q==", "dev": true }, + "karma-sonarqube-reporter": { + "version": "1.4.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/karma-sonarqube-reporter/-/karma-sonarqube-reporter-1.4.0.tgz", + "integrity": "sha512-Dywucb6ZZMrH+aDFMgSh+b3tKQl1nc+ldVgEyRB9jfP1eraChk/ahO3eFCMPX4K2iqxerQ6l2VazabU3IXz2Sg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.2", + "@types/karma": "*", + "@types/mkdirp": "^1.0.0", + "clone-regexp": "^2.0.0", + "glob": "^7.1.2", + "js2xmlparser": "^4.0.0", + "mkdirp": "^1.0.0", + "winston": "^3.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://nexus.ria.ee/repository/npm-public/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + } + } + }, "karma-source-map-support": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", @@ -9168,6 +9348,12 @@ "integrity": "sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==", "dev": true }, + "kuler": { + "version": "2.0.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==", + "dev": true + }, "less": { "version": "3.12.2", "resolved": "https://nexus.ria.ee/repository/npm-public/less/-/less-3.12.2.tgz", @@ -9423,6 +9609,19 @@ "streamroller": "^2.2.4" } }, + "logform": { + "version": "2.2.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/logform/-/logform-2.2.0.tgz", + "integrity": "sha512-N0qPlqfypFx7UHNn4B3lzS/b0uLqt2hmuoa+PpuXNYgozdJYAyauF5Ky0BWVjrxDlMWiT3qN4zPq3vVAfZy7Yg==", + "dev": true, + "requires": { + "colors": "^1.2.1", + "fast-safe-stringify": "^2.0.4", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "triple-beam": "^1.3.0" + } + }, "loglevel": { "version": "1.7.0", "resolved": "https://nexus.ria.ee/repository/npm-public/loglevel/-/loglevel-1.7.0.tgz", @@ -10406,6 +10605,15 @@ "wrappy": "1" } }, + "one-time": { + "version": "1.0.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "dev": true, + "requires": { + "fn.name": "1.x.x" + } + }, "onetime": { "version": "5.1.2", "resolved": "https://nexus.ria.ee/repository/npm-public/onetime/-/onetime-5.1.2.tgz", @@ -13784,6 +13992,12 @@ "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", "dev": true }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://nexus.ria.ee/repository/npm-public/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -14331,6 +14545,12 @@ } } }, + "text-hex": { + "version": "1.0.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "dev": true + }, "text-table": { "version": "0.2.0", "resolved": "https://nexus.ria.ee/repository/npm-public/text-table/-/text-table-0.2.0.tgz", @@ -14464,6 +14684,12 @@ "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true }, + "triple-beam": { + "version": "1.3.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/triple-beam/-/triple-beam-1.3.0.tgz", + "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==", + "dev": true + }, "ts-node": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", @@ -15930,6 +16156,58 @@ "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "dev": true }, + "winston": { + "version": "3.3.3", + "resolved": "https://nexus.ria.ee/repository/npm-public/winston/-/winston-3.3.3.tgz", + "integrity": "sha512-oEXTISQnC8VlSAKf1KYSSd7J6IWuRPQqDdo8eoRNaYKLvwSb5+79Z3Yi1lrl6KDpU6/VWaxpakDAtb1oQ4n9aw==", + "dev": true, + "requires": { + "@dabh/diagnostics": "^2.0.2", + "async": "^3.1.0", + "is-stream": "^2.0.0", + "logform": "^2.2.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.4.0" + }, + "dependencies": { + "async": { + "version": "3.2.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==", + "dev": true + }, + "is-stream": { + "version": "2.0.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "winston-transport": { + "version": "4.4.0", + "resolved": "https://nexus.ria.ee/repository/npm-public/winston-transport/-/winston-transport-4.4.0.tgz", + "integrity": "sha512-Lc7/p3GtqtqPBYYtS6KCN3c77/2QCev51DvcJKbkFPQNoj1sinkGwLGFDxkXY9J6p9+EPnYs+D90uwbnaiURTw==", + "dev": true, + "requires": { + "readable-stream": "^2.3.7", + "triple-beam": "^1.2.0" + } + }, "word-wrap": { "version": "1.2.3", "resolved": "https://nexus.ria.ee/repository/npm-public/word-wrap/-/word-wrap-1.2.3.tgz", @@ -16067,6 +16345,12 @@ "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "dev": true }, + "xmlcreate": { + "version": "2.0.3", + "resolved": "https://nexus.ria.ee/repository/npm-public/xmlcreate/-/xmlcreate-2.0.3.tgz", + "integrity": "sha512-HgS+X6zAztGa9zIK3Y3LXuJes33Lz9x+YyTxgrkIdabu2vqcGOWwdfCpf1hWLRrd553wd4QCDf6BBO6FfdsRiQ==", + "dev": true + }, "xmlhttprequest-ssl": { "version": "1.5.5", "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", diff --git a/package.json b/package.json index 7eb9f7d5bbf38c9880bcc2121272191dbc937239..2815e5a996553609ae6b793c0da4325f3a0b9e2a 100644 --- a/package.json +++ b/package.json @@ -55,6 +55,7 @@ "karma-coverage": "^2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", + "karma-sonarqube-reporter": "^1.4.0", "protractor": "~7.0.0", "sonar-scanner": "^3.1.0", "ts-node": "~7.0.0", diff --git a/src/karma.conf.js b/src/karma.conf.js index 182f92b7b92aee78429e094eebdd4716d12a112d..c6f47347f4fd59b83133c0b09cd0be461b41be21 100644 --- a/src/karma.conf.js +++ b/src/karma.conf.js @@ -16,7 +16,8 @@ module.exports = function (config) { require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), - require('@angular-devkit/build-angular/plugins/karma') + require('@angular-devkit/build-angular/plugins/karma'), + require('karma-sonarqube-reporter') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser @@ -25,7 +26,7 @@ module.exports = function (config) { type : 'html', dir : '../coverage/xtss-catalogue' }, - reporters: ['progress', 'kjhtml', 'coverage'], + reporters: ['progress', 'kjhtml', 'coverage', 'sonarqube'], port: 9876, colors: true, logLevel: config.LOG_INFO,