tabletcommand-backend-models 5.39.6 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/constants.js +24 -0
- package/build/constants.js.map +1 -1
- package/build/helpers.js +9 -10
- package/build/helpers.js.map +1 -1
- package/build/index.js +9 -3
- package/build/index.js.map +1 -1
- package/build/models/action-log.js +5 -8
- package/build/models/action-log.js.map +1 -1
- package/build/models/agency.js +9 -11
- package/build/models/agency.js.map +1 -1
- package/build/models/arcgis-group.js +8 -12
- package/build/models/arcgis-group.js.map +1 -1
- package/build/models/assignment.js +8 -10
- package/build/models/assignment.js.map +1 -1
- package/build/models/battalion.js +25 -25
- package/build/models/battalion.js.map +1 -1
- package/build/models/beacon-log.js +5 -8
- package/build/models/beacon-log.js.map +1 -1
- package/build/models/cad-incident-block.js +4 -8
- package/build/models/cad-incident-block.js.map +1 -1
- package/build/models/cad-incident-stream.js +4 -7
- package/build/models/cad-incident-stream.js.map +1 -1
- package/build/models/cad-incident.js +1 -5
- package/build/models/cad-incident.js.map +1 -1
- package/build/models/cad-simulation.js +11 -15
- package/build/models/cad-simulation.js.map +1 -1
- package/build/models/cad-status-map.js +4 -8
- package/build/models/cad-status-map.js.map +1 -1
- package/build/models/cad-status.js +5 -9
- package/build/models/cad-status.js.map +1 -1
- package/build/models/cad-vehicle-status-history.js +3 -8
- package/build/models/cad-vehicle-status-history.js.map +1 -1
- package/build/models/cad-vehicle-status.js +4 -9
- package/build/models/cad-vehicle-status.js.map +1 -1
- package/build/models/cad-vehicle.js +4 -8
- package/build/models/cad-vehicle.js.map +1 -1
- package/build/models/chart-device-stats.js +6 -11
- package/build/models/chart-device-stats.js.map +1 -1
- package/build/models/chart-incident.js +6 -11
- package/build/models/chart-incident.js.map +1 -1
- package/build/models/chart-managed-incident.js +6 -11
- package/build/models/chart-managed-incident.js.map +1 -1
- package/build/models/chart-user.js +5 -10
- package/build/models/chart-user.js.map +1 -1
- package/build/models/checklist-item.js +10 -16
- package/build/models/checklist-item.js.map +1 -1
- package/build/models/checklist.js +11 -17
- package/build/models/checklist.js.map +1 -1
- package/build/models/csv-import.js +5 -9
- package/build/models/csv-import.js.map +1 -1
- package/build/models/department.js +200 -207
- package/build/models/department.js.map +1 -1
- package/build/models/device-mapping.js +5 -9
- package/build/models/device-mapping.js.map +1 -1
- package/build/models/esri.js +12 -21
- package/build/models/esri.js.map +1 -1
- package/build/models/gst-mapping.js +5 -9
- package/build/models/gst-mapping.js.map +1 -1
- package/build/models/incident-event.js +10 -13
- package/build/models/incident-event.js.map +1 -1
- package/build/models/incident-notified.js +7 -11
- package/build/models/incident-notified.js.map +1 -1
- package/build/models/incident-takeover.js +5 -10
- package/build/models/incident-takeover.js.map +1 -1
- package/build/models/job-log.js +5 -9
- package/build/models/job-log.js.map +1 -1
- package/build/models/location.js +4 -8
- package/build/models/location.js.map +1 -1
- package/build/models/mail-log.js +5 -9
- package/build/models/mail-log.js.map +1 -1
- package/build/models/managed-incident.js +15 -23
- package/build/models/managed-incident.js.map +1 -1
- package/build/models/mark43-incident-retry.js +5 -9
- package/build/models/mark43-incident-retry.js.map +1 -1
- package/build/models/message.js +6 -10
- package/build/models/message.js.map +1 -1
- package/build/models/monitor.js +5 -9
- package/build/models/monitor.js.map +1 -1
- package/build/models/personnel-import.js +10 -13
- package/build/models/personnel-import.js.map +1 -1
- package/build/models/personnel-known.js +7 -9
- package/build/models/personnel-known.js.map +1 -1
- package/build/models/personnel-roster.js +5 -7
- package/build/models/personnel-roster.js.map +1 -1
- package/build/models/rate-limit.js +5 -9
- package/build/models/rate-limit.js.map +1 -1
- package/build/models/release-note.js +5 -10
- package/build/models/release-note.js.map +1 -1
- package/build/models/remote-log-stream.js +46 -20
- package/build/models/remote-log-stream.js.map +1 -1
- package/build/models/remote-log.js +46 -20
- package/build/models/remote-log.js.map +1 -1
- package/build/models/schema/agency-cron-config.js +6 -7
- package/build/models/schema/agency-cron-config.js.map +1 -1
- package/build/models/schema/agency-saml.js +1 -2
- package/build/models/schema/agency-saml.js.map +1 -1
- package/build/models/schema/cad-incident.js +72 -30
- package/build/models/schema/cad-incident.js.map +1 -1
- package/build/models/schema/cad-status-option-selected.js +1 -2
- package/build/models/schema/cad-status-option-selected.js.map +1 -1
- package/build/models/schema/color.js +1 -2
- package/build/models/schema/color.js.map +1 -1
- package/build/models/schema/esri-auth.js +2 -3
- package/build/models/schema/esri-auth.js.map +1 -1
- package/build/models/schema/esri-error.js +1 -2
- package/build/models/schema/esri-error.js.map +1 -1
- package/build/models/schema/esri-map.js +4 -5
- package/build/models/schema/esri-map.js.map +1 -1
- package/build/models/schema/firemapper-auth.js +2 -3
- package/build/models/schema/firemapper-auth.js.map +1 -1
- package/build/models/schema/geojson-point.js +1 -2
- package/build/models/schema/geojson-point.js.map +1 -1
- package/build/models/schema/oauth.js +1 -2
- package/build/models/schema/oauth.js.map +1 -1
- package/build/models/schema/pubnub-token.js +2 -2
- package/build/models/schema/pubnub-token.js.map +1 -1
- package/build/models/schema/shared-incident.js +7 -9
- package/build/models/schema/shared-incident.js.map +1 -1
- package/build/models/schema/validation-error-item.js +1 -1
- package/build/models/schema/validation-error-item.js.map +1 -1
- package/build/models/session.js +7 -15
- package/build/models/session.js.map +1 -1
- package/build/models/smtp-unhandled.js +5 -10
- package/build/models/smtp-unhandled.js.map +1 -1
- package/build/models/template.js +12 -16
- package/build/models/template.js.map +1 -1
- package/build/models/user-device.js +10 -14
- package/build/models/user-device.js.map +1 -1
- package/build/models/user-registration.js +3 -6
- package/build/models/user-registration.js.map +1 -1
- package/build/models/user.js +13 -16
- package/build/models/user.js.map +1 -1
- package/build/models/validation-report.js +7 -10
- package/build/models/validation-report.js.map +1 -1
- package/build/test/arcgis-group.js +7 -3
- package/build/test/arcgis-group.js.map +1 -1
- package/build/test/mock.js +7 -1
- package/build/test/mock.js.map +1 -1
- package/cspell.json +9 -13
- package/definitions/constants.d.ts +21 -2
- package/definitions/constants.d.ts.map +1 -1
- package/definitions/helpers.d.ts +1 -6
- package/definitions/helpers.d.ts.map +1 -1
- package/definitions/index.d.ts +179 -52
- package/definitions/index.d.ts.map +1 -1
- package/definitions/models/action-log.d.ts +37 -16
- package/definitions/models/action-log.d.ts.map +1 -1
- package/definitions/models/agency.d.ts +61 -622
- package/definitions/models/agency.d.ts.map +1 -1
- package/definitions/models/arcgis-group.d.ts +62 -118
- package/definitions/models/arcgis-group.d.ts.map +1 -1
- package/definitions/models/assignment.d.ts +34 -12
- package/definitions/models/assignment.d.ts.map +1 -1
- package/definitions/models/battalion.d.ts +60 -192
- package/definitions/models/battalion.d.ts.map +1 -1
- package/definitions/models/beacon-log.d.ts +34 -13
- package/definitions/models/beacon-log.d.ts.map +1 -1
- package/definitions/models/cad-incident-block.d.ts +35 -21
- package/definitions/models/cad-incident-block.d.ts.map +1 -1
- package/definitions/models/cad-incident-stream.d.ts +35 -13
- package/definitions/models/cad-incident-stream.d.ts.map +1 -1
- package/definitions/models/cad-incident.d.ts +31 -440
- package/definitions/models/cad-incident.d.ts.map +1 -1
- package/definitions/models/cad-simulation.d.ts +69 -113
- package/definitions/models/cad-simulation.d.ts.map +1 -1
- package/definitions/models/cad-status-map.d.ts +40 -27
- package/definitions/models/cad-status-map.d.ts.map +1 -1
- package/definitions/models/cad-status.d.ts +49 -85
- package/definitions/models/cad-status.d.ts.map +1 -1
- package/definitions/models/cad-vehicle-status-history.d.ts +34 -29
- package/definitions/models/cad-vehicle-status-history.d.ts.map +1 -1
- package/definitions/models/cad-vehicle-status.d.ts +42 -41
- package/definitions/models/cad-vehicle-status.d.ts.map +1 -1
- package/definitions/models/cad-vehicle.d.ts +39 -22
- package/definitions/models/cad-vehicle.d.ts.map +1 -1
- package/definitions/models/chart-device-stats.d.ts +44 -38
- package/definitions/models/chart-device-stats.d.ts.map +1 -1
- package/definitions/models/chart-incident.d.ts +40 -22
- package/definitions/models/chart-incident.d.ts.map +1 -1
- package/definitions/models/chart-managed-incident.d.ts +40 -22
- package/definitions/models/chart-managed-incident.d.ts.map +1 -1
- package/definitions/models/chart-user.d.ts +34 -12
- package/definitions/models/chart-user.d.ts.map +1 -1
- package/definitions/models/checklist-item.d.ts +38 -64
- package/definitions/models/checklist-item.d.ts.map +1 -1
- package/definitions/models/checklist.d.ts +42 -172
- package/definitions/models/checklist.d.ts.map +1 -1
- package/definitions/models/csv-import.d.ts +37 -16
- package/definitions/models/csv-import.d.ts.map +1 -1
- package/definitions/models/department.d.ts +199 -755
- package/definitions/models/department.d.ts.map +1 -1
- package/definitions/models/device-mapping.d.ts +33 -12
- package/definitions/models/device-mapping.d.ts.map +1 -1
- package/definitions/models/esri.d.ts +58 -684
- package/definitions/models/esri.d.ts.map +1 -1
- package/definitions/models/gst-mapping.d.ts +33 -12
- package/definitions/models/gst-mapping.d.ts.map +1 -1
- package/definitions/models/incident-event.d.ts +48 -129
- package/definitions/models/incident-event.d.ts.map +1 -1
- package/definitions/models/incident-notified.d.ts +45 -36
- package/definitions/models/incident-notified.d.ts.map +1 -1
- package/definitions/models/incident-takeover.d.ts +32 -11
- package/definitions/models/incident-takeover.d.ts.map +1 -1
- package/definitions/models/job-log.d.ts +36 -14
- package/definitions/models/job-log.d.ts.map +1 -1
- package/definitions/models/location.d.ts +45 -42
- package/definitions/models/location.d.ts.map +1 -1
- package/definitions/models/mail-log.d.ts +37 -16
- package/definitions/models/mail-log.d.ts.map +1 -1
- package/definitions/models/managed-incident.d.ts +138 -649
- package/definitions/models/managed-incident.d.ts.map +1 -1
- package/definitions/models/mark43-incident-retry.d.ts +44 -37
- package/definitions/models/mark43-incident-retry.d.ts.map +1 -1
- package/definitions/models/message.d.ts +42 -33
- package/definitions/models/message.d.ts.map +1 -1
- package/definitions/models/monitor.d.ts +33 -12
- package/definitions/models/monitor.d.ts.map +1 -1
- package/definitions/models/personnel-import.d.ts +48 -128
- package/definitions/models/personnel-import.d.ts.map +1 -1
- package/definitions/models/personnel-known.d.ts +45 -91
- package/definitions/models/personnel-known.d.ts.map +1 -1
- package/definitions/models/personnel-roster.d.ts +40 -70
- package/definitions/models/personnel-roster.d.ts.map +1 -1
- package/definitions/models/rate-limit.d.ts +33 -12
- package/definitions/models/rate-limit.d.ts.map +1 -1
- package/definitions/models/release-note.d.ts +34 -13
- package/definitions/models/release-note.d.ts.map +1 -1
- package/definitions/models/remote-log-stream.d.ts +48 -54
- package/definitions/models/remote-log-stream.d.ts.map +1 -1
- package/definitions/models/remote-log.d.ts +52 -55
- package/definitions/models/remote-log.d.ts.map +1 -1
- package/definitions/models/schema/agency-cron-config.d.ts +80 -213
- package/definitions/models/schema/agency-cron-config.d.ts.map +1 -1
- package/definitions/models/schema/agency-saml.d.ts +37 -30
- package/definitions/models/schema/agency-saml.d.ts.map +1 -1
- package/definitions/models/schema/cad-incident.d.ts +157 -652
- package/definitions/models/schema/cad-incident.d.ts.map +1 -1
- package/definitions/models/schema/cad-status-option-selected.d.ts +35 -21
- package/definitions/models/schema/cad-status-option-selected.d.ts.map +1 -1
- package/definitions/models/schema/color.d.ts +33 -13
- package/definitions/models/schema/color.d.ts.map +1 -1
- package/definitions/models/schema/esri-auth.d.ts +38 -25
- package/definitions/models/schema/esri-auth.d.ts.map +1 -1
- package/definitions/models/schema/esri-error.d.ts +35 -21
- package/definitions/models/schema/esri-error.d.ts.map +1 -1
- package/definitions/models/schema/esri-map.d.ts +66 -190
- package/definitions/models/schema/esri-map.d.ts.map +1 -1
- package/definitions/models/schema/firemapper-auth.d.ts +39 -41
- package/definitions/models/schema/firemapper-auth.d.ts.map +1 -1
- package/definitions/models/schema/geojson-point.d.ts +33 -16
- package/definitions/models/schema/geojson-point.d.ts.map +1 -1
- package/definitions/models/schema/oauth.d.ts +34 -17
- package/definitions/models/schema/oauth.d.ts.map +1 -1
- package/definitions/models/schema/pubnub-token.d.ts +35 -18
- package/definitions/models/schema/pubnub-token.d.ts.map +1 -1
- package/definitions/models/schema/shared-incident.d.ts +100 -160
- package/definitions/models/schema/shared-incident.d.ts.map +1 -1
- package/definitions/models/schema/validation-error-item.d.ts +37 -26
- package/definitions/models/schema/validation-error-item.d.ts.map +1 -1
- package/definitions/models/session.d.ts +34 -24
- package/definitions/models/session.d.ts.map +1 -1
- package/definitions/models/smtp-unhandled.d.ts +33 -11
- package/definitions/models/smtp-unhandled.d.ts.map +1 -1
- package/definitions/models/template.d.ts +53 -130
- package/definitions/models/template.d.ts.map +1 -1
- package/definitions/models/user-device.d.ts +72 -133
- package/definitions/models/user-device.d.ts.map +1 -1
- package/definitions/models/user-registration.d.ts +32 -11
- package/definitions/models/user-registration.d.ts.map +1 -1
- package/definitions/models/user.d.ts +59 -430
- package/definitions/models/user.d.ts.map +1 -1
- package/definitions/models/validation-report.d.ts +47 -382
- package/definitions/models/validation-report.d.ts.map +1 -1
- package/definitions/test/mock.d.ts +1 -3
- package/definitions/test/mock.d.ts.map +1 -1
- package/package.json +2 -4
- package/src/constants.ts +23 -6
- package/src/helpers.ts +7 -8
- package/src/index.ts +10 -7
- package/src/models/action-log.ts +23 -15
- package/src/models/agency.ts +51 -21
- package/src/models/arcgis-group.ts +60 -18
- package/src/models/assignment.ts +30 -20
- package/src/models/battalion.ts +65 -37
- package/src/models/beacon-log.ts +17 -15
- package/src/models/cad-incident-block.ts +20 -16
- package/src/models/cad-incident-stream.ts +18 -15
- package/src/models/cad-incident.ts +6 -11
- package/src/models/cad-simulation.ts +93 -30
- package/src/models/cad-status-map.ts +21 -13
- package/src/models/cad-status.ts +46 -15
- package/src/models/cad-vehicle-status-history.ts +24 -17
- package/src/models/cad-vehicle-status.ts +38 -18
- package/src/models/cad-vehicle.ts +24 -13
- package/src/models/chart-device-stats.ts +25 -16
- package/src/models/chart-incident.ts +22 -16
- package/src/models/chart-managed-incident.ts +22 -16
- package/src/models/chart-user.ts +17 -15
- package/src/models/checklist-item.ts +29 -26
- package/src/models/checklist.ts +31 -25
- package/src/models/csv-import.ts +26 -14
- package/src/models/department.ts +552 -221
- package/src/models/device-mapping.ts +27 -14
- package/src/models/esri.ts +40 -30
- package/src/models/gst-mapping.ts +28 -16
- package/src/models/incident-event.ts +38 -18
- package/src/models/incident-notified.ts +31 -17
- package/src/models/incident-takeover.ts +23 -14
- package/src/models/job-log.ts +20 -15
- package/src/models/location.ts +45 -18
- package/src/models/mail-log.ts +26 -14
- package/src/models/managed-incident.ts +179 -32
- package/src/models/mark43-incident-retry.ts +31 -15
- package/src/models/message.ts +32 -16
- package/src/models/monitor.ts +19 -14
- package/src/models/personnel-import.ts +39 -18
- package/src/models/personnel-known.ts +30 -16
- package/src/models/personnel-roster.ts +23 -14
- package/src/models/rate-limit.ts +16 -14
- package/src/models/release-note.ts +18 -17
- package/src/models/remote-log-stream.ts +80 -27
- package/src/models/remote-log.ts +82 -27
- package/src/models/schema/agency-cron-config.ts +62 -7
- package/src/models/schema/agency-saml.ts +10 -2
- package/src/models/schema/cad-incident.ts +212 -40
- package/src/models/schema/cad-status-option-selected.ts +8 -2
- package/src/models/schema/color.ts +6 -2
- package/src/models/schema/esri-auth.ts +12 -3
- package/src/models/schema/esri-error.ts +8 -2
- package/src/models/schema/esri-map.ts +43 -5
- package/src/models/schema/firemapper-auth.ts +13 -3
- package/src/models/schema/geojson-point.ts +6 -2
- package/src/models/schema/oauth.ts +8 -3
- package/src/models/schema/pubnub-token.ts +9 -4
- package/src/models/schema/shared-incident.ts +54 -8
- package/src/models/schema/validation-error-item.ts +9 -2
- package/src/models/session.ts +33 -25
- package/src/models/smtp-unhandled.ts +15 -15
- package/src/models/template.ts +43 -25
- package/src/models/user-device.ts +66 -19
- package/src/models/user-registration.ts +26 -13
- package/src/models/user.ts +79 -27
- package/src/models/validation-report.ts +22 -16
- package/src/test/arcgis-group.ts +7 -7
- package/src/test/mock.ts +6 -4
- package/test/0index.js +9 -8
- package/test/action-log.js +18 -28
- package/test/agency.js +15 -27
- package/test/arcgis-group.js +6 -14
- package/test/assignment.js +14 -22
- package/test/battalion.js +14 -24
- package/test/cad-incident-block.js +13 -19
- package/test/cad-incident.js +70 -77
- package/test/cad-simulation.js +12 -20
- package/test/cad-status-map.js +13 -21
- package/test/cad-status.js +33 -42
- package/test/cad-vehicle-status-history.js +17 -26
- package/test/cad-vehicle-status.js +23 -32
- package/test/cad-vehicle.js +18 -27
- package/test/checklist-item.js +20 -29
- package/test/checklist.js +18 -25
- package/test/csv-import.js +22 -29
- package/test/department.js +62 -66
- package/test/device-mapping.js +18 -27
- package/test/esri.js +28 -34
- package/test/gst-mapping.js +17 -26
- package/test/incident-event.js +21 -28
- package/test/incident-notified.js +16 -25
- package/test/incident-takeover.js +18 -27
- package/test/job-log.js +16 -25
- package/test/location.js +30 -37
- package/test/mail-log.js +24 -33
- package/test/managed-incident.js +57 -66
- package/test/mark43-incident-retry.js +13 -22
- package/test/message.js +18 -27
- package/test/mock.js +20 -20
- package/test/monitor.js +14 -21
- package/test/personnel-import.js +29 -36
- package/test/rate-limit.js +12 -21
- package/test/release-note.js +5 -11
- package/test/session.js +23 -32
- package/test/template.js +19 -28
- package/test/user-device.js +30 -37
- package/test/user-registration.js +24 -33
- package/test/user.js +26 -35
- package/test/validation-report.js +10 -17
- package/build/models/schema/remote-file.js +0 -50
- package/build/models/schema/remote-file.js.map +0 -1
- package/definitions/models/schema/remote-file.d.ts +0 -44
- package/definitions/models/schema/remote-file.d.ts.map +0 -1
- package/src/models/schema/remote-file.ts +0 -53
package/src/models/user.ts
CHANGED
@@ -1,27 +1,83 @@
|
|
1
1
|
import * as uuid from "uuid";
|
2
2
|
import {
|
3
|
-
createSchema,
|
4
|
-
createModel,
|
5
|
-
DocumentTypeFromSchema,
|
6
|
-
FieldsOfDocument,
|
7
3
|
MongooseModule,
|
8
4
|
MongooseDocument,
|
9
|
-
ItemTypeFromTypeSchemaFunction,
|
10
|
-
ModelTypeFromTypeSchemaFunction,
|
11
|
-
ReplaceModelReturnType,
|
12
5
|
currentDate,
|
13
6
|
} from "../helpers";
|
14
|
-
import EsriAuthSchema from "./schema/esri-auth";
|
15
|
-
import EsriErrorSchema from "./schema/esri-error";
|
16
|
-
import PubNubTokenSchema from "./schema/pubnub-token";
|
7
|
+
import EsriAuthSchema, { EsriAuthSchemaType } from "./schema/esri-auth";
|
8
|
+
import EsriErrorSchema, { EsriErrorSchemaType } from "./schema/esri-error";
|
9
|
+
import PubNubTokenSchema, { PubNubTokenSchemaType } from "./schema/pubnub-token";
|
10
|
+
import { Model, Types } from "mongoose";
|
11
|
+
|
12
|
+
interface VehicleSchemaType {
|
13
|
+
radioName: string,
|
14
|
+
vehicleId: string,
|
15
|
+
}
|
16
|
+
|
17
|
+
export interface User extends Record<string, unknown> {
|
18
|
+
_id: Types.ObjectId,
|
19
|
+
id?: string, // Coming from virtuals
|
20
|
+
nick: string,
|
21
|
+
email: string,
|
22
|
+
name: string,
|
23
|
+
uuid: string,
|
24
|
+
departmentId: string,
|
25
|
+
modified_date: Date,
|
26
|
+
when: Date,
|
27
|
+
agencyId: Types.ObjectId,
|
28
|
+
managedAgencies: Types.ObjectId[],
|
29
|
+
active: boolean,
|
30
|
+
admin: boolean,
|
31
|
+
superuser: boolean,
|
32
|
+
isPro: boolean,
|
33
|
+
isIncidentManager: boolean,
|
34
|
+
mobileAccess: boolean,
|
35
|
+
webAccess: boolean,
|
36
|
+
cadSimulatorAccess: boolean,
|
37
|
+
canAddRemoveVehicle: boolean,
|
38
|
+
beaconEnabled: boolean,
|
39
|
+
userContributionEnabled: boolean,
|
40
|
+
syncLoggingExpireDate: Date,
|
41
|
+
beacons: string[],
|
42
|
+
salt: string,
|
43
|
+
pass: string,
|
44
|
+
auth: string[],
|
45
|
+
mapHidden: boolean,
|
46
|
+
mapId: string,
|
47
|
+
vehicle: VehicleSchemaType,
|
48
|
+
sessionCountiPhone: number,
|
49
|
+
sessionCountiPad: number,
|
50
|
+
rtsAuthKey: string,
|
51
|
+
pubNubV2: PubNubTokenSchemaType
|
52
|
+
pubNubV3: PubNubTokenSchemaType
|
53
|
+
socketIO: PubNubTokenSchemaType,
|
54
|
+
token: string,
|
55
|
+
tokenExpireAt: Date,
|
56
|
+
shareLocationPhone: boolean,
|
57
|
+
shareLocationTablet: boolean,
|
58
|
+
offlineMapsEnabled: boolean,
|
59
|
+
fireMapperProEnabled: boolean,
|
60
|
+
arcGISAuth: EsriAuthSchemaType,
|
61
|
+
arcGISAuthError: EsriErrorSchemaType,
|
62
|
+
offDutyEnabled: boolean,
|
63
|
+
webMapSettings: {
|
64
|
+
defaultZoomLevel: number,
|
65
|
+
defaultCenter: number[],
|
66
|
+
defaultMap: string,
|
67
|
+
},
|
68
|
+
locationToCAD: boolean,
|
69
|
+
logOffEnabled: boolean,
|
70
|
+
restrictedCommentsEnabled: boolean,
|
71
|
+
superUserReadOnly: boolean
|
72
|
+
}
|
17
73
|
|
18
74
|
export function UserSchema(mongoose: MongooseModule) {
|
19
|
-
const { Schema
|
75
|
+
const { Schema } = mongoose;
|
20
76
|
const EsriAuth = EsriAuthSchema(mongoose);
|
21
77
|
const EsriError = EsriErrorSchema(mongoose);
|
22
78
|
const PubNubToken = PubNubTokenSchema(mongoose);
|
23
79
|
|
24
|
-
const VehicleSchema =
|
80
|
+
const VehicleSchema = new Schema<VehicleSchemaType>({
|
25
81
|
radioName: {
|
26
82
|
type: String,
|
27
83
|
default: "",
|
@@ -35,7 +91,7 @@ export function UserSchema(mongoose: MongooseModule) {
|
|
35
91
|
id: false,
|
36
92
|
});
|
37
93
|
|
38
|
-
const modelSchema =
|
94
|
+
const modelSchema = new Schema<User>({
|
39
95
|
nick: {
|
40
96
|
type: String,
|
41
97
|
default: "",
|
@@ -68,7 +124,7 @@ export function UserSchema(mongoose: MongooseModule) {
|
|
68
124
|
type: Date,
|
69
125
|
},
|
70
126
|
agencyId: {
|
71
|
-
type: Types.ObjectId,
|
127
|
+
type: Schema.Types.ObjectId,
|
72
128
|
ref: "Agency",
|
73
129
|
default: null,
|
74
130
|
},
|
@@ -267,30 +323,26 @@ export function UserSchema(mongoose: MongooseModule) {
|
|
267
323
|
default: false,
|
268
324
|
}
|
269
325
|
}, {
|
270
|
-
|
326
|
+
autoIndex: false,
|
327
|
+
});
|
328
|
+
|
329
|
+
// NO _id on User schema?
|
330
|
+
modelSchema.virtual("id").get(function (this: MongooseDocument) {
|
331
|
+
return this._id.toHexString();
|
271
332
|
});
|
272
|
-
modelSchema.set("autoIndex", false);
|
273
333
|
|
274
334
|
modelSchema.set("toJSON", {
|
275
335
|
virtuals: true,
|
276
336
|
versionKey: false,
|
277
|
-
transform(doc: DocumentTypeFromSchema<typeof modelSchema>, ret: FieldsOfDocument<DocumentTypeFromSchema<typeof modelSchema>>) {
|
278
|
-
ret.id = ret._id;
|
279
|
-
},
|
280
337
|
});
|
281
338
|
|
282
|
-
modelSchema.virtual("id").get(function(this: MongooseDocument) {
|
283
|
-
return this._id.toHexString();
|
284
|
-
});
|
285
339
|
|
286
340
|
return modelSchema;
|
287
341
|
}
|
288
342
|
|
289
|
-
export async function UserModule(mongoose: MongooseModule) {
|
343
|
+
export default async function UserModule(mongoose: MongooseModule) {
|
290
344
|
const modelSchema = UserSchema(mongoose);
|
291
|
-
return
|
345
|
+
return mongoose.model<User>("User", modelSchema, "sys_user", { overwriteModels: true });
|
292
346
|
}
|
293
347
|
|
294
|
-
export interface
|
295
|
-
export interface UserModel extends ModelTypeFromTypeSchemaFunction<User> { }
|
296
|
-
export default UserModule as ReplaceModelReturnType<typeof UserModule, UserModel>;
|
348
|
+
export interface UserModel extends Model<User> { }
|
@@ -1,25 +1,34 @@
|
|
1
|
+
import { Model, Types } from "mongoose";
|
1
2
|
import {
|
2
|
-
createModel,
|
3
|
-
createSchema,
|
4
3
|
currentDate,
|
5
|
-
ItemTypeFromTypeSchemaFunction,
|
6
|
-
ModelTypeFromTypeSchemaFunction,
|
7
4
|
MongooseModule,
|
8
|
-
ReplaceModelReturnType,
|
9
5
|
} from "../helpers";
|
10
|
-
import ValidationErrorItemModule from "./schema/validation-error-item";
|
6
|
+
import ValidationErrorItemModule, { ValidationErrorItemSchemaType } from "./schema/validation-error-item";
|
7
|
+
|
8
|
+
export interface ValidationReport {
|
9
|
+
_id: Types.ObjectId,
|
10
|
+
departmentId: Types.ObjectId,
|
11
|
+
location: ValidationErrorItemSchemaType[],
|
12
|
+
statusMap: ValidationErrorItemSchemaType[],
|
13
|
+
status: ValidationErrorItemSchemaType[],
|
14
|
+
vehicleStatus: ValidationErrorItemSchemaType[],
|
15
|
+
vehicle: ValidationErrorItemSchemaType[],
|
16
|
+
incident: ValidationErrorItemSchemaType[],
|
17
|
+
personnel: ValidationErrorItemSchemaType[],
|
18
|
+
modified: Date,
|
19
|
+
}
|
11
20
|
|
12
21
|
export function ValidationReportSchema(mongoose: MongooseModule) {
|
13
|
-
const { Schema
|
22
|
+
const { Schema } = mongoose;
|
14
23
|
const ValidationErrorItem = ValidationErrorItemModule(mongoose);
|
15
24
|
|
16
|
-
const modelSchema =
|
25
|
+
const modelSchema = new Schema<ValidationReport>({
|
17
26
|
_id: {
|
18
|
-
type: Types.ObjectId,
|
27
|
+
type: Schema.Types.ObjectId,
|
19
28
|
auto: true,
|
20
29
|
},
|
21
30
|
departmentId: {
|
22
|
-
type: Types.ObjectId,
|
31
|
+
type: Schema.Types.ObjectId,
|
23
32
|
ref: "Department",
|
24
33
|
required: true,
|
25
34
|
unique: true,
|
@@ -57,18 +66,15 @@ export function ValidationReportSchema(mongoose: MongooseModule) {
|
|
57
66
|
default: currentDate,
|
58
67
|
},
|
59
68
|
}, {
|
60
|
-
collection: "massive_validation_report",
|
61
69
|
});
|
62
70
|
modelSchema.set("autoIndex", false);
|
63
71
|
|
64
72
|
return modelSchema;
|
65
73
|
}
|
66
74
|
|
67
|
-
export async function ValidationReportModule(mongoose: MongooseModule) {
|
75
|
+
export default async function ValidationReportModule(mongoose: MongooseModule) {
|
68
76
|
const modelSchema = ValidationReportSchema(mongoose);
|
69
|
-
return
|
77
|
+
return mongoose.model<ValidationReport>("ValidationReport", modelSchema, "massive_validation_report", { overwriteModels: true });
|
70
78
|
}
|
71
79
|
|
72
|
-
export interface
|
73
|
-
export interface ValidationReportModel extends ModelTypeFromTypeSchemaFunction<ValidationReport> { }
|
74
|
-
export default ValidationReportModule as ReplaceModelReturnType<typeof ValidationReportModule, ValidationReportModel>;
|
80
|
+
export interface ValidationReportModel extends Model<ValidationReport> { }
|
package/src/test/arcgis-group.ts
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
|
2
2
|
import { assert } from "chai";
|
3
3
|
import "mocha";
|
4
|
-
import * as _ from "lodash";
|
4
|
+
// import * as _ from "lodash";
|
5
5
|
|
6
6
|
import { url as mongoURL } from "./config";
|
7
7
|
|
8
8
|
import { connect } from "..";
|
9
|
-
import MockModule from "./mock";
|
9
|
+
// import MockModule from "./mock";
|
10
10
|
|
11
11
|
describe("ArcGISGroup", function () {
|
12
|
-
let models,
|
13
|
-
|
14
|
-
|
12
|
+
// let models,
|
13
|
+
// mongoose: typeof import("mongoose"),
|
14
|
+
// mock;
|
15
15
|
|
16
16
|
beforeEach(async function () {
|
17
17
|
const result = await connect(mongoURL);
|
@@ -56,8 +56,8 @@ describe("ArcGISGroup", function() {
|
|
56
56
|
await mock.cleanup();
|
57
57
|
});
|
58
58
|
|
59
|
-
afterEach(function() {
|
60
|
-
mongoose.disconnect();
|
59
|
+
afterEach(async function() {
|
60
|
+
await mongoose.disconnect();
|
61
61
|
});
|
62
62
|
|
63
63
|
it("is saved", async function() {
|
package/src/test/mock.ts
CHANGED
@@ -1,13 +1,15 @@
|
|
1
1
|
|
2
2
|
// import * as uuid from "uuid";
|
3
|
-
import { Types } from "mongoose";
|
3
|
+
// import { Types } from "mongoose";
|
4
4
|
|
5
5
|
import { checkIfTestDatabase } from "./config";
|
6
6
|
checkIfTestDatabase();
|
7
7
|
|
8
|
-
export default function MockModule(
|
9
|
-
|
10
|
-
|
8
|
+
export default function MockModule(
|
9
|
+
// dependecies: {
|
10
|
+
// models: unknown,
|
11
|
+
// }
|
12
|
+
) {
|
11
13
|
|
12
14
|
async function cleanup() {
|
13
15
|
return "";
|
package/test/0index.js
CHANGED
@@ -2,21 +2,22 @@
|
|
2
2
|
|
3
3
|
const assert = require("chai").assert;
|
4
4
|
|
5
|
+
const mongoose = require("mongoose");
|
5
6
|
const m = require("../");
|
6
7
|
const config = require("./config");
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
9
|
+
after(async function () {
|
10
|
+
await mongoose.disconnect();
|
11
|
+
})
|
12
|
+
|
13
|
+
describe("Models", function () {
|
14
|
+
let models;
|
15
|
+
before(async function () {
|
11
16
|
const c = await m.connect(config.url);
|
12
17
|
models = c.models;
|
13
|
-
mongoose = c.mongoose;
|
14
|
-
});
|
15
|
-
afterEach(function() {
|
16
|
-
mongoose.disconnect();
|
17
18
|
});
|
18
19
|
|
19
|
-
it("are wired", function() {
|
20
|
+
it("are wired", function () {
|
20
21
|
// These should match index.js
|
21
22
|
assert.isFunction(models.ActionLog, "Missing ActionLog");
|
22
23
|
assert.isFunction(models.Agency, "Missing Agency");
|
package/test/action-log.js
CHANGED
@@ -2,44 +2,34 @@
|
|
2
2
|
|
3
3
|
const assert = require("chai").assert;
|
4
4
|
|
5
|
-
const m = require("..");
|
6
|
-
const config = require("./config");
|
7
5
|
|
8
|
-
|
9
|
-
let models, mongoose;
|
10
|
-
let testItem;
|
11
|
-
beforeEach(async function() {
|
12
|
-
const c = await m.connect(config.url);
|
13
|
-
models = c.models;
|
14
|
-
mongoose = c.mongoose;
|
6
|
+
const mongoose = require('mongoose');
|
15
7
|
|
8
|
+
describe("ActionLog", function () {
|
9
|
+
let models = mongoose.models;
|
10
|
+
let testItem;
|
11
|
+
before(async function () {
|
16
12
|
const mock = require("./mock")({
|
17
13
|
mongoose
|
18
14
|
});
|
19
15
|
testItem = mock.actionLog;
|
20
16
|
});
|
21
|
-
afterEach(function() {
|
22
|
-
mongoose.disconnect();
|
23
|
-
});
|
24
|
-
|
25
|
-
it("is saved", function(done) {
|
26
|
-
var item = new models.ActionLog(testItem);
|
27
|
-
item.save(function(err, sut) {
|
28
|
-
assert.isNull(err, "Should not err");
|
29
17
|
|
18
|
+
it("is saved", async function () {
|
19
|
+
const item = new models.ActionLog(testItem);
|
20
|
+
await item.save().then((ress) => {
|
30
21
|
assert.isNotNull(testItem._id);
|
31
|
-
assert.equal(testItem.departmentId,
|
32
|
-
assert.equal(testItem.action,
|
33
|
-
assert.equal(testItem.email,
|
34
|
-
assert.equal(testItem.userId,
|
35
|
-
assert.equal(testItem.object,
|
36
|
-
assert.equal(testItem.before,
|
37
|
-
assert.equal(testItem.after,
|
38
|
-
assert.equal(testItem.delta,
|
22
|
+
assert.equal(testItem.departmentId, ress.departmentId);
|
23
|
+
assert.equal(testItem.action, ress.action);
|
24
|
+
assert.equal(testItem.email, ress.email);
|
25
|
+
assert.equal(testItem.userId, ress.userId);
|
26
|
+
assert.equal(testItem.object, ress.object);
|
27
|
+
assert.equal(testItem.before, ress.before);
|
28
|
+
assert.equal(testItem.after, ress.after);
|
29
|
+
assert.equal(testItem.delta, ress.delta);
|
39
30
|
const expectedDate = new Date().valueOf() / 1000.0;
|
40
|
-
const timeDelta = expectedDate -
|
31
|
+
const timeDelta = expectedDate - ress.modified_unix_date;
|
41
32
|
assert.isTrue(timeDelta < 1);
|
42
|
-
|
43
|
-
});
|
33
|
+
}).catch((err) => { assert.isNull(err, "Should not err"); });
|
44
34
|
});
|
45
35
|
});
|
package/test/agency.js
CHANGED
@@ -1,45 +1,33 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
const assert = require("chai").assert;
|
4
|
+
const mongoose = require('mongoose');
|
4
5
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
describe("Agency", function() {
|
9
|
-
let models, mongoose;
|
6
|
+
describe("Agency", function () {
|
7
|
+
let models = mongoose.models;;
|
10
8
|
let testItem;
|
11
|
-
beforeEach(async function() {
|
12
|
-
const c = await m.connect(config.url);
|
13
|
-
models = c.models;
|
14
|
-
mongoose = c.mongoose;
|
15
|
-
|
9
|
+
beforeEach(async function () {
|
16
10
|
const mock = require("./mock")({
|
17
11
|
mongoose
|
18
12
|
});
|
19
13
|
testItem = mock.agency;
|
20
14
|
});
|
21
|
-
afterEach(function() {
|
22
|
-
mongoose.disconnect();
|
23
|
-
});
|
24
|
-
|
25
|
-
it("is saved", function(done) {
|
26
|
-
var item = new models.Agency(testItem);
|
27
|
-
item.save(function(err, sut) {
|
28
|
-
assert.isNull(err, "Should not err");
|
29
15
|
|
16
|
+
it("is saved", async function () {
|
17
|
+
const item = new models.Agency(testItem);
|
18
|
+
item.save().then((ress) => {
|
30
19
|
assert.isNotNull(testItem._id);
|
31
|
-
assert.equal(testItem.departmentId,
|
32
|
-
assert.equal(testItem.active,
|
33
|
-
assert.equal(testItem.code,
|
34
|
-
assert.equal(testItem.name,
|
20
|
+
assert.equal(testItem.departmentId, ress.departmentId);
|
21
|
+
assert.equal(testItem.active, ress.active);
|
22
|
+
assert.equal(testItem.code, ress.code);
|
23
|
+
assert.equal(testItem.name, ress.name);
|
35
24
|
assert.equal(testItem.administrators.length, 1);
|
36
|
-
assert.equal(testItem.personnelIntegration,
|
37
|
-
assert.equal(testItem.personnelMonitorHours,
|
25
|
+
assert.equal(testItem.personnelIntegration, ress.personnelIntegration);
|
26
|
+
assert.equal(testItem.personnelMonitorHours, ress.personnelMonitorHours);
|
38
27
|
assert.equal(testItem.crossStaffing.length, 1);
|
39
28
|
const expectedDate = new Date().valueOf() / 1000.0;
|
40
|
-
const timeDelta = expectedDate -
|
29
|
+
const timeDelta = expectedDate - ress.modified_unix_date;
|
41
30
|
assert.isTrue(timeDelta < 1);
|
42
|
-
|
43
|
-
});
|
31
|
+
}).catch((err) => { assert.isNull(err, "Should not err"); });
|
44
32
|
});
|
45
33
|
});
|
package/test/arcgis-group.js
CHANGED
@@ -3,16 +3,12 @@
|
|
3
3
|
const assert = require("chai").assert;
|
4
4
|
const _ = require("lodash");
|
5
5
|
|
6
|
-
const
|
7
|
-
const config = require("./config");
|
6
|
+
const mongoose = require('mongoose');
|
8
7
|
|
9
|
-
describe("ArcGISGroup", function() {
|
10
|
-
|
11
|
-
|
12
|
-
beforeEach(async function() {
|
13
|
-
const c = await m.connect(config.url);
|
14
|
-
models = c.models;
|
15
|
-
mongoose = c.mongoose;
|
8
|
+
describe("ArcGISGroup", function () {
|
9
|
+
const models = mongoose.models;
|
10
|
+
let mock;
|
11
|
+
beforeEach(async function () {
|
16
12
|
mock = require("./mock")({
|
17
13
|
models,
|
18
14
|
mongoose,
|
@@ -20,11 +16,7 @@ describe("ArcGISGroup", function() {
|
|
20
16
|
await mock.cleanup();
|
21
17
|
});
|
22
18
|
|
23
|
-
|
24
|
-
mongoose.disconnect();
|
25
|
-
});
|
26
|
-
|
27
|
-
it("is saved", async function() {
|
19
|
+
it("is saved", async function () {
|
28
20
|
const testItem = mock.arcGISGroup;
|
29
21
|
assert.isObject(testItem);
|
30
22
|
const item = new models.ArcGISGroup(testItem);
|
package/test/assignment.js
CHANGED
@@ -2,41 +2,33 @@
|
|
2
2
|
|
3
3
|
const assert = require("chai").assert;
|
4
4
|
|
5
|
-
const
|
6
|
-
const config = require("./config");
|
5
|
+
const mongoose = require('mongoose');
|
7
6
|
|
8
|
-
describe("Assignment", function() {
|
9
|
-
let models
|
7
|
+
describe("Assignment", function () {
|
8
|
+
let models = mongoose.models;
|
10
9
|
let testItem;
|
11
|
-
beforeEach(async function() {
|
12
|
-
const c = await m.connect(config.url);
|
13
|
-
models = c.models;
|
14
|
-
mongoose = c.mongoose;
|
15
|
-
|
10
|
+
beforeEach(async function () {
|
16
11
|
const mock = require("./mock")({
|
17
12
|
mongoose
|
18
13
|
});
|
19
14
|
testItem = mock.assignment;
|
20
15
|
});
|
21
|
-
afterEach(function() {
|
22
|
-
mongoose.disconnect();
|
23
|
-
});
|
24
16
|
|
25
|
-
it("is saved", async function() {
|
17
|
+
it("is saved", async function () {
|
26
18
|
const item = new models.Assignment(testItem);
|
27
|
-
const
|
19
|
+
const ress = await item.save();
|
28
20
|
|
29
21
|
assert.isNotNull(testItem._id);
|
30
|
-
assert.equal(
|
22
|
+
assert.equal(ress._id.toString(), ress.id.toString());
|
31
23
|
|
32
|
-
assert.equal(testItem.position,
|
33
|
-
assert.equal(testItem.active,
|
34
|
-
assert.equal(testItem.name,
|
35
|
-
assert.equal(testItem.userId,
|
36
|
-
assert.equal(testItem.departmentId,
|
37
|
-
assert.equal(testItem.isMandatory,
|
24
|
+
assert.equal(testItem.position, ress.position);
|
25
|
+
assert.equal(testItem.active, ress.active);
|
26
|
+
assert.equal(testItem.name, ress.name);
|
27
|
+
assert.equal(testItem.userId, ress.userId);
|
28
|
+
assert.equal(testItem.departmentId, ress.departmentId);
|
29
|
+
assert.equal(testItem.isMandatory, ress.isMandatory);
|
38
30
|
const expectedDate = new Date().valueOf() / 1000.0;
|
39
|
-
const timeDelta = expectedDate -
|
31
|
+
const timeDelta = expectedDate - ress.modified_unix_date;
|
40
32
|
assert.isTrue(timeDelta < 1);
|
41
33
|
});
|
42
34
|
});
|
package/test/battalion.js
CHANGED
@@ -2,45 +2,35 @@
|
|
2
2
|
|
3
3
|
const assert = require("chai").assert;
|
4
4
|
|
5
|
-
const
|
6
|
-
const config = require("./config");
|
5
|
+
const mongoose = require('mongoose');
|
7
6
|
|
8
7
|
describe("Battalion", function() {
|
9
|
-
let models
|
8
|
+
let models = mongoose.models;
|
10
9
|
let testItem;
|
11
10
|
beforeEach(async function() {
|
12
|
-
const c = await m.connect(config.url);
|
13
|
-
models = c.models;
|
14
|
-
mongoose = c.mongoose;
|
15
|
-
|
16
11
|
const mock = require("./mock")({
|
17
12
|
mongoose
|
18
13
|
});
|
19
14
|
testItem = mock.battalion;
|
20
15
|
});
|
21
|
-
afterEach(function() {
|
22
|
-
mongoose.disconnect();
|
23
|
-
});
|
24
16
|
|
25
|
-
it("is saved", function(
|
17
|
+
it("is saved", function() {
|
26
18
|
var item = new models.Battalion(testItem);
|
27
|
-
item.save(
|
28
|
-
assert.isNull(err, "Should not err");
|
19
|
+
item.save().then((ress) => {
|
29
20
|
|
30
21
|
assert.isNotNull(testItem._id);
|
31
|
-
assert.equal(testItem.departmentId,
|
32
|
-
assert.equal(testItem.active,
|
33
|
-
assert.equal(testItem.isMandatory,
|
34
|
-
assert.equal(testItem.name,
|
35
|
-
assert.equal(testItem.userId,
|
36
|
-
assert.equal(testItem.position,
|
37
|
-
assert.equal(testItem.agencyId,
|
38
|
-
assert.equal(testItem.local_id,
|
22
|
+
assert.equal(testItem.departmentId, ress.departmentId);
|
23
|
+
assert.equal(testItem.active, ress.active);
|
24
|
+
assert.equal(testItem.isMandatory, ress.isMandatory);
|
25
|
+
assert.equal(testItem.name, ress.name);
|
26
|
+
assert.equal(testItem.userId, ress.userId);
|
27
|
+
assert.equal(testItem.position, ress.position);
|
28
|
+
assert.equal(testItem.agencyId, ress.agencyId);
|
29
|
+
assert.equal(testItem.local_id, ress.local_id);
|
39
30
|
assert.equal(testItem.units.length, 1);
|
40
31
|
const expectedDate = new Date().valueOf() / 1000.0;
|
41
|
-
const timeDelta = expectedDate -
|
32
|
+
const timeDelta = expectedDate - ress.modified_unix_date;
|
42
33
|
assert.isTrue(timeDelta < 1);
|
43
|
-
|
44
|
-
});
|
34
|
+
}).catch((err) => { assert.isNull(err, "Should not err"); });
|
45
35
|
});
|
46
36
|
});
|
@@ -3,16 +3,12 @@
|
|
3
3
|
const _ = require("lodash");
|
4
4
|
const assert = require("chai").assert;
|
5
5
|
|
6
|
-
const
|
7
|
-
const config = require("./config");
|
6
|
+
const mongoose = require('mongoose');
|
8
7
|
|
9
8
|
describe("CADIncidentBlock", function() {
|
10
|
-
let models
|
9
|
+
let models = mongoose.models;
|
11
10
|
let testItem;
|
12
11
|
beforeEach(async function() {
|
13
|
-
const c = await m.connect(config.url);
|
14
|
-
models = c.models;
|
15
|
-
mongoose = c.mongoose;
|
16
12
|
|
17
13
|
const mock = require("./mock")({
|
18
14
|
mongoose
|
@@ -20,24 +16,22 @@ describe("CADIncidentBlock", function() {
|
|
20
16
|
testItem = mock.cadIncidentBlock;
|
21
17
|
await mock.beforeEach();
|
22
18
|
});
|
23
|
-
|
24
|
-
mongoose.disconnect();
|
25
|
-
});
|
19
|
+
|
26
20
|
|
27
21
|
it("is saved", async function() {
|
28
22
|
const item = new models.CADIncidentBlock(testItem);
|
29
|
-
const
|
23
|
+
const ress = await item.save();
|
30
24
|
|
31
25
|
assert.isNotNull(testItem._id);
|
32
|
-
assert.equal(
|
33
|
-
assert.equal(
|
34
|
-
assert.equal(
|
35
|
-
assert.equal(
|
36
|
-
assert.equal(
|
37
|
-
assert.equal(
|
38
|
-
assert.equal(
|
39
|
-
assert.equal(
|
40
|
-
const rn = _.first(
|
26
|
+
assert.equal(ress.EntryDateTime, testItem.EntryDateTime);
|
27
|
+
assert.equal(ress.ClosedDateTime, testItem.ClosedDateTime);
|
28
|
+
assert.equal(ress.source, testItem.source);
|
29
|
+
assert.equal(ress.IncidentNumber, testItem.IncidentNumber);
|
30
|
+
assert.equal(ress.departmentId, testItem.departmentId);
|
31
|
+
assert.equal(ress.AgencyIncidentCallTypeDescription, testItem.AgencyIncidentCallTypeDescription);
|
32
|
+
assert.equal(ress.createdAt.toISOString(), new Date(testItem.createdAt).toISOString());
|
33
|
+
assert.equal(ress.ReportNumber.length, 1);
|
34
|
+
const rn = _.first(ress.ReportNumber);
|
41
35
|
assert.equal(rn.name, "Incident");
|
42
36
|
assert.equal(rn.number, "CA68");
|
43
37
|
});
|