watchman 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
data/lib/watchman/call.rb CHANGED
@@ -34,8 +34,13 @@ module Watchman
34
34
  "O"=>"Omega"}
35
35
 
36
36
  def response_level
37
- match = nature_cell_text.split("-").first.scan(/^\d+([A-O])/).first.first
38
- ResponseLevelMap[match]
37
+ code = nature_cell_text.split("-").first
38
+ if code == "IA"
39
+ return "Bravo"
40
+ else
41
+ match = code.scan(/^\d+([A-O])/).first.first
42
+ ResponseLevelMap[match]
43
+ end
39
44
  end
40
45
 
41
46
  def apparatus
@@ -71,11 +76,19 @@ module Watchman
71
76
  end
72
77
 
73
78
  def cross_street_1
74
- xpath_text("#{main_table_path}/tr[7]/td")
79
+ if xpath_text("#{main_table_path}/tr[7]/th") == "Cross1"
80
+ xpath_text("#{main_table_path}/tr[7]/td")
81
+ elsif xpath_text("#{main_table_path}/tr[8]/th") == "Cross1"
82
+ xpath_text("#{main_table_path}/tr[8]/td")
83
+ end
75
84
  end
76
85
 
77
86
  def cross_street_2
78
- xpath_text("#{main_table_path}/tr[8]/td")
87
+ if xpath_text("#{main_table_path}/tr[8]/th") == "Cross2"
88
+ xpath_text("#{main_table_path}/tr[8]/td")
89
+ elsif xpath_text("#{main_table_path}/tr[9]/th") == "Cross2"
90
+ xpath_text("#{main_table_path}/tr[9]/td")
91
+ end
79
92
  end
80
93
 
81
94
  def priority
@@ -95,7 +108,11 @@ module Watchman
95
108
  end
96
109
 
97
110
  def time_of_alarm
98
- Time.parse(xpath_text("#{main_table_path}/tr[16]/td"))
111
+ if xpath_text("#{main_table_path}/tr[16]/th") == "Inc Date/Time"
112
+ Time.parse(xpath_text("#{main_table_path}/tr[16]/td"))
113
+ elsif xpath_text("#{main_table_path}/tr[18]/th") == "Date Recd"
114
+ Time.parse(xpath_text("#{main_table_path}/tr[18]/td"))
115
+ end
99
116
  end
100
117
 
101
118
  def time_of_first_unit_on_scene
@@ -103,7 +120,11 @@ module Watchman
103
120
  end
104
121
  private
105
122
  def nature_cell_text
106
- xpath_text("#{main_table_path}/tr[3]/td")
123
+ if xpath_text("#{main_table_path}/tr[3]/th") == "Nature"
124
+ xpath_text("#{main_table_path}/tr[3]/td")
125
+ elsif xpath_text("#{main_table_path}/tr[4]/th") == "Nature"
126
+ xpath_text("#{main_table_path}/tr[4]/td")
127
+ end
107
128
  end
108
129
 
109
130
  def main_table_path
@@ -1,3 +1,3 @@
1
1
  module Watchman
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
@@ -17,6 +17,13 @@ class IstatusMocker
17
17
  :body => MEDIC_PAGE_HTML)
18
18
  end
19
19
 
20
+ def fake_active_call_path(host,incident_number)
21
+ fake_login(host)
22
+ FakeWeb.register_uri(:get,"https://#{host}/DisplayCall.php?Incid=#{incident_number}",
23
+ 'content-type'=>"text/html",
24
+ :body => ACTIVE_CALL_HTML)
25
+ end
26
+
20
27
  def fake_call_path(host,incident_number)
21
28
  fake_login(host)
22
29
  FakeWeb.register_uri(:get,"https://#{host}/DisplayCall.php?Incid=#{incident_number}",
@@ -785,4 +792,371 @@ class IstatusMocker
785
792
  </HTML>
786
793
  <script language="javascript" src="JSFuncs.js"></script>
787
794
  }
