mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
* config jest and add setup for unittest * config jest coverage * example of unit testing a Status widget/component * add license for test file * add test/run command in the .travis.yml * add mock store and i18n for vue jest * add mock file missing * add mock router * add lincence to mock file & decodeHtml to setup file * add mock axios instance & fix eslint on tests folder * add test components > views > ActionButton component * fix for test coverage success * refactor test file * add test Views > Autogenview.vue (Navigation Guard, Watchers, Computed) * history mode mockRouter, refactor test code, test Autogenview > fetchData (routeName) * test Views > AutogenView.vue (processing 31%) * add mock router exception & test Views > AutogenView.vue (processing 43%) * test Views > AutogenView (processing 65%), add test onSearch, closeAction, execAction, listUuidOpts * refactor and add comment test files * test Views > AutogenView (processing 91%) * add comment file AutogenView.spec.js * test Views > AutogenView.vue (handleSubmit method) Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
166 lines
4.4 KiB
JSON
166 lines
4.4 KiB
JSON
{
|
|
"name": "primate",
|
|
"description": "Modern role-based Apache CloudStack UI",
|
|
"version": "1.0.0",
|
|
"homepage": "https://cloudstack.apache.org/",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/apache/cloudstack-primate.git"
|
|
},
|
|
"author": {
|
|
"name": "Apache CloudStack Developers",
|
|
"email": "dev@cloudstack.apache.org",
|
|
"url": "https://cloudstack.apache.org"
|
|
},
|
|
"license": "Apache-2.0",
|
|
"licenses": [
|
|
{
|
|
"type": "Apache-2.0",
|
|
"url": "http://www.apache.org/licenses/LICENSE-2.0"
|
|
}
|
|
],
|
|
"bugs": {
|
|
"mail": "dev@cloudstack.apache.org",
|
|
"url": "https://github.com/apache/cloudstack-primate/issues"
|
|
},
|
|
"scripts": {
|
|
"start": "vue-cli-service lint --no-fix && vue-cli-service serve",
|
|
"serve": "vue-cli-service lint --no-fix && vue-cli-service serve",
|
|
"build": "vue-cli-service build",
|
|
"lint": "vue-cli-service lint",
|
|
"i18n:report": "vue-cli-service i18n:report --src './src/**/*.?(js|vue)' --locales './src/locales/**/*.json'",
|
|
"test:unit": "vue-cli-service test:unit"
|
|
},
|
|
"dependencies": {
|
|
"@fortawesome/fontawesome-svg-core": "^1.2.28",
|
|
"@fortawesome/free-brands-svg-icons": "^5.13.0",
|
|
"@fortawesome/free-solid-svg-icons": "^5.13.0",
|
|
"@fortawesome/vue-fontawesome": "^0.1.9",
|
|
"ant-design-vue": "~1.6.2",
|
|
"antd-theme-webpack-plugin": "^1.3.4",
|
|
"axios": "^0.19.2",
|
|
"babel-plugin-require-context-hook": "^1.0.0",
|
|
"core-js": "^3.6.5",
|
|
"enquire.js": "^2.1.6",
|
|
"js-cookie": "^2.2.1",
|
|
"lodash": "^4.17.15",
|
|
"md5": "^2.2.1",
|
|
"moment": "^2.26.0",
|
|
"npm-check-updates": "^6.0.1",
|
|
"nprogress": "^0.2.0",
|
|
"viser-vue": "^2.4.8",
|
|
"vue": "^2.6.11",
|
|
"vue-clipboard2": "^0.3.1",
|
|
"vue-cropper": "0.5.4",
|
|
"vue-i18n": "^8.18.2",
|
|
"vue-ls": "^3.2.1",
|
|
"vue-router": "^3.3.3",
|
|
"vue-svg-component-runtime": "^1.0.1",
|
|
"vuedraggable": "^2.23.2",
|
|
"vuex": "^3.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@vue/cli": "^4.4.1",
|
|
"@vue/cli-plugin-babel": "^4.4.1",
|
|
"@vue/cli-plugin-eslint": "^4.4.1",
|
|
"@vue/cli-plugin-unit-jest": "^4.4.1",
|
|
"@vue/cli-service": "^4.4.1",
|
|
"@vue/eslint-config-standard": "^5.1.2",
|
|
"@vue/test-utils": "^1.0.3",
|
|
"babel-core": "7.0.0-bridge.0",
|
|
"babel-eslint": "^10.0.3",
|
|
"babel-jest": "^25.1.0",
|
|
"babel-plugin-import": "^1.13.0",
|
|
"eslint": "^6.8.0",
|
|
"eslint-plugin-html": "^6.0.2",
|
|
"eslint-plugin-import": "^2.20.2",
|
|
"eslint-plugin-node": "^11.1.0",
|
|
"eslint-plugin-promise": "^4.2.1",
|
|
"eslint-plugin-standard": "^4.0.1",
|
|
"eslint-plugin-vue": "^6.2.2",
|
|
"less": "^3.11.1",
|
|
"less-loader": "^5.0.0",
|
|
"node-sass": "^4.13.1",
|
|
"sass-loader": "^8.0.2",
|
|
"uglifyjs-webpack-plugin": "^2.2.0",
|
|
"vue-cli-plugin-i18n": "^0.6.1",
|
|
"vue-svg-icon-loader": "^2.1.1",
|
|
"vue-template-compiler": "^2.6.11",
|
|
"webpack": "^4.43.0"
|
|
},
|
|
"eslintConfig": {
|
|
"root": true,
|
|
"env": {
|
|
"node": true
|
|
},
|
|
"extends": [
|
|
"plugin:vue/strongly-recommended",
|
|
"@vue/standard"
|
|
],
|
|
"parserOptions": {
|
|
"parser": "babel-eslint"
|
|
},
|
|
"rules": {
|
|
"generator-star-spacing": "off",
|
|
"no-mixed-operators": 0,
|
|
"vue/max-attributes-per-line": [
|
|
2,
|
|
{
|
|
"singleline": 5,
|
|
"multiline": {
|
|
"max": 1,
|
|
"allowFirstLine": false
|
|
}
|
|
}
|
|
],
|
|
"vue/attribute-hyphenation": 0,
|
|
"vue/html-self-closing": 0,
|
|
"vue/component-name-in-template-casing": 0,
|
|
"vue/html-closing-bracket-spacing": 0,
|
|
"vue/singleline-html-element-content-newline": 0,
|
|
"vue/no-unused-components": 0,
|
|
"vue/multiline-html-element-content-newline": 0,
|
|
"vue/no-use-v-if-with-v-for": 0,
|
|
"vue/html-closing-bracket-newline": 0,
|
|
"vue/no-parsing-error": 0,
|
|
"no-console": 0,
|
|
"no-tabs": 0,
|
|
"quotes": [
|
|
2,
|
|
"single",
|
|
{
|
|
"avoidEscape": true,
|
|
"allowTemplateLiterals": true
|
|
}
|
|
],
|
|
"semi": [
|
|
2,
|
|
"never",
|
|
{
|
|
"beforeStatementContinuationChars": "never"
|
|
}
|
|
],
|
|
"no-delete-var": 2,
|
|
"prefer-const": [
|
|
2,
|
|
{
|
|
"ignoreReadBeforeAssign": false
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"postcss": {
|
|
"plugins": {
|
|
"autoprefixer": {}
|
|
}
|
|
},
|
|
"jest": {
|
|
"testEnvironment": "node"
|
|
},
|
|
"browserslist": [
|
|
"> 1%",
|
|
"last 2 versions",
|
|
"not ie <= 10"
|
|
]
|
|
}
|