metar-parser 1.1.8 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,8 +1,7 @@
1
- # encoding: utf-8
2
- load File.expand_path( '../spec_helper.rb', File.dirname(__FILE__) )
1
+ require "spec_helper"
3
2
 
4
- RSpec::Matchers.define :be_distance do | expected |
5
- match do | distance |
3
+ RSpec::Matchers.define :be_distance do |expected|
4
+ match do |distance|
6
5
  if distance.nil? && expected == :expect_nil
7
6
  true
8
7
  elsif distance.nil? && expected != :expect_nil
@@ -18,20 +17,15 @@ RSpec::Matchers.define :be_distance do | expected |
18
17
  end
19
18
 
20
19
  describe Metar::VerticalVisibility do
21
-
22
20
  context '.parse' do
23
-
24
21
  [
25
- [ 'VV + nnn', 'VV300', 9144 ],
26
- [ '///', '///', nil ],
27
- [ 'returns nil for unmatched', 'FUBAR', :expect_nil ],
28
- ].each do | docstring, raw, expected |
22
+ ['VV + nnn', 'VV300', 9144],
23
+ ['///', '///', nil],
24
+ ['returns nil for unmatched', 'FUBAR', :expect_nil],
25
+ ].each do |docstring, raw, expected|
29
26
  example docstring do
30
- Metar::VerticalVisibility.parse( raw ).should be_distance( expected )
27
+ expect(Metar::VerticalVisibility.parse(raw)).to be_distance(expected)
31
28
  end
32
29
  end
33
-
34
30
  end
35
-
36
31
  end
37
-
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- load File.expand_path( '../spec_helper.rb', File.dirname(__FILE__) )
2
+ require "spec_helper"
3
3
 
4
4
  RSpec::Matchers.define :be_visibility do | distance, direction, comparator |
5
5
  match do | visibility |
@@ -26,27 +26,24 @@ RSpec::Matchers.define :be_visibility do | distance, direction, comparator |
26
26
  end
27
27
 
28
28
  describe Metar::Visibility do
29
-
30
29
  context '.parse' do
31
-
32
30
  [
33
- [ 'understands 9999', '9999', [ 10000.00, nil, :more_than ] ],
34
- [ 'understands nnnn + NDV', '0123NDV', [ 123.00, nil, nil ] ],
35
- [ 'understands n/nSM', '3/4SM', [ 1207.01, nil, nil ] ],
36
- [ 'understands 3/16SM', '3/16SM', [ 301.752, nil, nil ] ],
37
- [ 'understands n n/nSM', '1 1/4SM', [ 2011.68, nil, nil ] ],
38
- [ 'understands nSM', '5SM', [ 8046.72, nil, nil ] ],
39
- [ 'understands M1/4SM', 'M1/4SM', [ 402.34, nil, :less_than ] ],
40
- [ 'understands n + KM', '5KM', [ 5000.00, nil, nil ] ],
41
- [ 'understands n', '500', [ 500.00, nil, nil ] ],
42
- [ 'understands n + compass', '500NW', [ 500.00, 315.0, nil ] ],
43
- [ 'returns nil for unmatched', 'FUBAR', [ nil, nil, nil ] ],
44
- ].each do | docstring, raw, expected |
31
+ ['understands 9999', '9999', [10000.00, nil, :more_than]],
32
+ ['understands nnnn + NDV', '0123NDV', [ 123.00, nil, nil]],
33
+ ['understands n/nSM', '3/4SM', [ 1207.01, nil, nil]],
34
+ ['understands 3/16SM', '3/16SM', [ 301.752, nil, nil]],
35
+ ['understands n n/nSM', '1 1/4SM', [ 2011.68, nil, nil]],
36
+ ['understands nSM', '5SM', [ 8046.72, nil, nil]],
37
+ ['understands M1/4SM', 'M1/4SM', [ 402.34, nil, :less_than]],
38
+ ['understands n + KM', '5KM', [ 5000.00, nil, nil]],
39
+ ['understands n', '500', [ 500.00, nil, nil]],
40
+ ['understands n + compass', '500NW', [ 500.00, 315.0, nil]],
41
+ ['returns nil for unmatched', 'FUBAR', [ nil, nil, nil]],
42
+ ].each do |docstring, raw, expected|
45
43
  example docstring do
46
- Metar::Visibility.parse( raw ).should be_visibility( *expected )
44
+ expect(Metar::Visibility.parse(raw)).to be_visibility(*expected)
47
45
  end
48
46
  end
49
-
50
47
  end
51
48
 
52
49
  context '#to_s' do
@@ -73,9 +70,9 @@ describe Metar::Visibility do
73
70
 
74
71
  example docstring + " (#{locale})" do
75
72
  I18n.locale = locale
73
+ value = Metar::Visibility.new(distance, direction, comparator).to_s
76
74
 