795
+
796
+ ACTIVE_CALL_HTML = %Q{
797
+
798
+ <HTML>
799
+ <HEAD>
800
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
801
+ <!--<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">-->
802
+ <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">
803
+ <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
804
+ <META HTTP-EQUIV="EXPIRES" CONTENT="0">
805
+ <TITLE>EnRoute I-STATUS - Version 5.10</TITLE>
806
+ <LINK REL="stylesheet" HREF="DisplayFormat.css" TYPE="text/css">
807
+ <script language="javascript">
808
+ //bring the page to foreground
809
+ this.focus();
810
+ </script>
811
+ </HEAD>
812
+ <BODY CLASS="Detail" j=l>
813
+ <H3 class="Status">Active Incident: 201024340</H3><table cellpadding="0" cellspacing="0" width="100%"><tr width="100%"><td valign="top" width="50%"><table cellpadding="0" cellspacing="0" width="100%"><tr><th class="Detail" align="left" width=$cw>Location</th><td class="Detail" align="left" colspan="3"><a href="SearchDStatsSubmit.php?Address=HIGHWAY WW E-BC/RANGELINE RD S-BC">HIGHWAY WW E-BC/RANGELINE RD S-BC</a></td></tr><tr><TH CLASS='Detail' align=left width=100px>
814
+ Building</TH>
815
+ <TD CLASS='Detail' COLSPAN=3>
816
+ </TD>
817
+ </tr><tr><th class="Detail" align="left" width=$cw>Nature</th><TD CLASS='Detail' COLSPAN=3>
818
+ IA-INJURY ACCIDENT </TD>
819
+ </tr><tr><TH CLASS='Detail' align=left width=100px>
820
+ Priority</TH>
821
+ <TD CLASS='Detail' width=110px>
822
+ 1</TD>
823
+ <TH CLASS='Detail' align=left width=100px>
824
+ Dispatch Code</TH>
825
+ <TD CLASS='Detail' >
826
+ IA </TD>
827
+ </tr><tr><TH CLASS='Detail' align=left>
828
+ Grid</TH>
829
+ <TD CLASS='Detail' width=110px>
830
+ 30194B </TD>
831
+ <TH CLASS='Detail' align=left width=100px>
832
+ Tac</TH>
833
+ <TD CLASS='Detail' >
834
+ BF1 </TD>
835
+ </tr><tr><TH CLASS='Detail' align=left>
836
+ Fire Area</TH>
837
+ <td class="Detail" COLSPAN="3">12-15C</td></tr><tr><TH CLASS='Detail' align=left>
838
+ Plan</TH>
839
+ <TD CLASS='Detail' width=110px>
840
+ </TD>
841
+ <TH CLASS='Detail' align=left width=100px>
842
+ Map</TH>
843
+ <TD CLASS='Detail' >
844
+ </TD>
845
+ </tr><tr><TH CLASS='Detail' align=left>
846
+ Cross1</TH>
847
+ <td class="Detail" COLSPAN="3">RANGELINE RD S</td></tr><tr><TH CLASS='Detail' align=left>
848
+ Cross2</TH>
849
+ <td class="Detail" COLSPAN="3">BLACKTHORNE LN S</td></tr><tr><th class="Detail" align="left">Hyd1</th><td class="Detail" width=$dw> </td><th class="Detail" align="left" width=$cw>Hyd2</th><td class="Detail"> </td></tr><tr><th class="Detail" align="left" width=$cw>Cautions</th><td class="Detail" colspan="3">HSD HSD:At Columbia/Boone County Line - eastern continuation of Broadway-E</td></tr><tr><td colspan="4"><hr color=navy></td></tr><tr><TH CLASS='Detail' align=left width=100px>
850
+ Complainant</TH>
851
+ <TD CLASS='Detail' colspan=3>
852
+ AMBER FOSTER</TD>
853
+ </tr><tr><TH CLASS='Detail' align=left width=100px>
854
+ Phone</TH>
855
+ <TD CLASS='Detail' colspan=3>
856
+ 2204066 </TD>
857
+ </tr><tr><th class="Detail" align="left" width=$cw>Dispatcher</th><td class="Detail" width=$dw>ALL </td><th class="Detail" align="left" width=$cw>CallTaker</th><td class="Detail">JSH </td></tr><tr><TH CLASS='Detail' align=left width=100px>
858
+ DispO</TH>
859
+ <TD CLASS='Detail' >
860
+ ND </TD>
861
+ <TH CLASS='Detail' align=left width=100px>
862
+ Meth. Alarm</TH>
863
+ <TD CLASS='Detail' >
864
+ 1 </TD>
865
+ </tr><tr><td colspan="4"><hr color=navy></td></tr><tr><TH CLASS='Detail' align=left width=100px>
866
+ Date Recd</TH>
867
+ <TD CLASS='Detail' colspan=3>
868
+ 12/29/2010 14:54:53</TD>
869
+ </tr><tr><TH CLASS='Detail' align=left width=100px>
870
+ On Scene</TH>
871
+ <TD CLASS='Detail' colspan=3>
872
+ 12/29/2010 15:04:18</TD>
873
+ </tr><tr><TH CLASS='Detail' align=left width=100px>
874
+ Upgrade</TH>
875
+ <TD CLASS='Detail' colspan=3>
876
+ 00:00:00</TD>
877
+ </tr><tr><TH CLASS='Detail' align=left width=100px>
878
+ Pat Contact</TH>
879
+ <TD CLASS='Detail' colspan=3>
880
+ 00:00:00</TD>
881
+ </tr></TR>
882
+ </table></td><td valign="top" align="center" width="50%"><table border="1" bordercolor="#76a5b6" cellpadding="0" cellspacing="0" width="90%"><TR >
883
+ <TH CLASS='Detail' align=left>
884
+ Apparatus</TH>
885
+ <TH CLASS='Detail' align="center">
886
+ DSP</TH>
887
+ <TH CLASS='Detail' align="center">
888
+ ENR</TH>
889
+ <TH CLASS='Detail' align="center">
890
+ ONS</TH>
891
+ <TH CLASS='Detail' align="center">
892
+ Tran</TH>
893
+ <TH CLASS='Detail' align="center">
894
+ OSH</TH>
895
+ <TH CLASS='Detail' align="center">
896
+ AVL</TH>
897
+ </TR>
898
+ <TR >
899
+ <TD CLASS='AOS' >
900
+ E1201 </TD>
901
+ <TD CLASS='Detail' align="center">
902
+ 14:55:00</TD>
903
+ <TD CLASS='Detail' align="center">
904
+ 14:56:59</TD>
905
+ <TD CLASS='Detail' align="center">
906
+ 15:01:54</TD>
907
+ <TD CLASS='Detail' align="center">
908
+ 00:00:00</TD>
909
+ <TD CLASS='Detail' align="center">
910
+ 00:00:00</TD>
911
+ <TD CLASS='Detail' align="center">
912
+ 15:28:41</TD>
913
+ </TR>
914
+ <TR >
915
+ <TD CLASS='AOS' >
916
+ E1501 </TD>
917
+ <TD CLASS='Detail' align="center">
918
+ 14:55:00</TD>
919
+ <TD CLASS='Detail' align="center">
920
+ 14:58:23</TD>
921
+ <TD CLASS='Detail' align="center">
922
+ 15:07:18</TD>
923
+ <TD CLASS='Detail' align="center">
924
+ 00:00:00</TD>
925
+ <TD CLASS='Detail' align="center">
926
+ 00:00:00</TD>
927
+ <TD CLASS='Detail' align="center">
928
+ 15:28:28</TD>
929
+ </TR>
930
+ <TR >
931
+ <TD CLASS='ENH' >
932
+ M111 </TD>
933
+ <TD CLASS='Detail' align="center">
934
+ 14:55:00</TD>
935
+ <TD CLASS='Detail' align="center">
936
+ 14:56:53</TD>
937
+ <TD CLASS='Detail' align="center">
938
+ 15:07:51</TD>
939
+ <TD CLASS='Detail' align="center">
940
+ 15:14:00</TD>
941
+ <TD CLASS='Detail' align="center">
942
+ 00:00:00</TD>
943
+ <TD CLASS='Detail' align="center">
944
+ 00:00:00</TD>
945
+ </TR>
946
+ <TR >
947
+ <TD CLASS='AVL' >
948
+ DIV61 </TD>
949
+ <TD CLASS='Detail' align="center">
950
+ 14:57:14</TD>
951
+ <TD CLASS='Detail' align="center">
952
+ 14:57:14</TD>
953
+ <TD CLASS='Detail' align="center">
954
+ 15:07:58</TD>
955
+ <TD CLASS='Detail' align="center">
956
+ 00:00:00</TD>
957
+ <TD CLASS='Detail' align="center">
958
+ 00:00:00</TD>
959
+ <TD CLASS='Detail' align="center">
960
+ 15:29:38</TD>
961
+ </TR>
962
+ <TR >
963
+ <TD CLASS='AVL' >
964
+ EMS22 </TD>
965
+ <TD CLASS='Detail' align="center">
966
+ 14:57:36</TD>
967
+ <TD CLASS='Detail' align="center">
968
+ 14:57:46</TD>
969
+ <TD CLASS='Detail' align="center">
970
+ 15:05:29</TD>
971
+ <TD CLASS='Detail' align="center">
972
+ 00:00:00</TD>
973
+ <TD CLASS='Detail' align="center">
974
+ 00:00:00</TD>
975
+ <TD CLASS='Detail' align="center">
976
+ 15:24:24</TD>
977
+ </TR>
978
+ <TR >
979
+ <TD CLASS='AVL' >
980
+ C1218 </TD>
981
+ <TD CLASS='Detail' align="center">
982
+ 14:57:58</TD>
983
+ <TD CLASS='Detail' align="center">
984
+ 14:58:09</TD>
985
+ <TD CLASS='Detail' align="center">
986
+ 15:04:18</TD>
987
+ <TD CLASS='Detail' align="center">
988
+ 00:00:00</TD>
989
+ <TD CLASS='Detail' align="center">
990
+ 00:00:00</TD>
991
+ <TD CLASS='Detail' align="center">
992
+ 15:29:36</TD>
993
+ </TR>
994
+ </table></td></tr><tr><td colspan="4"><hr color=navy></td></tr><tr><table cellpadding="1" cellspacing="0" width="100%"><tr><th class="Detail" align="left" width=$cw>Notes</th><td class="Detail" colspan=3"><table cellpadding="1" cellspacing="0" width="100%"><TR >
995
+ <td class="Notes" valign="top">14:49:45</td><TD CLASS='Notes' >
996
+ *CITY: BC-BOONE COUNTY </TD>
997
+ </TR>
998
+ <TR >
999
+ <td class="Notes" valign="top">14:50:14</td><TD CLASS='Notes' >
1000
+ NON INJURY (00000155-140)</TD>
1001
+ </TR>
1002
+ <TR >
1003
+ <td class="Notes" valign="top">14:50:43</td><TD CLASS='Notes' >
1004
+ BROWN RANGERS VS SILV EXPLORER (00000155-140)</TD>
1005
+ </TR>
1006
+ <TR >
1007
+ <td class="Notes" valign="top">14:50:47</td><TD CLASS='Notes' >
1008
+ BLOCKING TRAFFIC (00000155-140)</TD>
1009
+ </TR>
1010
+ <TR >
1011
+ <td class="Notes" valign="top">14:52:07</td><TD CLASS='Notes' >
1012
+ P.D. Response area is 114 (00000155-140)</TD>
1013
+ </TR>
1014
+ <TR >
1015
+ <td class="Notes" valign="top">14:52:44</td><TD CLASS='Notes' >
1016
+ COMP NOT INVOLVED (00000155-140)</TD>
1017
+ </TR>
1018
+ <TR >
1019
+ <td class="Notes" valign="top">14:53:27</td><TD CLASS='Notes' >
1020
+ NOW CALLING BACK ADVISING POSSIB (00000155-140)</TD>
1021
+ </TR>
1022
+ <TR >
1023
+ <td class="Notes" valign="top">14:53:27</td><TD CLASS='Notes' >
1024
+ INJURY (00000155-140)</TD>
1025
+ </TR>
1026
+ <TR >
1027
+ <td class="Notes" valign="top">14:53:43</td><TD CLASS='Notes' >
1028
+ REQ FOR A MEDIC (00000155-140)</TD>
1029
+ </TR>
1030
+ <TR >
1031
+ <td class="Notes" valign="top">14:53:48</td><TD CLASS='Notes' >
1032
+ !*** Nature changed from A ACCIDENT (00000155-140)</TD>
1033
+ </TR>
1034
+ <TR >
1035
+ <td class="Notes" valign="top">14:53:49</td><TD CLASS='Notes' >
1036
+ !*** (00000155-140)</TD>
1037
+ </TR>
1038
+ <TR >
1039
+ <td class="Notes" valign="top">14:53:49</td><TD CLASS='Notes' >
1040
+ Priority changed from 3 to 1 (00000155-140)</TD>
1041
+ </TR>
1042
+ <TR >
1043
+ <td class="Notes" valign="top">14:53:58</td><TD CLASS='Notes' >
1044
+ 51 YOA M, CONSCIOUS/BREATHING (00000155-140)</TD>
1045
+ </TR>
1046
+ <TR >
1047
+ <td class="Notes" valign="top">14:54:10</td><TD CLASS='Notes' >
1048
+ HAS CHEST INJURY DUE TO ACCIDENT (00000155-140)</TD>
1049
+ </TR>
1050
+ <TR >
1051
+ <td class="Notes" valign="top">14:54:53</td><TD CLASS='Notes' >
1052
+ SHIPPED FROM POLICE DISPATCH, INCIDENT NUMBER 2010257111 (00000155-140)</TD>
1053
+ </TR>
1054
+ <TR >
1055
+ <td class="Notes" valign="top">14:54:53</td><TD CLASS='Notes' >
1056
+ PD INCIDENT 2010257111 SHIPPED TO FIRE [00000155-140]</TD>
1057
+ </TR>
1058
+ <TR >
1059
+ <td class="Notes" valign="top">14:54:53</td><TD CLASS='Notes' >
1060
+ WITH NATURE IA-INJURY ACCIDENT [00000155-140]</TD>
1061
+ </TR>
1062
+ <TR >
1063
+ <td class="Notes" valign="top">14:55:00</td><TD CLASS='Notes' >
1064
+ Fire service incident 201024340 (00000194-160)</TD>
1065
+ </TR>
1066
+ <TR >
1067
+ <td class="Notes" valign="top">14:55:15</td><TD CLASS='Notes' >
1068
+ TAC CHANNEL BF1 ASSIGNED (00000194-160)</TD>
1069
+ </TR>
1070
+ <TR >
1071
+ <td class="Notes" valign="top">14:55:36</td><TD CLASS='Notes' >
1072
+ STATE AWARE [00000155-140]</TD>
1073
+ </TR>
1074
+ <TR >
1075
+ <td class="Notes" valign="top">14:56:54</td><TD CLASS='Notes' >
1076
+ Unit M111 Pressed Enroute</TD>
1077
+ </TR>
1078
+ <TR >
1079
+ <td class="Notes" valign="top">14:57:14</td><TD CLASS='Notes' >
1080
+ Truck DIV61 specialed themselves on the call</TD>
1081
+ </TR>
1082
+ <TR >
1083
+ <td class="Notes" valign="top">14:57:14</td><TD CLASS='Notes' >
1084
+ Unit DIV61 Pressed Enroute</TD>
1085
+ </TR>
1086
+ <TR >
1087
+ <td class="Notes" valign="top">14:59:23</td><TD CLASS='Notes' >
1088
+ *Police incident 2010257111 closed [00000095-130]</TD>
1089
+ </TR>
1090
+ <TR >
1091
+ <td class="Notes" valign="top">15:01:54</td><TD CLASS='Notes' >
1092
+ E1201 went in command 15:01:54 (00000192-100)</TD>
1093
+ </TR>
1094
+ <TR >
1095
+ <td class="Notes" valign="top">15:02:03</td><TD CLASS='Notes' >
1096
+ *WW CMD (00000192-100)</TD>
1097
+ </TR>
1098
+ <TR >
1099
+ <td class="Notes" valign="top">15:02:15</td><TD CLASS='Notes' >
1100
+ 2 VEHICLES UPRIGHT BLOCKING THE ROAD (00000192-100)</TD>
1101
+ </TR>
1102
+ <TR >
1103
+ <td class="Notes" valign="top">15:02:16</td><TD CLASS='Notes' >
1104
+ WAY (00000192-100)</TD>
1105
+ </TR>
1106
+ <TR >
1107
+ <td class="Notes" valign="top">15:04:58</td><TD CLASS='Notes' >
1108
+ C1218 went in command 15:04:58 (00000192-100)</TD>
1109
+ </TR>
1110
+ <TR >
1111
+ <td class="Notes" valign="top">15:05:15</td><TD CLASS='Notes' >
1112
+ C1218 ASSUMING CMD (00000192-100)</TD>
1113
+ </TR>
1114
+ <TR >
1115
+ <td class="Notes" valign="top">15:05:21</td><TD CLASS='Notes' >
1116
+ *HIGHWAY WW SHUT DOWN (00000192-100)</TD>
1117
+ </TR>
1118
+ <TR >
1119
+ <td class="Notes" valign="top">15:06:44</td><TD CLASS='Notes' >
1120
+ MARTI DONE (00000152-170)</TD>
1121
+ </TR>
1122
+ <TR >
1123
+ <td class="Notes" valign="top">15:07:51</td><TD CLASS='Notes' >
1124
+ Unit M111 Pressed On scene</TD>
1125
+ </TR>
1126
+ <TR >
1127
+ <td class="Notes" valign="top">15:07:58</td><TD CLASS='Notes' >
1128
+ Unit DIV61 Pressed On scene</TD>
1129
+ </TR>
1130
+ <TR >
1131
+ <td class="Notes" valign="top">15:09:53</td><TD CLASS='Notes' >
1132
+ Mark Inc Under Ctrl updated from: 12/29/10 (00000192-100)</TD>
1133
+ </TR>
1134
+ <TR >
1135
+ <td class="Notes" valign="top">15:09:54</td><TD CLASS='Notes' >
1136
+ 15:09:53 (00000192-100)</TD>
1137
+ </TR>
1138
+ <TR >
1139
+ <td class="Notes" valign="top">15:14:01</td><TD CLASS='Notes' >
1140
+ UNIT M111 Pressed Enr To Hosp: 001 UNIVERSITY HOSPITAL Pri: 3</TD>
1141
+ </TR>
1142
+ <TR >
1143
+ <td class="Notes" valign="top">15:14:01</td><TD CLASS='Notes' >
1144
+ Beginning mileage = 0</TD>
1145
+ </TR>
1146
+ <TR >
1147
+ <td class="Notes" valign="top">15:22:16</td><TD CLASS='Notes' >
1148
+ E1201 TIMER SET TO 20 MINUTE(S) (00000192-100)</TD>
1149
+ </TR>
1150
+ <TR >
1151
+ <td class="Notes" valign="top">15:29:24</td><TD CLASS='Notes' >
1152
+ C1218 WITH REPORT (00000192-100)</TD>
1153
+ </TR>
1154
+ <TR >
1155
+ <td class="Notes" valign="top">15:29:33</td><TD CLASS='Notes' >
1156
+ *WW NOW BACK OPEN (00000192-100)</TD>
1157
+ </TR>
1158
+ </table></td></tr></table></tr></table></html><script language="javascript" src="JSFuncs.js"></script>
1159
+
1160
+
1161
+ }
788
1162
  end
