versionomy 0.2.3 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- data/History.rdoc +4 -0
- data/lib/versionomy/format/delimiter.rb +1 -1
- data/lib/versionomy/version.rb +1 -1
- data/tests/tc_standard_parse.rb +26 -0
- metadata +1 -1
data/History.rdoc
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
=== 0.2.4 / 2009-11-19
|
2
|
+
|
3
|
+
* Fixed a regression introduced in 0.2.2 where "1.0a" was being recognized as an alpha version rather than a patchlevel of 1, and similar for "1.0b" and "1.0d".
|
4
|
+
|
1
5
|
=== 0.2.3 / 2009-11-19
|
2
6
|
|
3
7
|
* Recognize "_" and "u" as patchlevel delimiters, to support Sun's Java version numbers (e.g. "1.6.0_17", "6u17").
|
@@ -158,7 +158,6 @@ module Versionomy
|
|
158
158
|
if parse_data_
|
159
159
|
parse_state_[:previous_field_missing] = false
|
160
160
|
if recognizer_.requires_next_field
|
161
|
-
parse_state_[:next_field_required] = true
|
162
161
|
parse_state_ = {
|
163
162
|
:backtrack => parse_state_,
|
164
163
|
:string => parse_state_[:string],
|
@@ -167,6 +166,7 @@ module Versionomy
|
|
167
166
|
:field => parse_state_[:field],
|
168
167
|
:recognizer_index => 0,
|
169
168
|
:previous_field_missing => false,
|
169
|
+
:next_field_required => true,
|
170
170
|
}
|
171
171
|
else
|
172
172
|
parse_state_[:next_field_required] = false
|
data/lib/versionomy/version.rb
CHANGED
data/tests/tc_standard_parse.rb
CHANGED
@@ -270,6 +270,32 @@ module Versionomy
|
|
270
270
|
end
|
271
271
|
|
272
272
|
|
273
|
+
# Test alphabetic patchlevels.
|
274
|
+
# In particular, make sure the parser can distinguish between these
|
275
|
+
# and the markers for prereleases.
|
276
|
+
|
277
|
+
def test_patchlevel_alphabetic
|
278
|
+
value_ = ::Versionomy.parse('1.9a')
|
279
|
+
assert_equal([1, 9, 0, 0, :final, 1, 0], value_.values_array)
|
280
|
+
assert_equal('1.9a', value_.to_s)
|
281
|
+
value_ = ::Versionomy.parse('1.9b')
|
282
|
+
assert_equal([1, 9, 0, 0, :final, 2, 0], value_.values_array)
|
283
|
+
assert_equal('1.9b', value_.to_s)
|
284
|
+
value_ = ::Versionomy.parse('1.9d')
|
285
|
+
assert_equal([1, 9, 0, 0, :final, 4, 0], value_.values_array)
|
286
|
+
assert_equal('1.9d', value_.to_s)
|
287
|
+
value_ = ::Versionomy.parse('1.9p')
|
288
|
+
assert_equal([1, 9, 0, 0, :final, 16, 0], value_.values_array)
|
289
|
+
assert_equal('1.9p', value_.to_s)
|
290
|
+
value_ = ::Versionomy.parse('1.9r')
|
291
|
+
assert_equal([1, 9, 0, 0, :final, 18, 0], value_.values_array)
|
292
|
+
assert_equal('1.9r', value_.to_s)
|
293
|
+
value_ = ::Versionomy.parse('1.9u')
|
294
|
+
assert_equal([1, 9, 0, 0, :final, 21, 0], value_.values_array)
|
295
|
+
assert_equal('1.9u', value_.to_s)
|
296
|
+
end
|
297
|
+
|
298
|
+
|
273
299
|
# Test setting delimiters on unparse, including testing for illegal delimiters
|
274
300
|
|
275
301
|
def test_unparse_with_custom_delimiters
|