tabletcommand-incident 0.7.18 → 0.7.19

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.
@@ -23,6 +23,7 @@ const set_city_cleanup_1 = require("./set-city-cleanup");
23
23
  const set_comment_opts_ack_type_1 = require("./set-comment-opts-ack-type");
24
24
  const set_common_place_name_1 = require("./set-common-place-name");
25
25
  const set_communication_channels_from_radio_names_1 = require("./set-communication-channels-from-radio-names");
26
+ const set_command_name_from_comment_1 = require("./set-command-name-from-comment");
26
27
  const set_cross_streets_1 = require("./set-cross-streets");
27
28
  const set_fire_map_from_map_pages_southern_marin_1 = require("./set-fire-map-from-map-pages-southern-marin");
28
29
  const set_fire_map_pages_ontario_1 = require("./set-fire-map-pages-ontario");
@@ -240,6 +241,10 @@ function rulesForDepartment(department) {
240
241
  if (calFireDepartments.includes(departmentId)) {
241
242
  items.push(new clear_field_1.IncidentRuleClearField("CommandName"));
242
243
  }
244
+ // CalFire - SHU
245
+ if (departmentId === "67b8f72781b942e127eac4a6") {
246
+ items.push(new set_command_name_from_comment_1.IncidentRuleSetCommandNameFromComment(["CIN"]));
247
+ }
243
248
  // CalFire FKU && CalFire FKU Test
244
249
  if (departmentId === "64948d8f051d17033f77d034" ||
245
250
  departmentId === "6488e155a5134c6d7336e454") {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.IncidentRuleSetCommandNameFromComment = void 0;
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ class IncidentRuleSetCommandNameFromComment {
9
+ constructor(keywords) {
10
+ this.name = "Set CommandName From Comment";
11
+ this.matched = false;
12
+ this.changed = false;
13
+ this.changes = [];
14
+ this.keywords = [];
15
+ this.keywords = keywords;
16
+ }
17
+ apply(item, _atDate) {
18
+ if (this.keywords.length === 0) {
19
+ return item;
20
+ }
21
+ const comments = lodash_1.default.isArray(item.Comment) ? item.Comment : [];
22
+ const matchingComment = findLatestMatch(comments, this.keywords);
23
+ if (matchingComment) {
24
+ item.CommandName = matchingComment.newCommandName;
25
+ this.matched = true;
26
+ this.changed = true;
27
+ this.changes.push({
28
+ name: this.name,
29
+ matched: this.matched,
30
+ changed: this.changed,
31
+ change: {
32
+ CommandName: matchingComment.newCommandName,
33
+ }
34
+ });
35
+ return item;
36
+ }
37
+ return item;
38
+ }
39
+ }
40
+ exports.IncidentRuleSetCommandNameFromComment = IncidentRuleSetCommandNameFromComment;
41
+ function findLatestMatch(comments, keywords) {
42
+ let match = null;
43
+ comments.forEach((c) => {
44
+ if (!lodash_1.default.isString(c.Comment)) {
45
+ return;
46
+ }
47
+ const newCommandName = checkForMatch(c.Comment, keywords);
48
+ if (newCommandName === null) {
49
+ return;
50
+ }
51
+ // not setting a value anywhere | strictly used for comparison
52
+ const currentDateTime = c.CommentDateTime || new Date().toISOString();
53
+ if (!match || currentDateTime > match.commentDateTime) {
54
+ match = {
55
+ comment: c.Comment,
56
+ commentDateTime: currentDateTime,
57
+ newCommandName,
58
+ };
59
+ }
60
+ });
61
+ return match;
62
+ }
63
+ function checkForMatch(comment, keywords) {
64
+ for (const keyword of keywords) {
65
+ // expand for future use of special characters
66
+ const escapedKeyword = lodash_1.default.escapeRegExp(keyword);
67
+ const match = comment.match(new RegExp(`(?:^|\\s)${escapedKeyword}\\b[\\s\\S]*?->\\s*(.+)$`, "i"));
68
+ if (!match || !lodash_1.default.isString(match[1])) {
69
+ continue;
70
+ }
71
+ const newCommandName = lodash_1.default.trim(match[1]);
72
+ if (newCommandName !== "") {
73
+ return newCommandName;
74
+ }
75
+ }
76
+ return null;
77
+ }
78
+ //# sourceMappingURL=set-command-name-from-comment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-command-name-from-comment.js","sourceRoot":"","sources":["../../src/rules/set-command-name-from-comment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const chai_1 = require("chai");
4
+ require("mocha");
5
+ const set_command_name_from_comment_1 = require("../../rules/set-command-name-from-comment");
6
+ describe("IncidentRuleSetCommandNameFromComment", function describeFunc() {
7
+ it("sets CommandName from most recent keyword match", function () {
8
+ const testItem = {
9
+ CommandName: "OLD NAME",
10
+ Comment: [
11
+ {
12
+ Comment: "CIN HQ RED -> HEADQUARTERS",
13
+ CommentDateTime: "2022-12-08T11:53:42-0700",
14
+ CommentSource: "X",
15
+ CommentConfidential: false,
16
+ CommentOpts: { type: "", item: "" },
17
+ },
18
+ {
19
+ Comment: "cin other -> Beta ",
20
+ CommentDateTime: "2022-12-08T12:53:42-0700",
21
+ CommentSource: "X",
22
+ CommentConfidential: false,
23
+ CommentOpts: { type: "", item: "" },
24
+ },
25
+ ]
26
+ };
27
+ const atDate = new Date("2022-12-08T13:53:42.000Z");
28
+ const rule = new set_command_name_from_comment_1.IncidentRuleSetCommandNameFromComment(["CIN"]);
29
+ const result = rule.apply(testItem, atDate);
30
+ chai_1.assert.isTrue(rule.matched);
31
+ chai_1.assert.isTrue(rule.changed);
32
+ chai_1.assert.equal(result.CommandName, "Beta");
33
+ });
34
+ it("does nothing when no keyword match exists", function () {
35
+ const testItem = {
36
+ CommandName: "",
37
+ Comment: [
38
+ {
39
+ Comment: "No match here",
40
+ CommentDateTime: "2022-12-08T11:53:42-0700",
41
+ CommentSource: "X",
42
+ CommentConfidential: false,
43
+ CommentOpts: { type: "", item: "" },
44
+ },
45
+ ]
46
+ };
47
+ const atDate = new Date("2022-12-08T13:53:42.000Z");
48
+ const rule = new set_command_name_from_comment_1.IncidentRuleSetCommandNameFromComment(["CIN"]);
49
+ const result = rule.apply(testItem, atDate);
50
+ chai_1.assert.isFalse(rule.matched);
51
+ chai_1.assert.isFalse(rule.changed);
52
+ chai_1.assert.equal(result.CommandName, "");
53
+ });
54
+ });
55
+ //# sourceMappingURL=set-command-name-from-comment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-command-name-from-comment.js","sourceRoot":"","sources":["../../../src/test/rules/set-command-name-from-comment.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,iBAAe;AAEf,6FAEmD;AAEnD,QAAQ,CAAC,uCAAuC,EAAE,SAAS,YAAY;IACrE,EAAE,CAAC,iDAAiD,EAAE;QACpD,MAAM,QAAQ,GAAG;YACf,WAAW,EAAE,UAAU;YACvB,OAAO,EAAE;gBACP;oBACE,OAAO,EAAE,4BAA4B;oBACrC,eAAe,EAAE,0BAA0B;oBAC3C,aAAa,EAAE,GAAG;oBAClB,mBAAmB,EAAE,KAAK;oBAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;iBACpC;gBACD;oBACE,OAAO,EAAE,sBAAsB;oBAC/B,eAAe,EAAE,0BAA0B;oBAC3C,aAAa,EAAE,GAAG;oBAClB,mBAAmB,EAAE,KAAK;oBAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;iBACpC;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,qEAAqC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC5C,aAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,aAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,aAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE;QAC9C,MAAM,QAAQ,GAAG;YACf,WAAW,EAAE,EAAE;YACf,OAAO,EAAE;gBACP;oBACE,OAAO,EAAE,eAAe;oBACxB,eAAe,EAAE,0BAA0B;oBAC3C,aAAa,EAAE,GAAG;oBAClB,mBAAmB,EAAE,KAAK;oBAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;iBACpC;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,qEAAqC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC5C,aAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,aAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,aAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAEvE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAE9B,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACvE;AAqDD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,YAAY,EAAE,CA+alF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,MAAM,OAAa,GAAG;IAClG,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B,CAgBA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAEvE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAE9B,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACvE;AAsDD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,YAAY,EAAE,CAoblF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,MAAM,OAAa,GAAG;IAClG,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B,CAgBA"}
@@ -0,0 +1,12 @@
1
+ import { CADIncident } from "tabletcommand-backend-models";
2
+ import { IncidentRule, IncidentRuleChange } from ".";
3
+ export declare class IncidentRuleSetCommandNameFromComment implements IncidentRule {
4
+ name: string;
5
+ matched: boolean;
6
+ changed: boolean;
7
+ changes: IncidentRuleChange[];
8
+ keywords: string[];
9
+ constructor(keywords: string[]);
10
+ apply(item: Partial<CADIncident>, _atDate: Date): Partial<CADIncident>;
11
+ }
12
+ //# sourceMappingURL=set-command-name-from-comment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-command-name-from-comment.d.ts","sourceRoot":"","sources":["../../src/rules/set-command-name-from-comment.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,GAAG,CAAC;AAQrD,qBAAa,qCAAsC,YAAW,YAAY;IACxE,IAAI,SAAkC;IACtC,OAAO,UAAS;IAChB,OAAO,UAAS;IAChB,OAAO,EAAE,kBAAkB,EAAE,CAAM;IACnC,QAAQ,EAAE,MAAM,EAAE,CAAM;gBAEZ,QAAQ,EAAE,MAAM,EAAE;IAI9B,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;CAyBvE"}
@@ -0,0 +1,2 @@
1
+ import "mocha";
2
+ //# sourceMappingURL=set-command-name-from-comment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-command-name-from-comment.d.ts","sourceRoot":"","sources":["../../../src/test/rules/set-command-name-from-comment.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tabletcommand-incident",
3
- "version": "0.7.18",
3
+ "version": "0.7.19",
4
4
  "description": "Tablet Command Incident",
5
5
  "main": "build/index.js",
6
6
  "scripts": {
@@ -44,6 +44,7 @@ import { IncidentRuleSetCityCleanUp } from "./set-city-cleanup";
44
44
  import { IncidentRuleSetCommentOptsAckType } from "./set-comment-opts-ack-type";
45
45
  import { IncidentRuleSetCommonPlaceName } from "./set-common-place-name";
46
46
  import { IncidentRuleSetCommunicationChannelsFromRadioNames } from "./set-communication-channels-from-radio-names";
47
+ import { IncidentRuleSetCommandNameFromComment } from "./set-command-name-from-comment";
47
48
  import { IncidentRuleSetCrossStreets } from "./set-cross-streets";
48
49
  import { IncidentRuleSetFireMapFromMapPagesSouthernMarin } from "./set-fire-map-from-map-pages-southern-marin";
49
50
  import { IncidentRuleSetFireMapPagesOntario } from "./set-fire-map-pages-ontario";
@@ -307,6 +308,11 @@ export function rulesForDepartment(department: Partial<Department>): IncidentRul
307
308
  items.push(new IncidentRuleClearField("CommandName"));
308
309
  }
309
310
 
311
+ // CalFire - SHU
312
+ if (departmentId === "67b8f72781b942e127eac4a6") {
313
+ items.push(new IncidentRuleSetCommandNameFromComment(["CIN"]));
314
+ }
315
+
310
316
  // CalFire FKU && CalFire FKU Test
311
317
  if (departmentId === "64948d8f051d17033f77d034" ||
312
318
  departmentId === "6488e155a5134c6d7336e454"
@@ -0,0 +1,90 @@
1
+ import _ from "lodash";
2
+
3
+ import { CADIncident } from "tabletcommand-backend-models";
4
+ import { IncidentRule, IncidentRuleChange } from ".";
5
+
6
+ type CommentMatch = {
7
+ comment: string;
8
+ commentDateTime: string;
9
+ newCommandName: string;
10
+ };
11
+
12
+ export class IncidentRuleSetCommandNameFromComment implements IncidentRule {
13
+ name = "Set CommandName From Comment";
14
+ matched = false;
15
+ changed = false;
16
+ changes: IncidentRuleChange[] = [];
17
+ keywords: string[] = [];
18
+
19
+ constructor(keywords: string[]) {
20
+ this.keywords = keywords;
21
+ }
22
+
23
+ apply(item: Partial<CADIncident>, _atDate: Date): Partial<CADIncident> {
24
+ if (this.keywords.length === 0) {
25
+ return item;
26
+ }
27
+
28
+ const comments = _.isArray(item.Comment) ? item.Comment : [];
29
+ const matchingComment = findLatestMatch(comments, this.keywords);
30
+
31
+ if (matchingComment) {
32
+ item.CommandName = matchingComment.newCommandName;
33
+ this.matched = true;
34
+ this.changed = true;
35
+ this.changes.push({
36
+ name: this.name,
37
+ matched: this.matched,
38
+ changed: this.changed,
39
+ change: {
40
+ CommandName: matchingComment.newCommandName,
41
+ }
42
+ });
43
+ return item;
44
+ }
45
+
46
+ return item;
47
+ }
48
+ }
49
+
50
+ function findLatestMatch(
51
+ comments: Array<{ Comment?: string; CommentDateTime?: string }>,
52
+ keywords: string[]
53
+ ): CommentMatch | null {
54
+ let match: CommentMatch | null = null;
55
+ comments.forEach((c) => {
56
+ if (!_.isString(c.Comment)) {
57
+ return;
58
+ }
59
+ const newCommandName = checkForMatch(c.Comment, keywords);
60
+ if (newCommandName === null) {
61
+ return;
62
+ }
63
+ // not setting a value anywhere | strictly used for comparison
64
+ const currentDateTime = c.CommentDateTime || new Date().toISOString();
65
+ if (!match || currentDateTime > match.commentDateTime) {
66
+ match = {
67
+ comment: c.Comment,
68
+ commentDateTime: currentDateTime,
69
+ newCommandName,
70
+ };
71
+ }
72
+ });
73
+ return match;
74
+ }
75
+
76
+ function checkForMatch(comment: string, keywords: string[]): string | null {
77
+ for (const keyword of keywords) {
78
+ // expand for future use of special characters
79
+ const escapedKeyword = _.escapeRegExp(keyword);
80
+ const match = comment.match(new RegExp(`(?:^|\\s)${escapedKeyword}\\b[\\s\\S]*?->\\s*(.+)$`, "i"));
81
+ if (!match || !_.isString(match[1])) {
82
+ continue;
83
+ }
84
+ const newCommandName = _.trim(match[1]);
85
+ if (newCommandName !== "") {
86
+ return newCommandName;
87
+ }
88
+ }
89
+ return null;
90
+ }
@@ -0,0 +1,59 @@
1
+ import { assert } from "chai";
2
+ import "mocha";
3
+
4
+ import {
5
+ IncidentRuleSetCommandNameFromComment,
6
+ } from "../../rules/set-command-name-from-comment";
7
+
8
+ describe("IncidentRuleSetCommandNameFromComment", function describeFunc() {
9
+ it("sets CommandName from most recent keyword match", function() {
10
+ const testItem = {
11
+ CommandName: "OLD NAME",
12
+ Comment: [
13
+ {
14
+ Comment: "CIN HQ RED -> HEADQUARTERS",
15
+ CommentDateTime: "2022-12-08T11:53:42-0700",
16
+ CommentSource: "X",
17
+ CommentConfidential: false,
18
+ CommentOpts: { type: "", item: "" },
19
+ },
20
+ {
21
+ Comment: "cin other -> Beta ",
22
+ CommentDateTime: "2022-12-08T12:53:42-0700",
23
+ CommentSource: "X",
24
+ CommentConfidential: false,
25
+ CommentOpts: { type: "", item: "" },
26
+ },
27
+ ]
28
+ };
29
+
30
+ const atDate = new Date("2022-12-08T13:53:42.000Z");
31
+ const rule = new IncidentRuleSetCommandNameFromComment(["CIN"]);
32
+ const result = rule.apply(testItem, atDate);
33
+ assert.isTrue(rule.matched);
34
+ assert.isTrue(rule.changed);
35
+ assert.equal(result.CommandName, "Beta");
36
+ });
37
+
38
+ it("does nothing when no keyword match exists", function() {
39
+ const testItem = {
40
+ CommandName: "",
41
+ Comment: [
42
+ {
43
+ Comment: "No match here",
44
+ CommentDateTime: "2022-12-08T11:53:42-0700",
45
+ CommentSource: "X",
46
+ CommentConfidential: false,
47
+ CommentOpts: { type: "", item: "" },
48
+ },
49
+ ]
50
+ };
51
+
52
+ const atDate = new Date("2022-12-08T13:53:42.000Z");
53
+ const rule = new IncidentRuleSetCommandNameFromComment(["CIN"]);
54
+ const result = rule.apply(testItem, atDate);
55
+ assert.isFalse(rule.matched);
56
+ assert.isFalse(rule.changed);
57
+ assert.equal(result.CommandName, "");
58
+ });
59
+ });