@@ -19,7 +19,7 @@ describe "Watchman::CallWatcher" do
19
19
  end
20
20
  end
21
21
 
22
- describe "when parsing a call" do
22
+ describe "when parsing an old call" do
23
23
  before(:each) do
24
24
  IstatusMocker.fake_call_path(Client.host,"201023687")
25
25
  end
@@ -66,4 +66,52 @@ describe "Watchman::CallWatcher" do
66
66
  call.time_of_first_unit_on_scene == Time.parse("12/19/2010 14:27:09")
67
67
  end
68
68
  end
69
+
70
+ describe "when parsing an active call" do
71
+ before(:each) do
72
+ IstatusMocker.fake_active_call_path(Client.host,"201024340")
73
+ end
74
+
75
+ let(:call){ CallWatcher.new.info_for("201024340") }
76
+
77
+ it "can find the address" do
78
+ call.address.should == "HIGHWAY WW E-BC/RANGELINE RD S"
79
+ end
80
+
81
+ it "can find the incident number" do
82
+ call.incident_number.should == "201024340"
83
+ end
84
+
85
+ it "can find the cross-streets" do
86
+ call.cross_streets.should == ["RANGELINE RD S","BLACKTHORNE LN S"]
87
+ end
88
+
89
+ it "can extract the response level" do
90
+ call.response_level.should == "Bravo"
91
+ end
92
+
93
+ it "can harvest the priority level" do
94
+ call.priority.should == 1
95
+ end
96
+
97
+ it "extracts the dispatch_code" do
98
+ call.dispatch_code.should == "IA"
99
+ end
100
+
101
+ it "can get the grid" do
102
+ call.grid.should == "30194B"
103
+ end
104
+
105
+ it "can get the fire_area" do
106
+ call.fire_area.should == "12-15C"
107
+ end
108
+
109
+ it "gets the time of alarm" do
110
+ call.time_of_alarm.should == Time.parse("12/29/2010 14:54:53")
111
+ end
112
+
113
+ it "gets the on-scene time" do
114
+ call.time_of_first_unit_on_scene == Time.parse("12/29/2010 15:04:18")
115
+ end
116
+ end
69
117
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: watchman
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 5
10
- version: 0.0.5
9
+ - 6
10
+ version: 0.0.6
11
11
  platform: ruby
12
12
  authors:
13
13
  - Ethan Vizitei
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-12-25 00:00:00 -06:00
18
+ date: 2010-12-29 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency