perillScore.test.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. const assert = require('node:assert/strict')
  2. const fs = require('node:fs')
  3. const path = require('node:path')
  4. const { validateFutureExpectation, normalizeFutureExpectationOptions } = require('../utils/perillScore')
  5. const method = (assessmentMethod, score) => ({
  6. assessmentMethod,
  7. value: `${score}-分`
  8. })
  9. assert.equal(validateFutureExpectation([method('1', 3), method('2', 4)]), '')
  10. assert.equal(
  11. validateFutureExpectation([method('1', 3), method('2', 3)]),
  12. '一年后期待分应高于现状评分,请注意!'
  13. )
  14. assert.equal(
  15. validateFutureExpectation([method('1', 3), method('2', '')]),
  16. '一年后期待分应高于现状评分,请注意!'
  17. )
  18. const previewMethods = normalizeFutureExpectationOptions([
  19. { assessmentMethod: '1', questionOption: [{ number: 1, questionOption: '1-强烈不同意(Strongly disagree)' }] },
  20. { assessmentMethod: '2', questionOption: [{ number: 1, questionOption: '1-非常不重要(Very unimportant)' }] }
  21. ])
  22. assert.equal(previewMethods[0].questionOption[0].questionOption, '1-强烈不同意(Strongly disagree)')
  23. assert.equal(previewMethods[1].questionOption[0].questionOption, '1-强烈不同意(Strongly disagree)')
  24. const questionnaireConfig = fs.readFileSync(
  25. path.join(__dirname, '../../ChuangHeng_new/src/views/modules/agent/questionnaireList.vue'),
  26. 'utf8'
  27. )
  28. assert.doesNotMatch(questionnaireConfig, /<el-option label="重要性" :value="2"><\/el-option>/)
  29. const questionnaireFill = fs.readFileSync(
  30. path.join(__dirname, '../pagesPublish/questionnaireFill.vue'),
  31. 'utf8'
  32. )
  33. assert.match(questionnaireFill, /normalizeFutureExpectationOptions\(item\.userAnswer\)/)
  34. console.log('perill score rules: PASS')