77
- Metar::Visibility.new( distance, direction, comparator ).to_s.
78
- should == expected
75
+ expect(value).to eq(expected)
79
76
  end
80
77
  end
81
78
 
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- load File.expand_path( '../spec_helper.rb', File.dirname(__FILE__) )
2
+ require "spec_helper"
3
3
 
4
4
  RSpec::Matchers.define :be_weather_phenomenon do | modifier, descriptor, phenomenon |
5
5
  match do | wp |
@@ -33,7 +33,7 @@ describe Metar::WeatherPhenomenon do
33
33
  [ 'returns nil for unmatched', 'FUBAR', [ nil, nil, nil ] ],
34
34
  ].each do | docstring, raw, expected |
35
35
  example docstring do
36
- Metar::WeatherPhenomenon.parse( raw ).should be_weather_phenomenon( *expected )
36
+ expect(Metar::WeatherPhenomenon.parse( raw )).to be_weather_phenomenon(*expected)
37
37
  end
38
38
  end
39
39
  end
@@ -58,8 +58,7 @@ describe Metar::WeatherPhenomenon do
58
58
  ].each do | docstring, locale, ( modifier, descriptor, phenomenon ), expected |
59
59
  example docstring + " (#{locale})" do
60
60
  I18n.locale = locale
61
- Metar::WeatherPhenomenon.new( phenomenon, modifier, descriptor ).to_s.
62
- should == expected
61
+ expect(Metar::WeatherPhenomenon.new( phenomenon, modifier, descriptor ).to_s).to eq(expected)
63
62
  end
64
63
  end
65
64
  end
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- load File.expand_path('../spec_helper.rb', File.dirname(__FILE__))
2
+ require "spec_helper"
3
3
 
4
4
  RSpec::Matchers.define :be_wind do |direction, speed, gusts|
5
5
  match do |wind|
@@ -66,7 +66,7 @@ describe Metar::Wind do
66
66
  ['returns nil for nil', nil, [nil, nil, nil]],
67
67
  ].each do |docstring, raw, expected|
68
68
  example docstring do
69
- Metar::Wind.parse(raw).should be_wind(*expected)
69
+ expect(Metar::Wind.parse(raw)).to be_wind(*expected)
70
70
  end
71
71
  end
72
72
  end
@@ -82,24 +82,23 @@ describe Metar::Wind do
82
82
  end
83
83
 
84
84
  [
85
- ['should format speed and direction', :en, [nil, nil, nil ], '443km/h ESE' ],
86
- ['should handle variable_direction', :en, [:variable_direction, nil, nil ], '443km/h variable direction' ],
87
- ['should handle unknown_direction', :en, [:unknown_direction, nil, nil ], '443km/h unknown direction' ],
88
- ['should handle unknown_speed', :en, [nil, :unknown_speed, nil ], 'unknown speed ESE' ],
89
- ['should include gusts', :en, [nil, nil, Metar::Speed.new(123)], '443km/h ESE gusts 443km/h' ],
90
- ['should format speed and direction', :it, [nil, nil, nil ], '443km/h ESE' ],
91
- ['should handle variable_direction', :it, [:variable_direction, nil, nil ], '443km/h direzione variabile' ],
92
- ['should handle unknown_direction', :it, [:unknown_direction, nil, nil ], '443km/h direzione sconosciuta'],
93
- ['should handle unknown_speed', :it, [nil, :unknown_speed, nil ], 'velocità sconosciuta ESE' ],
94
- ['should include gusts', :it, [nil, nil, Metar::Speed.new(123)], '443km/h ESE folate di 443km/h'],
85
+ ['formats speed and direction', :en, [nil, nil, nil ], '443km/h ESE' ],
86
+ ['handles variable_direction', :en, [:variable_direction, nil, nil ], '443km/h variable direction' ],
87
+ ['handles unknown_direction', :en, [:unknown_direction, nil, nil ], '443km/h unknown direction' ],
88
+ ['handles unknown_speed', :en, [nil, :unknown_speed, nil ], 'unknown speed ESE' ],
89
+ ['includes gusts', :en, [nil, nil, Metar::Speed.new(123)], '443km/h ESE gusts 443km/h' ],
90
+ ['formats speed and direction', :it, [nil, nil, nil ], '443km/h ESE' ],
91
+ ['handles variable_direction', :it, [:variable_direction, nil, nil ], '443km/h direzione variabile' ],
92
+ ['handles unknown_direction', :it, [:unknown_direction, nil, nil ], '443km/h direzione sconosciuta'],
93
+ ['handles unknown_speed', :it, [nil, :unknown_speed, nil ], 'velocità sconosciuta ESE' ],
94
+ ['includes gusts', :it, [nil, nil, Metar::Speed.new(123)], '443km/h ESE folate di 443km/h'],
95
95
  ].each do |docstring, locale, (direction, speed, gusts), expected|
