waterSupplyMonitoring.test.mjs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import assert from 'node:assert/strict'
  2. import {
  3. buildMonitoringQuery,
  4. buildTrendQuery,
  5. formatMonitoringDateTime
  6. } from '../src/utils/waterSupplyMonitoringQuery.js'
  7. const query = {
  8. pageNum: 2,
  9. pageSize: 20,
  10. equipmentName: '测试流量点',
  11. equipmentCode: '',
  12. equipmentLocation: '测试大道',
  13. timeRange: [new Date(2026, 8, 1, 8, 30, 5), '2026-09-01 12:00:00'],
  14. flowMin: '20',
  15. flowMax: 40
  16. }
  17. assert.deepEqual(buildMonitoringQuery(query, 'flowMin', 'flowMax'), {
  18. pageNum: 2,
  19. pageSize: 20,
  20. equipmentName: '测试流量点',
  21. equipmentLocation: '测试大道',
  22. startTime: '2026-09-01 08:30:05',
  23. endTime: '2026-09-01 12:00:00',
  24. flowMin: 20,
  25. flowMax: 40
  26. })
  27. assert.deepEqual(buildMonitoringQuery({}, 'pressureMin', 'pressureMax'), {
  28. pageNum: 1,
  29. pageSize: 10
  30. })
  31. assert.deepEqual(buildMonitoringQuery({ powerMin: 'not-number' }, 'powerMin', 'powerMax'), {
  32. pageNum: 1,
  33. pageSize: 10
  34. })
  35. assert.deepEqual(buildTrendQuery(['2026-09-01 08:00:00']), {
  36. startTime: '2026-09-01 08:00:00'
  37. })
  38. assert.deepEqual(buildTrendQuery(), {})
  39. assert.equal(formatMonitoringDateTime(new Date(2026, 8, 1, 8, 30, 5)), '2026-09-01 08:30:05')
  40. assert.equal(formatMonitoringDateTime(' '), undefined)
  41. console.log('waterSupplyMonitoring tests passed')