Jest и Commitizen: фиксация работает, даже если тесты терпят неудачу
В настоящее время я использую Jest, Husky, Commitizen и Vuepress. Однако, когда jest-тесты или сборка завершаются неудачно, ловушка фиксации все еще работает. Как я могу исправить это, чтобы выйти из ловушки commitizen, когда что-то не получается? Вот соответствующие строки в package.json:
{
"scripts": {
"build": "vuepress build docs
"lint": "eslint --fix --ext .js,.vue docs/.vuepress",
"test": "npm run lint && jest --coverage --coverageDirectory='__coverage__'",
"test:full": "npm run test && npm run build",
"commit": "cz",
...
},
"husky": {
"hooks": {
"prepare-commit-msg": "npm run test:full && exec < /dev/tty && git cz --hook || true"
}
},
"dependencies": {
...
},
"devDependencies": {
"babel-jest": "^26.6.3",
"commitizen": "^4.2.3",
"cz-conventional-changelog": "^3.3.0",
"eslint": "^7.18.0",
"husky": "^4.3.8",
"jest": "^26.6.3",
...
},
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
}
}
}
1 ответ
Разобрался - все просто. Мне нужно было добавить хаски:
"husky": {
"hooks": {
"pre-commit": "npm run test:full",
...
}
},