amtrak 0.0.1 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/amtrak/train_fetcher/main_page.rb +2 -4
- data/lib/amtrak/train_parser.rb +31 -31
- data/lib/amtrak/version.rb +1 -1
- data/spec/amtrak/train_fetcher/main_page_spec.rb +4 -4
- data/spec/amtrak/train_fetcher/train_page_spec.rb +5 -5
- data/spec/amtrak/train_fetcher_spec.rb +16 -16
- data/spec/amtrak/train_parser_spec.rb +20 -177
- data/spec/amtrak_spec.rb +5 -228
- data/spec/fixtures/html/pvd_to_bby.html +2803 -2392
- data/spec/fixtures/json/_get.json +1 -0
- data/spec/fixtures/json/_parse.json +1 -0
- data/spec/fixtures/vcr/Amtrak/_get/returns_a_list_of_train_times.yml +599 -690
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/does_the_same_as_get.yml +455 -718
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_invalid_train_stations/does_not_include_various_classes_and_includes_an_error.yml +129 -115
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_classes.yml +449 -717
- data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_an_invalid_date_and_valid_train_stations/does_not_include_various_classes_and_includes_an_error.yml +127 -109
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_session_id/pulls_the_session_id_from_the_cookies.yml +295 -366
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_2.yml +295 -358
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_only_one_page_exists_on_the_website/returns_1.yml +289 -363
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml +164 -213
- metadata +6 -4
- data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_1.yml +0 -1076
data/spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml
CHANGED
@@ -8,18 +8,19 @@ http_interactions:
|
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
Cookie:
|
11
|
-
- JSESSIONID=
|
11
|
+
- JSESSIONID=0000faPsyYZwp2n8Wb_4BDhukyg:187j59p07
|
12
12
|
response:
|
13
13
|
status:
|
14
14
|
code: 200
|
15
15
|
message:
|
16
16
|
headers:
|
17
17
|
Content-Length:
|
18
|
-
- '
|
18
|
+
- '12911'
|
19
19
|
Content-Type:
|
20
20
|
- text/html;charset=UTF-8
|
21
21
|
Set-Cookie:
|
22
|
-
-
|
22
|
+
- _op_aixPageId=a2_daea0c65-28d7-4592-a89c-0775764abc46; Path=/, TS3f5eae=e40a68dc3507c8b74d0bc282fcc76cc4351b05b690745ca15484ab855f2a2d3e5c4d6bec;
|
23
|
+
Path=/
|
23
24
|
X-powered-by:
|
24
25
|
- Servlet/3.0
|
25
26
|
Content-Language:
|
@@ -28,220 +29,170 @@ http_interactions:
|
|
28
29
|
- SAMEORIGIN
|
29
30
|
Expires:
|
30
31
|
- Tue, 01 Jul 2003, 00:00:00 GMT
|
32
|
+
X-opnet-transaction-trace:
|
33
|
+
- a2_daea0c65-28d7-4592-a89c-0775764abc46
|
31
34
|
Date:
|
32
|
-
-
|
35
|
+
- Sun, 07 Dec 2014 19:33:27 GMT
|
33
36
|
Connection:
|
34
37
|
- keep-alive
|
35
38
|
body:
|
36
39
|
encoding: UTF-8
|
37
|
-
string: "\r\n\r\n\r\n<
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
class=\"
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
class=\"
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
class=\"
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
class=\"
|
62
|
-
|
63
|
-
|
64
|
-
class=\"
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
class=\"
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
class=\"
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
class=\"
|
85
|
-
|
86
|
-
class=\"
|
87
|
-
class=\"
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
class=\"
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
class=\"
|
108
|
-
|
109
|
-
class=\"
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
class=\"
|
114
|
-
|
115
|
-
|
116
|
-
class=\"
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
class=\"
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
class=\"
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
class=\"
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
class=\"
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
class=\"
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
class=\"
|
152
|
-
|
153
|
-
class=\"
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
class=\"
|
159
|
-
class=\"
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
class=\"
|
167
|
-
|
168
|
-
class=\"
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
class=\"
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
class=\"
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
class=\"
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
class=\"
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
class=\"
|
192
|
-
|
193
|
-
-->Boston, MA -<br> Back Bay (<a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&code=BBY','station','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\">BBY</a>)<!--
|
194
|
-
mp_trans_disable_end -->\r\n</td>\r\n<td class=\"scheduled\">\r\n\r\n\r\n<div
|
195
|
-
class=\"time\">8:38 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
196
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n\r\n</td>\r\n<td class=\"act_est\">\r\n\r\n\r\n\r\n<div
|
197
|
-
class=\"time\">8:34 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
198
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n<I>(estimated)</I>\r\n\r\n\r\n\r\n</td>\r\n<td
|
199
|
-
class=\"lightbluetrainstatusbackground\">\r\n\r\n\r\n\r\nEstimated Arrival
|
200
|
-
Time: 4 minutes early.<br/>\r\n\r\n\r\n\r\n\r\n\r\n</td>\r\n</tr>\r\n\r\n</tbody>\r\n\r\n\r\n<tr
|
201
|
-
class=\"spacer\"><td colspan=\"6\"> </td></tr>\r\n\r\n\r\n\r\n<tbody>\r\n\r\n\r\n<tr
|
202
|
-
class=\"status_result departs greybackground\">\r\n\r\n<th class=\"service\"
|
203
|
-
scope=\"rowgroup\" rowspan=\"2\">\r\n<div class=\"route_num\">94</div>\r\n<div
|
204
|
-
class=\"route_name\">Northeast Regional</div>\r\n\r\n</th>\r\n\r\n\r\n<th
|
205
|
-
class=\"vector\" scope=\"row\">\r\nFrom\r\n</th>\r\n<td class=\"city\">\r\n<!--
|
206
|
-
mp_trans_disable_start -->Providence, RI (<a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&code=PVD','station','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\">PVD</a>)<!--
|
207
|
-
mp_trans_disable_end -->\r\n</td>\r\n<td class=\"scheduled\">\r\n\r\n\r\n<div
|
208
|
-
class=\"time\">9:16 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
209
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n\r\n\r\n</td>\r\n<td class=\"act_est\">\r\n\r\n\r\n\r\n<div
|
210
|
-
class=\"time\">9:17 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
211
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n<I>(estimated)</I>\r\n\r\n\r\n\r\n</td>\r\n<td
|
212
|
-
class=\"darkbluetrainstatusbackground\">\r\n\r\n\r\n\r\n\r\nEstimated Departure
|
213
|
-
Time: 1 minute late.<br/>\r\n\r\n\r\n\r\n\r\n</td>\r\n</tr>\r\n\r\n\r\n<tr
|
214
|
-
class=\"status_result arrives greybackground\">\r\n\r\n<th class=\"vector\"
|
215
|
-
scope=\"row\">\r\nTo\r\n</th>\r\n<td class=\"city\">\r\n<!-- mp_trans_disable_start
|
216
|
-
-->Boston, MA -<br> Back Bay (<a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&code=BBY','station','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\">BBY</a>)<!--
|
217
|
-
mp_trans_disable_end -->\r\n</td>\r\n<td class=\"scheduled\">\r\n\r\n\r\n<div
|
218
|
-
class=\"time\">10:02 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
219
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n\r\n</td>\r\n<td class=\"act_est\">\r\n\r\n\r\n\r\n<div
|
220
|
-
class=\"time\">9:46 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
221
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n<I>(estimated)</I>\r\n\r\n\r\n\r\n</td>\r\n<td
|
222
|
-
class=\"darkbluetrainstatusbackground\">\r\n\r\n\r\n\r\nEstimated Arrival
|
223
|
-
Time: 16 minutes early.<br/>\r\n\r\n\r\n\r\n\r\n\r\n</td>\r\n</tr>\r\n\r\n</tbody>\r\n\r\n\r\n<tr
|
224
|
-
class=\"spacer\"><td colspan=\"6\"> </td></tr>\r\n\r\n\r\n\r\n<tbody>\r\n\r\n\r\n<tr
|
225
|
-
class=\"status_result departs whitebackground\">\r\n\r\n<th class=\"service\"
|
226
|
-
scope=\"rowgroup\" rowspan=\"2\">\r\n<div class=\"route_num\">2172</div>\r\n<div
|
227
|
-
class=\"route_name\">Acela Express</div>\r\n\r\n</th>\r\n\r\n\r\n<th class=\"vector\"
|
228
|
-
scope=\"row\">\r\nFrom\r\n</th>\r\n<td class=\"city\">\r\n<!-- mp_trans_disable_start
|
229
|
-
-->Providence, RI (<a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&code=PVD','station','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\">PVD</a>)<!--
|
230
|
-
mp_trans_disable_end -->\r\n</td>\r\n<td class=\"scheduled\">\r\n\r\n\r\n<div
|
231
|
-
class=\"time\">9:54 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
232
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n\r\n\r\n</td>\r\n<td class=\"act_est\">\r\n\r\n\r\n\r\n \r\n\r\n</td>\r\n<td
|
233
|
-
class=\"lightbluetrainstatusbackground\">\r\n\r\n\r\n\r\n\r\n\r\n\r\nThe scheduled
|
234
|
-
departure time is 9:54 pm. Presently, no further information is available.
|
235
|
-
Please check back later for updated information.<br/>\r\n\r\n\r\n</td>\r\n</tr>\r\n\r\n\r\n<tr
|
236
|
-
class=\"status_result arrives whitebackground\">\r\n\r\n<th class=\"vector\"
|
237
|
-
scope=\"row\">\r\nTo\r\n</th>\r\n<td class=\"city\">\r\n<!-- mp_trans_disable_start
|
238
|
-
-->Boston, MA -<br> Back Bay (<a href=\"javascript:var child=window.open('http://www.amtrak.com/servlet/Satellite?SnippetName=IBLegacy&pagename=am/AM_Snippet_C/SnippetWrapper&code=BBY','station','directories=0,dependent=1,menubar=0,top=20,left=20,width=680,height=600,scrollbars=1');child.focus();\">BBY</a>)<!--
|
239
|
-
mp_trans_disable_end -->\r\n</td>\r\n<td class=\"scheduled\">\r\n\r\n\r\n<div
|
240
|
-
class=\"time\">10:35 pm</div>\r\n\r\n<div class=\"date\" style=\"white-space:
|
241
|
-
nowrap;\">Fri Nov 28, 2014</div>\r\n\r\n\r\n</td>\r\n<td class=\"act_est\">\r\n\r\n\r\n\r\n \r\n\r\n</td>\r\n<td
|
242
|
-
class=\"lightbluetrainstatusbackground\">\r\n\r\n\r\n\r\n\r\n\r\n\r\nThe scheduled
|
243
|
-
arrival time is 10:35 pm. Presently, no further information is available.
|
244
|
-
Please check back later for updated information.<br/>\r\n\r\n\r\n</td>\r\n</tr>\r\n\r\n</tbody>\r\n\r\n\r\n\r\n</table>\r\n\r\n"
|
40
|
+
string: "\r\n\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair_heading\">\r\n\r\n<div
|
41
|
+
id=\"resp_by_citypair_heading_left\">\r\n<div>PVD</div>\r\n<div id=\"resp_by_citypair_heading_line2\">Providence,
|
42
|
+
RI</div>\r\n</div>\r\n<div id=\"resp_by_citypair_heading_middle\">\r\n<img
|
43
|
+
alt=\"\" src=\"/images/en/station-to-station-arrow.png\" />\r\n</div>\r\n<div
|
44
|
+
id=\"resp_by_citypair_heading_right\">\r\n<div>BBY</div>\r\n<div id=\"resp_by_citypair_heading_line2\">Boston,
|
45
|
+
MA</div>\r\n</div>\r\n\r\n</div>\r\n<div id=\"train_status_spacing1\"></div>\r\n\r\n\r\n<div
|
46
|
+
id=\"train_status_resp_by_citypair\">\r\n<div id=\"resp_by_citypair_subheading\">\r\n<div
|
47
|
+
id=\"resp_by_citypair_subheading_trainname\">\r\n178 Northeast Regional\r\n</div>\r\n</div>\r\n\r\n<div
|
48
|
+
id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
|
49
|
+
class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div class=\"arriveDepartDelayedMsg\">
|
50
|
+
Departed</div>\r\n<div class=\"delayedMsg\">4 minutes late</div>\r\n\r\n<div
|
51
|
+
class=\"arriveDepartTime\">11:41 pm</div>\r\n<div class=\"arriveDepartDate\">Fri,
|
52
|
+
Dec 5 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
53
|
+
Departure 11:37 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
54
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-arrived.png\"
|
55
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
56
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
57
|
+
class=\"arriveDepartOntimeMsg\"> Arrived</div>\r\n<div class=\"ontimeMsg\">9
|
58
|
+
minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">12:15 am</div>\r\n<div
|
59
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
60
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 12:24 am\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
61
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
62
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n66 Northeast
|
63
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
64
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
65
|
+
class=\"arriveDepartOntimeMsg\"> Departed</div>\r\n<div class=\"ontimeMsg\">On
|
66
|
+
time</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">6:56 am</div>\r\n<div
|
67
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
68
|
+
Departure 6:56 am\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
69
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
70
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
71
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
72
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">2
|
73
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">7:54 am</div>\r\n<div
|
74
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
75
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 7:53 am\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
76
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
77
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n150 Northeast
|
78
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
79
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
80
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">10
|
81
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">10:35 am</div>\r\n<div
|
82
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
83
|
+
Departure 10:25 am\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
84
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
85
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
86
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
87
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">4
|
88
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">11:13 am</div>\r\n<div
|
89
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
90
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 11:09 am\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
91
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
92
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n2290 Acela
|
93
|
+
Express\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
94
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
95
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">13
|
96
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">11:10 am</div>\r\n<div
|
97
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
98
|
+
Departure 10:57 am\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
99
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
100
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
101
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
102
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">10
|
103
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">11:49 am</div>\r\n<div
|
104
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
105
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 11:39 am\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
106
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
107
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n160 Northeast
|
108
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
109
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
110
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">10
|
111
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">12:35 pm</div>\r\n<div
|
112
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
113
|
+
Departure 12:25 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
114
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
115
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
116
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
117
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">2
|
118
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">1:10 pm</div>\r\n<div
|
119
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
120
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 1:10 pm\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
121
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
122
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n162 Northeast
|
123
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
124
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
125
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">43
|
126
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">2:11 pm</div>\r\n<div
|
127
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
128
|
+
Departure 1:28 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
129
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
130
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
131
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
132
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">37
|
133
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">2:48 pm</div>\r\n<div
|
134
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
135
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 2:13 pm\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
136
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
137
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n2250 Acela
|
138
|
+
Express\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
139
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
140
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">22
|
141
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">3:20 pm</div>\r\n<div
|
142
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
143
|
+
Departure 2:58 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
144
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
145
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
146
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
147
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">15
|
148
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">3:56 pm</div>\r\n<div
|
149
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
150
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 3:41 pm\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
151
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
152
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n164 Northeast
|
153
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
154
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
155
|
+
class=\"statusUnavailableMsg\">Status currently unavailable</div>\r\n<div
|
156
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
157
|
+
Departure 4:30 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
158
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img
|
159
|
+
src=\"/images/en/no-status-available-origin.png\" />\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div
|
160
|
+
id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div class=\"statusDetailsSection\">\r\n<div
|
161
|
+
class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
162
|
+
class=\"statusUnavailableMsg\">Status currently unavailable</div>\r\n<div
|
163
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
164
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 5:13 pm\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
165
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
166
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n82 Northeast
|
167
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
168
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
169
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">2
|
170
|
+
minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">5:28 pm</div>\r\n<div
|
171
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
172
|
+
Departure 5:26 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
173
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/ontime-arrived.png\"
|
174
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
175
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
176
|
+
class=\"arriveDepartOntimeMsg\"> Arrived</div>\r\n<div class=\"ontimeMsg\">4
|
177
|
+
minutes early</div>\r\n\r\n\r\n<div class=\"arriveDepartTime\">6:04 pm</div>\r\n<div
|
178
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
179
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 6:10 pm\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
180
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n<div id=\"train_status_resp_by_citypair\">\r\n<div
|
181
|
+
id=\"resp_by_citypair_subheading\">\r\n<div id=\"resp_by_citypair_subheading_trainname\">\r\n88 Northeast
|
182
|
+
Regional\r\n</div>\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_depart_status_details\">\r\n\r\n\r\n<div
|
183
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">PVD</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
184
|
+
class=\"arriveDepartDelayedMsg\"> Departed</div>\r\n<div class=\"delayedMsg\">
|
185
|
+
23 minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">6:50 pm</div>\r\n<div
|
186
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n<div class=\"scheduledArriveDepartMsg\">\r\nScheduled
|
187
|
+
Departure 6:27 pm\r\n</div>\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
188
|
+
id=\"resp_by_citypair_arrow_img\">\r\n\r\n\r\n\r\n\r\n\r\n\r\n<img src=\"/images/en/delayed-arrived.png\"
|
189
|
+
/>\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<div id=\"resp_by_citypair_arrive_status_details\">\r\n\r\n\r\n<div
|
190
|
+
class=\"statusDetailsSection\">\r\n<div class=\"cityName\">BBY</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
191
|
+
class=\"arriveDepartDelayedMsg\"> Arrived</div>\r\n<div class=\"delayedMsg\">
|
192
|
+
14 minutes late</div>\r\n\r\n<div class=\"arriveDepartTime\">7:28 pm</div>\r\n<div
|
193
|
+
class=\"arriveDepartDate\">Sat, Dec 6 2014</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div
|
194
|
+
class=\"scheduledArriveDepartMsg\">\r\nScheduled Arrival 7:14 pm\r\n</div>\r\n\r\n\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n</div>\r\n\r\n<div
|
195
|
+
id=\"train_status_spacing\"></div>\r\n\r\n\r\n\r\n"
|
245
196
|
http_version:
|
246
|
-
recorded_at:
|
197
|
+
recorded_at: Sun, 07 Dec 2014 19:33:27 GMT
|
247
198
|
recorded_with: VCR 2.9.3
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: amtrak
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Todd Lunter
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: excon
|
@@ -148,13 +148,14 @@ files:
|
|
148
148
|
- spec/amtrak/train_parser_spec.rb
|
149
149
|
- spec/amtrak_spec.rb
|
150
150
|
- spec/fixtures/html/pvd_to_bby.html
|
151
|
+
- spec/fixtures/json/_get.json
|
152
|
+
- spec/fixtures/json/_parse.json
|
151
153
|
- spec/fixtures/vcr/Amtrak/_get/returns_a_list_of_train_times.yml
|
152
154
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/does_the_same_as_get.yml
|
153
155
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_invalid_train_stations/does_not_include_various_classes_and_includes_an_error.yml
|
154
156
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_classes.yml
|
155
157
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_an_invalid_date_and_valid_train_stations/does_not_include_various_classes_and_includes_an_error.yml
|
156
158
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_session_id/pulls_the_session_id_from_the_cookies.yml
|
157
|
-
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_1.yml
|
158
159
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_2.yml
|
159
160
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_only_one_page_exists_on_the_website/returns_1.yml
|
160
161
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml
|
@@ -191,13 +192,14 @@ test_files:
|
|
191
192
|
- spec/amtrak/train_parser_spec.rb
|
192
193
|
- spec/amtrak_spec.rb
|
193
194
|
- spec/fixtures/html/pvd_to_bby.html
|
195
|
+
- spec/fixtures/json/_get.json
|
196
|
+
- spec/fixtures/json/_parse.json
|
194
197
|
- spec/fixtures/vcr/Amtrak/_get/returns_a_list_of_train_times.yml
|
195
198
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/does_the_same_as_get.yml
|
196
199
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_invalid_train_stations/does_not_include_various_classes_and_includes_an_error.yml
|
197
200
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_classes.yml
|
198
201
|
- spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_an_invalid_date_and_valid_train_stations/does_not_include_various_classes_and_includes_an_error.yml
|
199
202
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_session_id/pulls_the_session_id_from_the_cookies.yml
|
200
|
-
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_1.yml
|
201
203
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_2.yml
|
202
204
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_only_one_page_exists_on_the_website/returns_1.yml
|
203
205
|
- spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml
|