96
96
  direction ||= M9t::Direction.new(123)
97
97
  speed ||= Metar::Speed.new(123)
98
98
 
99
99
  example docstring + " (#{locale})" do
100
100
  I18n.locale = locale
101
- Metar::Wind.new(direction, speed, gusts).to_s.
102
- should == expected
101
+ expect(Metar::Wind.new(direction, speed, gusts).to_s).to eq(expected)
103
102
  end
104
103
  end
105
104
  end
metadata CHANGED
@@ -1,226 +1,209 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: metar-parser
3
- version: !ruby/object:Gem::Version
4
- hash: 3
5
- prerelease:
6
- segments:
7
- - 1
8
- - 1
9
- - 8
10
- version: 1.1.8
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.0
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Joe Yates
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2015-04-13 00:00:00 +02:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
22
- version_requirements: &id001 !ruby/object:Gem::Requirement
23
- none: false
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- hash: 3
28
- segments:
29
- - 0
30
- version: "0"
31
- prerelease: false
32
- requirement: *id001
11
+ date: 2016-04-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
33
14
  name: rake
34
- type: :runtime
35
- - !ruby/object:Gem::Dependency
36
- version_requirements: &id002 !ruby/object:Gem::Requirement
37
- none: false
38
- requirements:
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
39
17
  - - ">="
40
- - !ruby/object:Gem::Version
41
- hash: 3
42
- segments:
43
- - 0
44
- version: "0"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
45
21
  prerelease: false
46
- requirement: *id002
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
47
28
  name: rdoc
48
- type: :runtime
49
- - !ruby/object:Gem::Dependency
50
- version_requirements: &id003 !ruby/object:Gem::Requirement
51
- none: false
52
- requirements:
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
53
31
  - - ">="
54
- - !ruby/object:Gem::Version
55
- hash: 25
56
- segments:
57
- - 0
58
- - 3
59
- - 5
60
- version: 0.3.5
61
- - - <
62
- - !ruby/object:Gem::Version
63
- hash: 3
64
- segments:
65
- - 0
66
- - 7
67
- - 0
68
- version: 0.7.0
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
69
35
  prerelease: false
70
- requirement: *id003
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
71
42
  name: i18n
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 0.7.0
72
48
  type: :runtime
73
- - !ruby/object:Gem::Dependency
74
- version_requirements: &id004 !ruby/object:Gem::Requirement
75
- none: false
76
- requirements:
77
- - - ~>
78
- - !ruby/object:Gem::Version
79
- hash: 17
80
- segments:
81
- - 0
82
- - 3
83
- - 1
84
- version: 0.3.1
85
49
  prerelease: false
86
- requirement: *id004
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 0.7.0
55
+ - !ruby/object:Gem::Dependency
87
56
  name: m9t
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 0.3.5
88
62
  type: :runtime
89
- - !ruby/object:Gem::Dependency
90
- version_requirements: &id005 !ruby/object:Gem::Requirement
91
- none: false
92
- requirements:
93
- - - ~>
94
- - !ruby/object:Gem::Version
95
- hash: 53
96
- segments:
97
- - 2
98
- - 14
99
- - 1
100
- version: 2.14.1
101
63
  prerelease: false
102
- requirement: *id005
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 0.3.5
69
+ - !ruby/object:Gem::Dependency
103
70
  name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 3.2.0
104
76
  type: :development
105
- - !ruby/object:Gem::Dependency
106
- version_requirements: &id006 !ruby/object:Gem::Requirement
107
- none: false
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- hash: 3
112
- segments:
113
- - 0
114
- version: "0"
115
77
  prerelease: false
116
- requirement: *id006
117
- name: rcov
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 3.2.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: simplecov
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
118
90
  type: :development
119
- - !ruby/object:Gem::Dependency
120
- version_requirements: &id007 !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
123
94
  - - ">="
124
- - !ruby/object:Gem::Version
125
- hash: 3
126
- segments:
127
- - 0
128
- version: "0"
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: timecop
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
129
105
  prerelease: false
130
- requirement: *id007
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
131
112
  name: pry
132
- type: :development
133
- - !ruby/object:Gem::Dependency
134
- version_requirements: &id008 !ruby/object:Gem::Requirement
135
- none: false
136
- requirements:
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
137
115
  - - ">="
138
- - !ruby/object:Gem::Version
139
- hash: 3
140
- segments:
141
- - 0
142
- version: "0"
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
143
119
  prerelease: false
144
- requirement: *id008
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
145
126
  name: pry-doc
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
146
132
  type: :development
