traffic 0.0.2 → 0.0.4
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.
- data/README.md +1 -1
- data/lib/traffic/providers/file_index.rb +10 -6
- data/lib/traffic/version.rb +1 -1
- data/spec/fixtures/anwb/traffic.html +162 -14
- data/spec/fixtures/file_index/rss.xml +29 -22
- data/spec/fixtures/file_index/weird_description.xml +3 -0
- data/spec/providers/anwb_spec.rb +10 -10
- data/spec/providers/file_index_spec.rb +17 -10
- data/traffic.gemspec +2 -0
- metadata +33 -20
data/README.md
CHANGED
|
@@ -33,7 +33,7 @@ Usage Examples
|
|
|
33
33
|
|
|
34
34
|
Providers
|
|
35
35
|
---------
|
|
36
|
-
|
|
36
|
+
Dutch traffic information from [fileindex.nl](http://www.fileindex.nl/) and [ANWB](http://www.anwb.nl)
|
|
37
37
|
|
|
38
38
|
Testing
|
|
39
39
|
-------
|
|
@@ -31,12 +31,16 @@ module Traffic
|
|
|
31
31
|
item.length = data[4].to_f
|
|
32
32
|
|
|
33
33
|
data = entry.summary.match /\b(.+)\b tussen \b(.+)\b( door (.*))? HMP([\d\.]+) .+ HMP([\d\.]+)\s*(.*)/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
34
|
+
if data.nil?
|
|
35
|
+
item.description = entry.summary
|
|
36
|
+
else
|
|
37
|
+
item.description = data[1]
|
|
38
|
+
item.location = data[2]
|
|
39
|
+
item.cause = data[4]
|
|
40
|
+
item.from_location = data[5].to_f
|
|
41
|
+
item.to_location = data[6].to_f
|
|
42
|
+
item.status = data[7]
|
|
43
|
+
end
|
|
40
44
|
|
|
41
45
|
yield item
|
|
42
46
|
end
|
data/lib/traffic/version.rb
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
|
|
1
2
|
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
|
|
2
3
|
<html>
|
|
3
4
|
<head>
|
|
@@ -9,29 +10,176 @@
|
|
|
9
10
|
<body>
|
|
10
11
|
<a name="top"></a>
|
|
11
12
|
<div id='count'>
|
|
12
|
-
Totaal aantal meldingen:
|
|
13
|
-
Totale lengte:
|
|
14
|
-
Laatste update:
|
|
13
|
+
Totaal aantal meldingen: 24<br />
|
|
14
|
+
Totale lengte: 71 km<br />
|
|
15
|
+
Laatste update: 17:50 uur
|
|
15
16
|
</div>
|
|
16
|
-
<div id="anchors"><a href="#A20" class="roadnumber_a">A20</a></div><a name="
|
|
17
|
-
<div id='
|
|
18
|
-
<span class='roadnumber_a'>
|
|
19
|
-
|
|
20
|
-
<p class='desc_long'>
|
|
17
|
+
<div id="anchors"><a href="#A1" class="roadnumber_a">A1</a> <a href="#A2" class="roadnumber_a">A2</a> <a href="#A4" class="roadnumber_a">A4</a> <a href="#A7" class="roadnumber_a">A7</a> <a href="#A10" class="roadnumber_a">A10</a> <a href="#A12" class="roadnumber_a">A12</a> <a href="#A15" class="roadnumber_a">A15</a> <a href="#A16" class="roadnumber_a">A16</a> <a href="#A20" class="roadnumber_a">A20</a> <a href="#A27" class="roadnumber_a">A27</a> <a href="#A28" class="roadnumber_a">A28</a> <a href="#A76" class="roadnumber_a">A76</a></div><a name="A1"></a> <a href='#top'>
|
|
18
|
+
<div id='msg_1542110' class='message'>
|
|
19
|
+
<span class='roadnumber_a'>A1</span>
|
|
20
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Amersfoort - Amsterdam</strong>
|
|
21
|
+
<p class='desc_long'>A1 Amersfoort richting Amsterdam tussen Amersfoort-Noord en Eembrugge 2 km, Filelengte neemt toe<br /><span class="hmp">33.8</span><span class="hmp">42.4</span></p>
|
|
22
|
+
</div>
|
|
23
|
+
</a>
|
|
24
|
+
<a name="A2"></a> <a href='#top'>
|
|
25
|
+
<div id='msg_1542078' class='message'>
|
|
26
|
+
<span class='roadnumber_a'>A2</span>
|
|
27
|
+
<span class='km'>3 km</span> <strong class='desc_short'>Eindhoven - Maastricht</strong>
|
|
28
|
+
<p class='desc_long'>A2 Eindhoven richting Maastricht tussen Urmond en knp. Kerensheide 3 km<br /><span class="hmp">242.5</span><span class="hmp">238.3</span></p>
|
|
29
|
+
</div>
|
|
30
|
+
</a>
|
|
31
|
+
<a href='#top'>
|
|
32
|
+
<div id='msg_1542087' class='message'>
|
|
33
|
+
<span class='roadnumber_a'>A2</span>
|
|
34
|
+
<span class='km'>5 km</span> <strong class='desc_short'>Maastricht - Eindhoven</strong>
|
|
35
|
+
<p class='desc_long'>A2 Maastricht richting Eindhoven tussen knp. Kruisdonk en knp. Kerensheide 5 km, Filelengte neemt toe<br /><span class="hmp">240.3</span><span class="hmp">253.8</span></p>
|
|
36
|
+
</div>
|
|
37
|
+
</a>
|
|
38
|
+
<a name="A4"></a> <a href='#top'>
|
|
39
|
+
<div id='msg_1542100' class='message'>
|
|
40
|
+
<span class='roadnumber_a'>A4</span>
|
|
41
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Hoogvliet - Vlaardingen</strong>
|
|
42
|
+
<p class='desc_long'>A4 Hoogvliet richting Vlaardingen tussen knp. Benelux en knp. Kethelplein 2 km, Filelengte neemt toe<br /><span class="hmp">69.5</span><span class="hmp">77.3</span></p>
|
|
43
|
+
</div>
|
|
44
|
+
</a>
|
|
45
|
+
<a href='#top'>
|
|
46
|
+
<div id='msg_1542108' class='message'>
|
|
47
|
+
<span class='roadnumber_a'>A4</span>
|
|
48
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Amsterdam - Delft</strong>
|
|
49
|
+
<p class='desc_long'>A4 Amsterdam richting Delft tussen Roelofarendsveen en Brug over de Oude Rijn 2 km, Filelengte neemt toe<br /><span class="hmp">32.1</span><span class="hmp">22.8</span></p>
|
|
21
50
|
</div>
|
|
22
51
|
</a>
|
|
23
52
|
<a href='#top'>
|
|
24
|
-
<div id='
|
|
53
|
+
<div id='msg_1542105' class='message'>
|
|
54
|
+
<span class='roadnumber_a'>A4</span>
|
|
55
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Delft - Amsterdam</strong>
|
|
56
|
+
<p class='desc_long'>A4 Delft richting Amsterdam tussen Leidschendam en Zoeterwoude-Dorp 2 km <br /><span class="hmp">34.6</span><span class="hmp">44.6</span></p>
|
|
57
|
+
</div>
|
|
58
|
+
</a>
|
|
59
|
+
<a name="A7"></a> <a href='#top'>
|
|
60
|
+
<div id='msg_1542050' class='message roadworks'>
|
|
61
|
+
<span class='roadnumber_a'>A7</span>
|
|
62
|
+
<strong class='desc_short'>Hoorn - Zaandam</strong>
|
|
63
|
+
<p class='desc_long'>A7 Hoorn richting Zaandam bij afrit Zaandijk De afrit is dicht, Olie op het wegdek<br /><span class="hmp">6.9</span><span class="hmp">7.7</span></p>
|
|
64
|
+
</div>
|
|
65
|
+
</a>
|
|
66
|
+
<a href='#top'>
|
|
67
|
+
<div id='msg_1542052' class='message'>
|
|
68
|
+
<span class='roadnumber_a'>A7</span>
|
|
69
|
+
<span class='km'>6 km</span> <strong class='desc_short'>Hoorn - Zaandam</strong>
|
|
70
|
+
<p class='desc_long'>A7 Hoorn richting Zaandam tussen Purmerend-Zuid en afrit Zaandijk 6 km, Olie op het wegdek<br /><span class="hmp">6.9</span><span class="hmp">14.2</span></p>
|
|
71
|
+
</div>
|
|
72
|
+
</a>
|
|
73
|
+
<a href='#top'>
|
|
74
|
+
<div id='msg_1542039' class='message roadworks'>
|
|
75
|
+
<span class='roadnumber_a'>A7</span>
|
|
76
|
+
<strong class='desc_short'>Hoorn - Zaandam</strong>
|
|
77
|
+
<p class='desc_long'>A7 Hoorn richting Zaandam tussen afrit Wijdewormer en afrit Zaandijk is de rechterrijstrook dicht. Olie op het wegdek<br /><span class="hmp">6.9</span><span class="hmp">11.2</span></p>
|
|
78
|
+
</div>
|
|
79
|
+
</a>
|
|
80
|
+
<a name="A10"></a> <a href='#top'>
|
|
81
|
+
<div id='msg_1542044' class='message'>
|
|
82
|
+
<span class='roadnumber_a'>A10</span>
|
|
83
|
+
<span class='km'>3 km</span> <strong class='desc_short'>De Nieuwe Meer - Coenplein</strong>
|
|
84
|
+
<p class='desc_long'>A10 Ring Amsterdam: De Nieuwe Meer richting Coenplein tussen Geuzenveld en knp. Coenplein 3 km <br /><span class="hmp">32.6</span><span class="hmp">24.4</span></p>
|
|
85
|
+
</div>
|
|
86
|
+
</a>
|
|
87
|
+
<a name="A12"></a> <a href='#top'>
|
|
88
|
+
<div id='msg_1542088' class='message'>
|
|
89
|
+
<span class='roadnumber_a'>A12</span>
|
|
90
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Den Haag - Utrecht</strong>
|
|
91
|
+
<p class='desc_long'>A12 Den Haag richting Utrecht tussen Den Haag-Malieveld en Voorburg 2 km, Filelengte neemt af<br /><span class="hmp">5.2</span><span class="hmp">1.5</span></p>
|
|
92
|
+
</div>
|
|
93
|
+
</a>
|
|
94
|
+
<a name="A15"></a> <a href='#top'>
|
|
95
|
+
<div id='msg_1542096' class='message'>
|
|
96
|
+
<span class='roadnumber_a'>A15</span>
|
|
97
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Gorinchem - Rotterdam</strong>
|
|
98
|
+
<p class='desc_long'>A15 Gorinchem richting Rotterdam tussen Sliedrecht-Oost en Papendrecht 2 km <br /><span class="hmp">77.9</span><span class="hmp">85.9</span></p>
|
|
99
|
+
</div>
|
|
100
|
+
</a>
|
|
101
|
+
<a href='#top'>
|
|
102
|
+
<div id='msg_1542077' class='message'>
|
|
103
|
+
<span class='roadnumber_a'>A15</span>
|
|
104
|
+
<span class='km'>3 km</span> <strong class='desc_short'>Rotterdam - Europoort</strong>
|
|
105
|
+
<p class='desc_long'>A15 Rotterdam richting Europoort tussen Hoogvliet en Spijkenisse 3 km<br /><span class="hmp">44.1</span><span class="hmp">50.8</span></p>
|
|
106
|
+
</div>
|
|
107
|
+
</a>
|
|
108
|
+
<a href='#top'>
|
|
109
|
+
<div id='msg_1542075' class='message'>
|
|
110
|
+
<span class='roadnumber_a'>A15</span>
|
|
111
|
+
<span class='km'>4 km</span> <strong class='desc_short'>Europoort - Rotterdam</strong>
|
|
112
|
+
<p class='desc_long'>A15 Europoort richting Rotterdam tussen knp. Benelux en knp.Vaanplein 4 km, Filelengte neemt toe<br /><span class="hmp">60.9</span><span class="hmp">49.8</span></p>
|
|
113
|
+
</div>
|
|
114
|
+
</a>
|
|
115
|
+
<a name="A16"></a> <a href='#top'>
|
|
116
|
+
<div id='msg_1542069' class='message'>
|
|
117
|
+
<span class='roadnumber_a'>A16</span>
|
|
118
|
+
<span class='km'>13 km</span> <strong class='desc_short'>Breda - Rotterdam</strong>
|
|
119
|
+
<p class='desc_long'>A16 Breda richting Rotterdam tussen knp. Ridderkerk en knp. Terbregseplein 13 km, Filelengte neemt toe<br /><span class="hmp">14.9</span><span class="hmp">26.7</span></p>
|
|
120
|
+
</div>
|
|
121
|
+
</a>
|
|
122
|
+
<a name="A20"></a> <a href='#top'>
|
|
123
|
+
<div id='msg_1542062' class='message'>
|
|
25
124
|
<span class='roadnumber_a'>A20</span>
|
|
26
|
-
<span class='km'>
|
|
27
|
-
<p class='desc_long'>A20 Gouda richting Hoek van Holland tussen
|
|
125
|
+
<span class='km'>7 km</span> <strong class='desc_short'>Gouda - Hoek van Holland</strong>
|
|
126
|
+
<p class='desc_long'>A20 Gouda richting Hoek van Holland tussen Nieuwerkerk a/d IJssel en Rotterdam-Crooswijk 7 km, door een ongeluk, de weg is weer vrij. Filelengte neemt toe<br /><span class="hmp">32.1</span><span class="hmp">43.2</span></p>
|
|
28
127
|
</div>
|
|
29
128
|
</a>
|
|
30
129
|
<a href='#top'>
|
|
31
|
-
<div id='
|
|
130
|
+
<div id='msg_1542057' class='message'>
|
|
32
131
|
<span class='roadnumber_a'>A20</span>
|
|
33
|
-
<span class='km'>2 km</span> <strong class='desc_short'>
|
|
34
|
-
<p class='desc_long'>A20
|
|
132
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Hoek van Holland - Gouda</strong>
|
|
133
|
+
<p class='desc_long'>A20 Hoek van Holland richting Gouda tussen knp. Kleinpolderplein en Rotterdam-Centrum 2 km, Filelengte neemt af<br /><span class="hmp">31.1</span><span class="hmp">28.5</span></p>
|
|
134
|
+
</div>
|
|
135
|
+
</a>
|
|
136
|
+
<a name="A27"></a> <a href='#top'>
|
|
137
|
+
<div id='msg_1542066' class='message'>
|
|
138
|
+
<span class='roadnumber_a'>A27</span>
|
|
139
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Gorinchem - Breda</strong>
|
|
140
|
+
<p class='desc_long'>A27 Gorinchem richting Breda tussen knp. Gorinchem en de Brug bij Gorinchem 2 km <br /><span class="hmp">34.4</span><span class="hmp">37.8</span></p>
|
|
141
|
+
</div>
|
|
142
|
+
</a>
|
|
143
|
+
<a href='#top'>
|
|
144
|
+
<div id='msg_1542097' class='message'>
|
|
145
|
+
<span class='roadnumber_a'>A27</span>
|
|
146
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Utrecht - Almere</strong>
|
|
147
|
+
<p class='desc_long'>A27 Utrecht richting Almere tussen Hilversum en knp. Eemnes 2 km, Filelengte neemt toe<br /><span class="hmp">98.7</span><span class="hmp">92.1</span></p>
|
|
148
|
+
</div>
|
|
149
|
+
</a>
|
|
150
|
+
<a href='#top'>
|
|
151
|
+
<div id='msg_1542082' class='message'>
|
|
152
|
+
<span class='roadnumber_a'>A27</span>
|
|
153
|
+
<span class='km'>3 km</span> <strong class='desc_short'>Gorinchem - Almere</strong>
|
|
154
|
+
<p class='desc_long'>A27 Gorinchem richting Almere tussen Utrecht-Veemarkt en Bilthoven 3 km, Filelengte neemt af<br /><span class="hmp">86.7</span><span class="hmp">79.9</span></p>
|
|
155
|
+
</div>
|
|
156
|
+
</a>
|
|
157
|
+
<a name="A28"></a> <a href='#top'>
|
|
158
|
+
<div id='msg_1542080' class='message'>
|
|
159
|
+
<span class='roadnumber_a'>A28</span>
|
|
160
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Utrecht - Amersfoort</strong>
|
|
161
|
+
<p class='desc_long'>A28 Utrecht richting Amersfoort tussen Soesterberg en afrit Maarn 2 km, Filelengte neemt af<br /><span class="hmp">18.0</span><span class="hmp">11.0</span></p>
|
|
162
|
+
</div>
|
|
163
|
+
</a>
|
|
164
|
+
<a href='#top'>
|
|
165
|
+
<div id='msg_1542104' class='message'>
|
|
166
|
+
<span class='roadnumber_a'>A28</span>
|
|
167
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Utrecht - Zwolle</strong>
|
|
168
|
+
<p class='desc_long'>A28 Utrecht richting Zwolle tussen Leusden-Zuid en Leusden 2 km, Filelengte neemt toe<br /><span class="hmp">20.2</span><span class="hmp">16.7</span></p>
|
|
169
|
+
</div>
|
|
170
|
+
</a>
|
|
171
|
+
<a name="A76"></a> <a href='#top'>
|
|
172
|
+
<div id='msg_1542086' class='message roadworks'>
|
|
173
|
+
<span class='roadnumber_a'>A76</span>
|
|
174
|
+
<strong class='desc_short'>Geleen - Heerlen</strong>
|
|
175
|
+
<p class='desc_long'>A76 Geleen richting Heerlen bij Geleen is de linkerrijstrook dicht, door een ongeluk.<br /><span class="hmp">4.5</span><span class="hmp">5.5</span></p>
|
|
176
|
+
</div>
|
|
177
|
+
</a>
|
|
178
|
+
<a href='#top'>
|
|
179
|
+
<div id='msg_1542074' class='message'>
|
|
180
|
+
<span class='roadnumber_a'>A76</span>
|
|
181
|
+
<span class='km'>2 km</span> <strong class='desc_short'>Belgische grens - Heerlen</strong>
|
|
182
|
+
<p class='desc_long'>A76 Belgische grens richting Heerlen tussen knp. Kerensheide en Geleen 2 km, door een ongeluk.<br /><span class="hmp">5.5</span><span class="hmp">1.5</span></p>
|
|
35
183
|
</div>
|
|
36
184
|
</a>
|
|
37
185
|
<p class='source'>Bron:<br /><a href='http://www.anwb.nl/' target='_blank'><img src='anwb.png' width='160' border='0' /><br />ANWB Verkeersinformatie</a></p>
|
|
@@ -1,23 +1,30 @@
|
|
|
1
1
|
|
|
2
|
-
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Fileindex.nl actuele files
|
|
3
|
-
</title><description>Langzaam rijdend verkeer tussen
|
|
4
|
-
</title><description>Stilstaand verkeer tussen
|
|
5
|
-
|
|
6
|
-
</title><description>
|
|
7
|
-
|
|
8
|
-
</title><description>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
</title><description>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
</title><description>
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
</title><description>
|
|
22
|
-
|
|
23
|
-
|
|
2
|
+
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Fileindex.nl actuele files 09-jan-2012 17:51:51</title><link>http://www.fileindex.nl/meldingenRSS.aspx</link><description>Er zijn 20 files met een totale lengte van 64 km.</description><language>en-us</language><item><title>A1 van Amersfoort richting Amsterdam 2.2 km
|
|
3
|
+
</title><description>Langzaam rijdend verkeer tussen Amersfoort-Noord en Eembrugge door Ongeval(len) HMP39.1 --> HMP36.9 Deze file wordt korter.</description></item><item><title>A4 van Amsterdam richting Delft 2.3 km
|
|
4
|
+
</title><description>Stilstaand verkeer tussen Roelofarendsveen en Brug over de Oude Rijn HMP27.8 --> HMP30.1</description></item><item><title>A4 van Delft richting Amsterdam 2.2 km
|
|
5
|
+
</title><description>Langzaam rijdend verkeer tussen Leidschendam en Zoeterwoude-Dorp HMP37.3 --> HMP35.1 Deze file wordt langer.</description></item><item><title>A4 van Hoogvliet richting Vlaardingen 2.2 km
|
|
6
|
+
</title><description>Langzaam rijdend verkeer tussen Benelux en Kethelplein HMP72.7 --> HMP70.5</description></item><item><title>A7 van Hoorn richting Zaandam 1.4 km
|
|
7
|
+
</title><description>Rechter rijstro(o)k(en) afgesloten tussen Wijde Wormer en Zaandijk door Olie op het wegdek HMP8.4 --> HMP7 Deze file wordt langer.</description></item><item><title>A7 van Hoorn richting Zaandam 5.8 km
|
|
8
|
+
</title><description>Stilstaand verkeer tussen Purmerend-Zuid en Zaandijk door Olie op het wegdek HMP14 --> HMP8.2 Deze file wordt korter.
|
|
9
|
+
</description></item><item><title>A10 van De Nieuwe Meer richting Coenplein 3.3 km
|
|
10
|
+
</title><description>Langzaam rijdend verkeer tussen Geuzenveld en Coenplein HMP25.8 --> HMP29.1 Deze file wordt korter.
|
|
11
|
+
</description></item><item><title>A12 van Den Haag richting Utrecht 2.4 km
|
|
12
|
+
</title><description>Langzaam rijdend verkeer tussen Malieveld en Voorburg HMP2.9 --> HMP5.3 Deze file wordt korter.
|
|
13
|
+
</description></item><item><title>A15 van Ridderkerk richting Rozenburg 3 km
|
|
14
|
+
</title><description>Langzaam rijdend verkeer tussen Hoogvliet en Spijkenisse HMP48 --> HMP45 Deze file wordt korter.
|
|
15
|
+
</description></item><item><title>A15 van Rozenburg richting Ridderkerk 4.5 km
|
|
16
|
+
</title><description>Langzaam rijdend verkeer tussen Benelux en Vaanplein HMP51 --> HMP55.5 Deze file wordt korter.
|
|
17
|
+
</description></item><item><title>A15 van Gorinchem richting Ridderkerk 2.6 km
|
|
18
|
+
</title><description>Langzaam rijdend verkeer tussen Sliedrecht-Oost en Papendrecht HMP82.9 --> HMP80.3 Deze file wordt korter.
|
|
19
|
+
</description></item><item><title>A16 van Breda richting Rotterdam 6.8 km
|
|
20
|
+
</title><description>Stilstaand verkeer tussen Ridderkerk-Noord en Terbregseplein HMP24.2 --> HMP17.4 Deze file wordt langer.</description></item><item><title>A20 van Hoek van Holland richting Gouda 2.3 km
|
|
21
|
+
</title><description>Stilstaand verkeer tussen Kleinpolderplein en Rotterdam-Centrum HMP28.7 --> HMP31</description></item><item><title>A20 van Gouda richting Hoek van Holland 7 km
|
|
22
|
+
</title><description>Stilstaand verkeer tussen Nieuwerkerk aan den IJssel en Crooswijk door Eerder(e) ongeval(len) HMP40.8 --> HMP33.8 Deze file wordt korter.
|
|
23
|
+
</description></item><item><title>A27 van Gorinchem richting Breda 2.5 km
|
|
24
|
+
</title><description>Langzaam rijdend verkeer tussen Gorinchem en Merwedebrug HMP37.4 --> HMP34.9 Deze file wordt langer.</description></item><item><title>A27 van Gorinchem richting Utrecht 3.6 km
|
|
25
|
+
</title><description>Langzaam rijdend verkeer tussen Veemarkt en Bilthoven HMP80.5 --> HMP84.1 Deze file wordt langer.</description></item><item><title>A27 van Utrecht richting Almere 2.5 km
|
|
26
|
+
</title><description>Langzaam rijdend verkeer tussen Hilversum en Eemnes HMP93.6 --> HMP96.1</description></item><item><title>A28 van Utrecht richting Amersfoort 2.2 km
|
|
27
|
+
</title><description>Langzaam rijdend verkeer tussen Soesterberg en Maarn HMP13.6 --> HMP15.8 Deze file wordt langer.</description></item><item><title>A28 van Utrecht richting Amersfoort 2.4 km
|
|
28
|
+
</title><description>Langzaam rijdend verkeer tussen Leusden-Zuid en Leusden HMP17.1 --> HMP19.5</description></item><item><title>A76 van Leuven richting Geleen 3 km
|
|
29
|
+
</title><description>Stilstaand verkeer tussen Stein en Geleen door Ongeval(len) HMP1.5 --> HMP4.5 Deze file wordt korter.
|
|
30
|
+
</description></item></channel></rss>
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
|
|
2
|
+
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Fileindex.nl actuele files 22-dec-2011 16:15:52</title><link>http://www.fileindex.nl/meldingenRSS.aspx</link><description>Er zijn 14 files met een totale lengte van 45 km.</description><language>en-us</language><item>
|
|
3
|
+
<title>A1 van Amsterdam richting Amersfoort 2.6 km</title><description>weird description</description></item></channel></rss>
|
data/spec/providers/anwb_spec.rb
CHANGED
|
@@ -36,7 +36,7 @@ describe Traffic do
|
|
|
36
36
|
end
|
|
37
37
|
|
|
38
38
|
it "should return a timestamp" do
|
|
39
|
-
@info.timestamp.strftime("%H:%M").should == "
|
|
39
|
+
@info.timestamp.strftime("%H:%M").should == "17:50"
|
|
40
40
|
end
|
|
41
41
|
|
|
42
42
|
it "should return an info object" do
|
|
@@ -44,11 +44,11 @@ describe Traffic do
|
|
|
44
44
|
end
|
|
45
45
|
|
|
46
46
|
it "should be able to return the total size" do
|
|
47
|
-
@info.size.should ==
|
|
47
|
+
@info.size.should == 71
|
|
48
48
|
end
|
|
49
49
|
|
|
50
50
|
it "should be able to return the total count" do
|
|
51
|
-
@info.count.should ==
|
|
51
|
+
@info.count.should == 24
|
|
52
52
|
end
|
|
53
53
|
|
|
54
54
|
it "should return a list with info items with the same length as count" do
|
|
@@ -65,31 +65,31 @@ describe Traffic do
|
|
|
65
65
|
end
|
|
66
66
|
|
|
67
67
|
it "should include a from" do
|
|
68
|
-
@info_item.from.should == "
|
|
68
|
+
@info_item.from.should == "Amersfoort"
|
|
69
69
|
end
|
|
70
70
|
|
|
71
71
|
it "should include a to" do
|
|
72
|
-
@info_item.to.should == "
|
|
72
|
+
@info_item.to.should == "Amsterdam"
|
|
73
73
|
end
|
|
74
74
|
|
|
75
75
|
it "should include a road number" do
|
|
76
|
-
@info_item.road.should == "
|
|
76
|
+
@info_item.road.should == "A1"
|
|
77
77
|
end
|
|
78
78
|
|
|
79
79
|
it "should include a length in km" do
|
|
80
|
-
@info_item.length.should == 0
|
|
80
|
+
@info_item.length.should == 2.0
|
|
81
81
|
end
|
|
82
82
|
|
|
83
83
|
it "should include a description" do
|
|
84
|
-
@info_item.description.should == "
|
|
84
|
+
@info_item.description.should == "A1 Amersfoort richting Amsterdam tussen Amersfoort-Noord en Eembrugge 2 km, Filelengte neemt toe"
|
|
85
85
|
end
|
|
86
86
|
|
|
87
87
|
it "should include a from location (hecto markers)" do
|
|
88
|
-
@info_item.from_location.should ==
|
|
88
|
+
@info_item.from_location.should == 42.4
|
|
89
89
|
end
|
|
90
90
|
|
|
91
91
|
it "should include a to location" do
|
|
92
|
-
@info_item.to_location.should ==
|
|
92
|
+
@info_item.to_location.should == 33.8
|
|
93
93
|
end
|
|
94
94
|
end
|
|
95
95
|
end
|
|
@@ -24,6 +24,13 @@ describe Traffic do
|
|
|
24
24
|
end
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
+
it "should be able to handle weird descriptions" do
|
|
28
|
+
stub_feed "file_index/weird_description.xml"
|
|
29
|
+
info = Traffic.from(:file_index)
|
|
30
|
+
info_item = info.items.first
|
|
31
|
+
info_item.description.should == "weird description"
|
|
32
|
+
end
|
|
33
|
+
|
|
27
34
|
context "when there is traffic" do
|
|
28
35
|
before :each do
|
|
29
36
|
stub_feed "file_index/rss.xml"
|
|
@@ -35,7 +42,7 @@ describe Traffic do
|
|
|
35
42
|
end
|
|
36
43
|
|
|
37
44
|
it "should return a timestamp" do
|
|
38
|
-
@info.timestamp.strftime("%H:%M").should == "
|
|
45
|
+
@info.timestamp.strftime("%H:%M").should == "17:51"
|
|
39
46
|
end
|
|
40
47
|
|
|
41
48
|
it "should return an info object" do
|
|
@@ -43,11 +50,11 @@ describe Traffic do
|
|
|
43
50
|
end
|
|
44
51
|
|
|
45
52
|
it "should be able to return the total size" do
|
|
46
|
-
@info.size.should ==
|
|
53
|
+
@info.size.should == 64
|
|
47
54
|
end
|
|
48
55
|
|
|
49
56
|
it "should be able to return the total count" do
|
|
50
|
-
@info.count.should ==
|
|
57
|
+
@info.count.should == 20
|
|
51
58
|
end
|
|
52
59
|
|
|
53
60
|
it "should return a list with info items with the same length as count" do
|
|
@@ -64,11 +71,11 @@ describe Traffic do
|
|
|
64
71
|
end
|
|
65
72
|
|
|
66
73
|
it "should include a from" do
|
|
67
|
-
@info_item.from.should == "
|
|
74
|
+
@info_item.from.should == "Amersfoort"
|
|
68
75
|
end
|
|
69
76
|
|
|
70
77
|
it "should include a to" do
|
|
71
|
-
@info_item.to.should == "
|
|
78
|
+
@info_item.to.should == "Amsterdam"
|
|
72
79
|
end
|
|
73
80
|
|
|
74
81
|
it "should include a road number" do
|
|
@@ -76,7 +83,7 @@ describe Traffic do
|
|
|
76
83
|
end
|
|
77
84
|
|
|
78
85
|
it "should include a length in km" do
|
|
79
|
-
@info_item.length.should == 2.
|
|
86
|
+
@info_item.length.should == 2.2
|
|
80
87
|
end
|
|
81
88
|
|
|
82
89
|
it "should include a description" do
|
|
@@ -84,7 +91,7 @@ describe Traffic do
|
|
|
84
91
|
end
|
|
85
92
|
|
|
86
93
|
it "should include a location" do
|
|
87
|
-
@info_item.location.should == "
|
|
94
|
+
@info_item.location.should == "Amersfoort-Noord en Eembrugge"
|
|
88
95
|
end
|
|
89
96
|
|
|
90
97
|
it "should include a cause" do
|
|
@@ -92,15 +99,15 @@ describe Traffic do
|
|
|
92
99
|
end
|
|
93
100
|
|
|
94
101
|
it "should include a status" do
|
|
95
|
-
@info_item.status.should == "Deze file wordt
|
|
102
|
+
@info_item.status.should == "Deze file wordt korter."
|
|
96
103
|
end
|
|
97
104
|
|
|
98
105
|
it "should include a from location (hecto markers)" do
|
|
99
|
-
@info_item.from_location.should ==
|
|
106
|
+
@info_item.from_location.should == 39.1
|
|
100
107
|
end
|
|
101
108
|
|
|
102
109
|
it "should include a to location" do
|
|
103
|
-
@info_item.to_location.should ==
|
|
110
|
+
@info_item.to_location.should == 36.9
|
|
104
111
|
end
|
|
105
112
|
end
|
|
106
113
|
end
|
data/traffic.gemspec
CHANGED
|
@@ -23,6 +23,8 @@ Gem::Specification.new do |s|
|
|
|
23
23
|
s.add_development_dependency('simplecov', '~> 0.5')
|
|
24
24
|
s.add_development_dependency('fakeweb', '~> 1.3')
|
|
25
25
|
s.add_dependency('feedzirra', '~> 0.1')
|
|
26
|
+
# lock active support version
|
|
27
|
+
s.add_dependency('activesupport', '= 3.1.3')
|
|
26
28
|
s.add_dependency('httpclient', '~> 2.2')
|
|
27
29
|
s.add_dependency('nokogiri', '~> 1.4')
|
|
28
30
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: traffic
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.4
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,11 +9,11 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2012-01-
|
|
12
|
+
date: 2012-01-25 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: bundler
|
|
16
|
-
requirement: &
|
|
16
|
+
requirement: &70318563874100 !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ~>
|
|
@@ -21,10 +21,10 @@ dependencies:
|
|
|
21
21
|
version: '1.0'
|
|
22
22
|
type: :development
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements: *
|
|
24
|
+
version_requirements: *70318563874100
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
26
|
name: rake
|
|
27
|
-
requirement: &
|
|
27
|
+
requirement: &70318563873240 !ruby/object:Gem::Requirement
|
|
28
28
|
none: false
|
|
29
29
|
requirements:
|
|
30
30
|
- - ~>
|
|
@@ -32,10 +32,10 @@ dependencies:
|
|
|
32
32
|
version: '0.9'
|
|
33
33
|
type: :development
|
|
34
34
|
prerelease: false
|
|
35
|
-
version_requirements: *
|
|
35
|
+
version_requirements: *70318563873240
|
|
36
36
|
- !ruby/object:Gem::Dependency
|
|
37
37
|
name: rspec
|
|
38
|
-
requirement: &
|
|
38
|
+
requirement: &70318563871960 !ruby/object:Gem::Requirement
|
|
39
39
|
none: false
|
|
40
40
|
requirements:
|
|
41
41
|
- - ~>
|
|
@@ -43,10 +43,10 @@ dependencies:
|
|
|
43
43
|
version: '2.7'
|
|
44
44
|
type: :development
|
|
45
45
|
prerelease: false
|
|
46
|
-
version_requirements: *
|
|
46
|
+
version_requirements: *70318563871960
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: mocha
|
|
49
|
-
requirement: &
|
|
49
|
+
requirement: &70318563871440 !ruby/object:Gem::Requirement
|
|
50
50
|
none: false
|
|
51
51
|
requirements:
|
|
52
52
|
- - ~>
|
|
@@ -54,10 +54,10 @@ dependencies:
|
|
|
54
54
|
version: '0.10'
|
|
55
55
|
type: :development
|
|
56
56
|
prerelease: false
|
|
57
|
-
version_requirements: *
|
|
57
|
+
version_requirements: *70318563871440
|
|
58
58
|
- !ruby/object:Gem::Dependency
|
|
59
59
|
name: simplecov
|
|
60
|
-
requirement: &
|
|
60
|
+
requirement: &70318563870880 !ruby/object:Gem::Requirement
|
|
61
61
|
none: false
|
|
62
62
|
requirements:
|
|
63
63
|
- - ~>
|
|
@@ -65,10 +65,10 @@ dependencies:
|
|
|
65
65
|
version: '0.5'
|
|
66
66
|
type: :development
|
|
67
67
|
prerelease: false
|
|
68
|
-
version_requirements: *
|
|
68
|
+
version_requirements: *70318563870880
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: fakeweb
|
|
71
|
-
requirement: &
|
|
71
|
+
requirement: &70318563870240 !ruby/object:Gem::Requirement
|
|
72
72
|
none: false
|
|
73
73
|
requirements:
|
|
74
74
|
- - ~>
|
|
@@ -76,10 +76,10 @@ dependencies:
|
|
|
76
76
|
version: '1.3'
|
|
77
77
|
type: :development
|
|
78
78
|
prerelease: false
|
|
79
|
-
version_requirements: *
|
|
79
|
+
version_requirements: *70318563870240
|
|
80
80
|
- !ruby/object:Gem::Dependency
|
|
81
81
|
name: feedzirra
|
|
82
|
-
requirement: &
|
|
82
|
+
requirement: &70318563869440 !ruby/object:Gem::Requirement
|
|
83
83
|
none: false
|
|
84
84
|
requirements:
|
|
85
85
|
- - ~>
|
|
@@ -87,10 +87,21 @@ dependencies:
|
|
|
87
87
|
version: '0.1'
|
|
88
88
|
type: :runtime
|
|
89
89
|
prerelease: false
|
|
90
|
-
version_requirements: *
|
|
90
|
+
version_requirements: *70318563869440
|
|
91
|
+
- !ruby/object:Gem::Dependency
|
|
92
|
+
name: activesupport
|
|
93
|
+
requirement: &70318563893980 !ruby/object:Gem::Requirement
|
|
94
|
+
none: false
|
|
95
|
+
requirements:
|
|
96
|
+
- - =
|
|
97
|
+
- !ruby/object:Gem::Version
|
|
98
|
+
version: 3.1.3
|
|
99
|
+
type: :runtime
|
|
100
|
+
prerelease: false
|
|
101
|
+
version_requirements: *70318563893980
|
|
91
102
|
- !ruby/object:Gem::Dependency
|
|
92
103
|
name: httpclient
|
|
93
|
-
requirement: &
|
|
104
|
+
requirement: &70318563893400 !ruby/object:Gem::Requirement
|
|
94
105
|
none: false
|
|
95
106
|
requirements:
|
|
96
107
|
- - ~>
|
|
@@ -98,10 +109,10 @@ dependencies:
|
|
|
98
109
|
version: '2.2'
|
|
99
110
|
type: :runtime
|
|
100
111
|
prerelease: false
|
|
101
|
-
version_requirements: *
|
|
112
|
+
version_requirements: *70318563893400
|
|
102
113
|
- !ruby/object:Gem::Dependency
|
|
103
114
|
name: nokogiri
|
|
104
|
-
requirement: &
|
|
115
|
+
requirement: &70318563892820 !ruby/object:Gem::Requirement
|
|
105
116
|
none: false
|
|
106
117
|
requirements:
|
|
107
118
|
- - ~>
|
|
@@ -109,7 +120,7 @@ dependencies:
|
|
|
109
120
|
version: '1.4'
|
|
110
121
|
type: :runtime
|
|
111
122
|
prerelease: false
|
|
112
|
-
version_requirements: *
|
|
123
|
+
version_requirements: *70318563892820
|
|
113
124
|
description: Traffic is a gem that supplies traffic information from multiple data
|
|
114
125
|
providers
|
|
115
126
|
email:
|
|
@@ -133,6 +144,7 @@ files:
|
|
|
133
144
|
- spec/fixtures/anwb/traffic.html
|
|
134
145
|
- spec/fixtures/file_index/empty_rss.xml
|
|
135
146
|
- spec/fixtures/file_index/rss.xml
|
|
147
|
+
- spec/fixtures/file_index/weird_description.xml
|
|
136
148
|
- spec/providers/anwb_spec.rb
|
|
137
149
|
- spec/providers/file_index_spec.rb
|
|
138
150
|
- spec/spec_helper.rb
|
|
@@ -169,6 +181,7 @@ test_files:
|
|
|
169
181
|
- spec/fixtures/anwb/traffic.html
|
|
170
182
|
- spec/fixtures/file_index/empty_rss.xml
|
|
171
183
|
- spec/fixtures/file_index/rss.xml
|
|
184
|
+
- spec/fixtures/file_index/weird_description.xml
|
|
172
185
|
- spec/providers/anwb_spec.rb
|
|
173
186
|
- spec/providers/file_index_spec.rb
|
|
174
187
|
- spec/spec_helper.rb
|