UnitTestSerializer.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. const makeId = require("../../util/makeId");
  2. const dayjs = require("dayjs");
  3. /**
  4. * @description 代码作业一次部署的基本信息
  5. * @typedef {Object} UnitTestSerializerType
  6. * @property {number} id 代码作业一次单元测试的 id
  7. * @property {number} time 测试时间
  8. * @property {boolean} isPassAll 是否全部通过
  9. * @property {string|number} buildId 对应的构建 id
  10. * @property {OneUnitTestSerializerType[]} detail 所有测试用例列表
  11. */
  12. /**
  13. * @description 代码作业一次部署的基本信息
  14. * @typedef {Object} OneUnitTestSerializerType
  15. * @property {number} id 一个测试用例的 id
  16. * @property {boolean} isPass 是否通过
  17. * @property {string} message 输出
  18. */
  19. /**
  20. * @description 生成UnitTestSerializer
  21. * @returns {UnitTestSerializerType}
  22. */
  23. module.exports = ({ id = makeId(), buildId = makeId() }) => {
  24. /**
  25. * @return {OneUnitTestSerializerType}
  26. */
  27. const getOneUnitTestSerializer = () => ({
  28. id: makeId(),
  29. isPass: id % 2 === 1,
  30. message:
  31. "One Function alTes tSerializerOne FunctionalTestSerializer OneFunc tionalT estSerializer"
  32. });
  33. return {
  34. id,
  35. buildId,
  36. time: dayjs("2018-9-21").unix(),
  37. isPassAll: id % 2 === 1,
  38. detail: [
  39. getOneUnitTestSerializer(),
  40. getOneUnitTestSerializer(),
  41. getOneUnitTestSerializer(),
  42. getOneUnitTestSerializer(),
  43. getOneUnitTestSerializer(),
  44. getOneUnitTestSerializer(),
  45. getOneUnitTestSerializer()
  46. ]
  47. };
  48. };