chore: 🤖 add unit test
This commit is contained in:
3
jest.config.js
Normal file
3
jest.config.js
Normal file
@@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
preset: '@vue/cli-plugin-unit-jest'
|
||||
}
|
2447
package-lock.json
generated
2447
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
50
package.json
50
package.json
@@ -2,28 +2,16 @@
|
||||
"name": "vue-tree-list",
|
||||
"version": "1.4.0",
|
||||
"description": "A vue component for tree structure. Support adding treenode/leafnode, editing node's name and dragging.",
|
||||
"main": "dist/vue-tree-list.umd.min.js",
|
||||
"author": "ayou",
|
||||
"scripts": {
|
||||
"commit": "npx git-cz",
|
||||
"serve": "vue-cli-service serve dev",
|
||||
"build": "vue-cli-service build --target lib src/index.js",
|
||||
"test:unit": "vue-cli-service test:unit",
|
||||
"lint": "vue-cli-service lint",
|
||||
"commit": "npx git-cz",
|
||||
"prepublish": "npm run build"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/ParadeTo/vue-tree-list.git"
|
||||
},
|
||||
"keywords": [
|
||||
"vue",
|
||||
"tree"
|
||||
],
|
||||
"author": "ayou",
|
||||
"license": "ISC",
|
||||
"bugs": {
|
||||
"url": "https://github.com/ParadeTo/vue-tree-list/issues"
|
||||
},
|
||||
"homepage": "https://github.com/ParadeTo/vue-tree-list#readme",
|
||||
"main": "dist/vue-tree-list.umd.min.js",
|
||||
"dependencies": {
|
||||
"core-js": "^3.4.3",
|
||||
"vue": "^2.6.10"
|
||||
@@ -31,7 +19,9 @@
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "^4.1.0",
|
||||
"@vue/cli-plugin-eslint": "^4.1.0",
|
||||
"@vue/cli-plugin-unit-jest": "^4.1.1",
|
||||
"@vue/cli-service": "^4.1.0",
|
||||
"@vue/test-utils": "1.0.0-beta.29",
|
||||
"babel-eslint": "^10.0.3",
|
||||
"eslint": "^5.16.0",
|
||||
"eslint-plugin-vue": "^5.0.0",
|
||||
@@ -53,10 +43,34 @@
|
||||
},
|
||||
"parserOptions": {
|
||||
"parser": "babel-eslint"
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"files": [
|
||||
"**/__tests__/*.{j,t}s?(x)",
|
||||
"**/tests/unit/**/*.spec.{j,t}s?(x)"
|
||||
],
|
||||
"env": {
|
||||
"jest": true
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"browserslist": [
|
||||
"> 1%",
|
||||
"last 2 versions"
|
||||
]
|
||||
],
|
||||
"bugs": {
|
||||
"url": "https://github.com/ParadeTo/vue-tree-list/issues"
|
||||
},
|
||||
"homepage": "https://github.com/ParadeTo/vue-tree-list#readme",
|
||||
"keywords": [
|
||||
"vue",
|
||||
"tree"
|
||||
],
|
||||
"license": "ISC",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/ParadeTo/vue-tree-list.git"
|
||||
}
|
||||
}
|
||||
|
@@ -94,9 +94,6 @@
|
||||
let compInOperation = null
|
||||
|
||||
export default {
|
||||
components: {
|
||||
item: () => import('./VueTreeList')
|
||||
},
|
||||
data: function () {
|
||||
return {
|
||||
isHover: false,
|
||||
@@ -155,6 +152,9 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
beforeCreate () {
|
||||
this.$options.components.item = require('./VueTreeList').default
|
||||
},
|
||||
mounted () {
|
||||
const vm = this
|
||||
addHandler(window, 'keyup', function (e) {
|
||||
|
50
tests/unit/example.spec.js
Normal file
50
tests/unit/example.spec.js
Normal file
@@ -0,0 +1,50 @@
|
||||
import { mount } from "@vue/test-utils";
|
||||
import { Tree, VueTreeList } from "@/index";
|
||||
|
||||
describe("VueTreeList", () => {
|
||||
it("renders correctly", () => {
|
||||
const wrapper = mount(VueTreeList, {
|
||||
propsData: {
|
||||
model: new Tree([
|
||||
{
|
||||
name: "Node 1",
|
||||
id: 1,
|
||||
pid: 0,
|
||||
dragDisabled: true,
|
||||
addTreeNodeDisabled: true,
|
||||
addLeafNodeDisabled: true,
|
||||
editNodeDisabled: true,
|
||||
delNodeDisabled: true,
|
||||
children: [
|
||||
{
|
||||
name: "Node 1-2",
|
||||
id: 2,
|
||||
isLeaf: true,
|
||||
pid: 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Node 2",
|
||||
id: 3,
|
||||
pid: 0,
|
||||
disabled: true
|
||||
},
|
||||
{
|
||||
name: "Node 3",
|
||||
id: 4,
|
||||
pid: 0
|
||||
}
|
||||
]),
|
||||
defaultTreeNodeName: "new node",
|
||||
defaultLeafNodeName: "new leaf",
|
||||
defaultExpanded: false
|
||||
}
|
||||
});
|
||||
|
||||
expect(wrapper.text()).toMatch(`Node 1················
|
||||
Node 1-2················
|
||||
Node 2················
|
||||
Node 3`);
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user