amtrak 2.0.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +5 -0
  3. data/README.markdown +184 -2
  4. data/amtrak.gemspec +3 -4
  5. data/lib/amtrak.rb +2 -3
  6. data/lib/amtrak/train_fetcher.rb +25 -28
  7. data/lib/amtrak/train_parser.rb +30 -86
  8. data/lib/amtrak/version.rb +1 -1
  9. data/spec/amtrak/train_fetcher_spec.rb +26 -22
  10. data/spec/amtrak/train_parser_spec.rb +8 -64
  11. data/spec/amtrak_spec.rb +1 -2
  12. data/spec/fixtures/json/_get.json +223 -28
  13. data/spec/fixtures/json/_parse.json +211 -42
  14. data/spec/fixtures/json/pvd_to_bby.json +1131 -0
  15. data/spec/fixtures/vcr/Amtrak/_get/returns_a_list_of_train_times.yml +1160 -1250
  16. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/does_the_same_as_get.yml +1159 -1628
  17. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_invalid_train_stations/does_not_include_various_keys_and_includes_an_error.yml +66 -0
  18. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_keys.yml +1181 -0
  19. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_an_invalid_date_and_valid_train_stations/does_not_include_various_keys_and_includes_an_error.yml +66 -0
  20. metadata +22 -54
  21. data/lib/amtrak/train_fetcher/main_page.rb +0 -83
  22. data/lib/amtrak/train_fetcher/train_page.rb +0 -52
  23. data/spec/amtrak/train_fetcher/main_page_spec.rb +0 -53
  24. data/spec/amtrak/train_fetcher/train_page_spec.rb +0 -18
  25. data/spec/fixtures/html/pvd_to_bby.html +0 -2596
  26. data/spec/fixtures/html/pvd_to_bby_cancelled.html +0 -2671
  27. data/spec/fixtures/json/_parse_cancelled.json +0 -132
  28. 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 +0 -1073
  29. data/spec/fixtures/vcr/Amtrak_TrainFetcher/_get/given_a_valid_date_and_train_stations/includes_various_classes.yml +0 -1650
  30. 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 +0 -1071
  31. data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_session_id/pulls_the_session_id_from_the_cookies.yml +0 -1071
  32. data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_more_than_one_page_exists_on_the_website/returns_2.yml +0 -1263
  33. data/spec/fixtures/vcr/Amtrak_TrainFetcher_MainPage/_total_pages/when_only_one_page_exists_on_the_website/returns_1.yml +0 -1154
  34. data/spec/fixtures/vcr/Amtrak_TrainFetcher_TrainPage/_get/when_it_works/includes_various_classes.yml +0 -198
@@ -1,198 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://tickets.amtrak.com/itd/amtrak/TrainStatusRequest?_trainstatuspage=1
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Cookie:
11
- - JSESSIONID=0000faPsyYZwp2n8Wb_4BDhukyg:187j59p07
12
- response:
13
- status:
14
- code: 200
15
- message:
16
- headers:
17
- Content-Length:
18
- - '12911'
19
- Content-Type:
20
- - text/html;charset=UTF-8
21
- Set-Cookie:
22
- - _op_aixPageId=a2_daea0c65-28d7-4592-a89c-0775764abc46; Path=/, TS3f5eae=e40a68dc3507c8b74d0bc282fcc76cc4351b05b690745ca15484ab855f2a2d3e5c4d6bec;
23
- Path=/
24
- X-powered-by:
25
- - Servlet/3.0
26
- Content-Language:
27
- - en-US
28
- X-frame-options:
29
- - SAMEORIGIN
30
- Expires:
31
- - Tue, 01 Jul 2003, 00:00:00 GMT
32
- X-opnet-transaction-trace:
33
- - a2_daea0c65-28d7-4592-a89c-0775764abc46
34
- Date:
35
- - Sun, 07 Dec 2014 19:33:27 GMT
36
- Connection:
37
- - keep-alive
38
- body:
39
- encoding: UTF-8
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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;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"
196
- http_version:
197
- recorded_at: Sun, 07 Dec 2014 19:33:27 GMT
198
- recorded_with: VCR 2.9.3