147
- description: " metar-parser is a ruby gem that downloads weather reports, parses them and formats reports.\n\n It also provides weather station listings and info (e.g. country, latitude and longitude).\n\n Reports can be fully localized (currently Brazilian Portuguese, English, German and Italian are available).\n"
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ description: |2
140
+ metar-parser is a ruby gem that downloads weather reports, parses them and formats reports.
141
+
142
+ It also provides weather station listings and info (e.g. country, latitude and longitude).
143
+
144
+ Reports can be fully localized (currently Brazilian Portuguese, English, German and Italian are available).
148
145
  email: joe.g.yates@gmail.com
149
146
  executables: []
150
-
151
147
  extensions: []
152
-
153
148
  extra_rdoc_files: []
154
-
155
- files:
156
- - README.md
149
+ files:
157
150
  - COPYING
151
+ - README.md
158
152
  - Rakefile
159
153
  - bin/parse_raw.rb
160
154
  - lib/metar.rb
155
+ - lib/metar/data.rb
161
156
  - lib/metar/parser.rb
162
157
  - lib/metar/raw.rb
163
- - lib/metar/station.rb
164
- - lib/metar/data.rb
165
158
  - lib/metar/report.rb
159
+ - lib/metar/station.rb
166
160
  - lib/metar/version.rb
161
+ - locales/de.yml
162
+ - locales/en.yml
163
+ - locales/it.yml
164
+ - locales/pt-BR.yml
167
165
  - spec/spec_helper.rb
168
- - spec/unit/runway_visible_range_spec.rb
169
- - spec/unit/weather_phenomenon_spec.rb
170
- - spec/unit/temperature_spec.rb
166
+ - spec/unit/distance_spec.rb
171
167
  - spec/unit/i18n_spec.rb
168
+ - spec/unit/parser_spec.rb
172
169
  - spec/unit/pressure_spec.rb
170
+ - spec/unit/raw_spec.rb
173
171
  - spec/unit/remark_spec.rb
174
- - spec/unit/speed_spec.rb
175
- - spec/unit/vertical_visibility_spec.rb
176
- - spec/unit/parser_spec.rb
177
- - spec/unit/visibility_spec.rb
178
172
  - spec/unit/report_spec.rb
179
- - spec/unit/raw_spec.rb
180
- - spec/unit/distance_spec.rb
181
- - spec/unit/wind_spec.rb
173
+ - spec/unit/runway_visible_range_spec.rb
182
174
  - spec/unit/sky_condition_spec.rb
175
+ - spec/unit/speed_spec.rb
183
176
  - spec/unit/station_spec.rb
177
+ - spec/unit/temperature_spec.rb
184
178
  - spec/unit/variable_wind_spec.rb
185
- - locales/it.yml
186
- - locales/pt-BR.yml
187
- - locales/en.yml
188
- - locales/de.yml
189
- has_rdoc: true
179
+ - spec/unit/vertical_visibility_spec.rb
180
+ - spec/unit/visibility_spec.rb
181
+ - spec/unit/weather_phenomenon_spec.rb
182
+ - spec/unit/wind_spec.rb
190
183
  homepage: http://github.com/joeyates/metar-parser
191
184
  licenses: []
192
-
185
+ metadata: {}
193
186
  post_install_message:
194
187
  rdoc_options: []
195
-
196
- require_paths:
188
+ require_paths:
197
189
  - lib
198
- required_ruby_version: !ruby/object:Gem::Requirement
199
- none: false
200
- requirements:
190
+ required_ruby_version: !ruby/object:Gem::Requirement
191
+ requirements:
201
192
  - - ">="
202
- - !ruby/object:Gem::Version
203
- hash: 3
204
- segments:
205
- - 0
206
- version: "0"
207
- required_rubygems_version: !ruby/object:Gem::Requirement
208
- none: false
209
- requirements:
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ required_rubygems_version: !ruby/object:Gem::Requirement
196
+ requirements:
210
197
  - - ">="
211
- - !ruby/object:Gem::Version
212
- hash: 3
213
- segments:
214
- - 0
215
- version: "0"
198
+ - !ruby/object:Gem::Version
199
+ version: '0'
216
200
  requirements: []
217
-
218
201
  rubyforge_project: nowarning
219
- rubygems_version: 1.6.2
202
+ rubygems_version: 2.5.1
220
203
  signing_key:
221
- specification_version: 3
204
+ specification_version: 4
222
205
  summary: A Ruby gem for worldwide weather reports
223
- test_files:
206
+ test_files:
224
207
  - spec/unit/runway_visible_range_spec.rb
225
208
  - spec/unit/weather_phenomenon_spec.rb
226
209
  - spec/unit/temperature_spec.rb
@@ -238,3 +221,4 @@ test_files:
238
221
  - spec/unit/sky_condition_spec.rb
239
222
  - spec/unit/station_spec.rb
240
223
  - spec/unit/variable_wind_spec.rb
224
+ has_rdoc: