| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- import assert from 'node:assert/strict'
- import {
- buildMonitoringQuery,
- buildTrendQuery,
- formatMonitoringDateTime
- } from '../src/utils/waterSupplyMonitoringQuery.js'
- import {
- normalizeMonitoringRecord,
- readMonitoringExportError
- } from '../src/utils/waterSupplyModel.js'
- const query = {
- pageNum: 2,
- pageSize: 20,
- equipmentName: '测试流量点',
- equipmentCode: '',
- equipmentLocation: '测试大道',
- timeRange: [new Date(2026, 8, 1, 8, 30, 5), '2026-09-01 12:00:00'],
- flowMin: '20',
- flowMax: 40
- }
- assert.deepEqual(buildMonitoringQuery(query, 'flowMin', 'flowMax'), {
- pageNum: 2,
- pageSize: 20,
- equipmentName: '测试流量点',
- equipmentLocation: '测试大道',
- startTime: '2026-09-01 08:30:05',
- endTime: '2026-09-01 12:00:00',
- flowMin: 20,
- flowMax: 40
- })
- assert.deepEqual(buildMonitoringQuery({}, 'pressureMin', 'pressureMax'), {
- pageNum: 1,
- pageSize: 10
- })
- assert.deepEqual(buildMonitoringQuery({ powerMin: 'not-number' }, 'powerMin', 'powerMax'), {
- pageNum: 1,
- pageSize: 10
- })
- assert.deepEqual(buildTrendQuery(['2026-09-01 08:00:00']), {
- startTime: '2026-09-01 08:00:00'
- })
- assert.deepEqual(buildTrendQuery(), {})
- assert.equal(formatMonitoringDateTime(new Date(2026, 8, 1, 8, 30, 5)), '2026-09-01 08:30:05')
- assert.equal(formatMonitoringDateTime(' '), undefined)
- const trendPoint = normalizeMonitoringRecord({
- equipmentId: 'water-flow-device',
- equipmentName: '供水流量监测点',
- time: '2026-09-01 12:30:00',
- value: '25.5'
- }, 'flow', '流量监测')
- assert.equal(trendPoint.updateTime, '2026-09-01 12:30:00')
- assert.equal(trendPoint.value, 25.5)
- const exportError = await readMonitoringExportError(
- new Blob(['{"code":500,"msg":"导出数据过多"}'], {type: 'application/json'})
- )
- const validExport = await readMonitoringExportError(
- new Blob(['xlsx'], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'})
- )
- assert.equal(exportError, '导出数据过多')
- assert.equal(validExport, null)
- console.log('waterSupplyMonitoring tests passed')
|