versionomy 0.4.1 → 0.4.2
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/History.rdoc +4 -0
- data/Version +1 -1
- data/lib/versionomy.rb +19 -25
- data/lib/versionomy/conversion.rb +41 -41
- data/lib/versionomy/conversion/base.rb +31 -31
- data/lib/versionomy/conversion/parsing.rb +49 -49
- data/lib/versionomy/errors.rb +63 -63
- data/lib/versionomy/format.rb +51 -51
- data/lib/versionomy/format/base.rb +44 -44
- data/lib/versionomy/format/delimiter.rb +205 -205
- data/lib/versionomy/format_definitions/rubygems.rb +85 -85
- data/lib/versionomy/format_definitions/semver.rb +78 -78
- data/lib/versionomy/format_definitions/standard.rb +68 -68
- data/lib/versionomy/interface.rb +46 -46
- data/lib/versionomy/schema.rb +21 -21
- data/lib/versionomy/schema/field.rb +112 -112
- data/lib/versionomy/schema/wrapper.rb +91 -91
- data/lib/versionomy/value.rb +224 -180
- data/lib/versionomy/version.rb +9 -9
- data/test/tc_custom_format.rb +14 -14
- data/test/tc_readme_examples.rb +24 -24
- data/test/tc_rubygems_basic.rb +68 -68
- data/test/tc_rubygems_conversions.rb +46 -46
- data/test/tc_semver_basic.rb +62 -62
- data/test/tc_semver_conversions.rb +52 -52
- data/test/tc_standard_basic.rb +35 -35
- data/test/tc_standard_bump.rb +35 -35
- data/test/tc_standard_change.rb +20 -20
- data/test/tc_standard_comparison.rb +38 -38
- data/test/tc_standard_misc.rb +23 -23
- data/test/tc_standard_parse.rb +77 -77
- data/test/tc_standard_reset.rb +29 -29
- data/test/tc_version_of.rb +15 -15
- metadata +30 -34
data/test/tc_standard_reset.rb
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
# -----------------------------------------------------------------------------
|
2
|
-
#
|
2
|
+
#
|
3
3
|
# Versionomy bump tests on standard schema
|
4
|
-
#
|
4
|
+
#
|
5
5
|
# This file contains tests for the bump function on the standard schema
|
6
|
-
#
|
6
|
+
#
|
7
7
|
# -----------------------------------------------------------------------------
|
8
8
|
# Copyright 2008-2009 Daniel Azuma
|
9
|
-
#
|
9
|
+
#
|
10
10
|
# All rights reserved.
|
11
|
-
#
|
11
|
+
#
|
12
12
|
# Redistribution and use in source and binary forms, with or without
|
13
13
|
# modification, are permitted provided that the following conditions are met:
|
14
|
-
#
|
14
|
+
#
|
15
15
|
# * Redistributions of source code must retain the above copyright notice,
|
16
16
|
# this list of conditions and the following disclaimer.
|
17
17
|
# * Redistributions in binary form must reproduce the above copyright notice,
|
@@ -20,7 +20,7 @@
|
|
20
20
|
# * Neither the name of the copyright holder, nor the names of any other
|
21
21
|
# contributors to this software, may be used to endorse or promote products
|
22
22
|
# derived from this software without specific prior written permission.
|
23
|
-
#
|
23
|
+
#
|
24
24
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
25
25
|
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
26
26
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
@@ -41,65 +41,65 @@ require 'versionomy'
|
|
41
41
|
|
42
42
|
module Versionomy
|
43
43
|
module Tests # :nodoc:
|
44
|
-
|
44
|
+
|
45
45
|
class TestStandardReset < ::Test::Unit::TestCase # :nodoc:
|
46
|
-
|
47
|
-
|
46
|
+
|
47
|
+
|
48
48
|
# Test resetting a minor patchlevel.
|
49
|
-
|
49
|
+
|
50
50
|
def test_reset_patchlevel_minor
|
51
51
|
value_ = ::Versionomy.create(:major => 2, :tiny => 1, :patchlevel => 3, :patchlevel_minor => 1)
|
52
52
|
value_ = value_.reset(:patchlevel_minor)
|
53
53
|
assert_equal([2,0,1,0,:final,3,0], value_.values_array)
|
54
54
|
end
|
55
|
-
|
56
|
-
|
55
|
+
|
56
|
+
|
57
57
|
# Test resetting a major patchlevel.
|
58
|
-
|
58
|
+
|
59
59
|
def test_reset_patchlevel
|
60
60
|
value_ = ::Versionomy.create(:major => 2, :tiny => 1, :patchlevel => 3, :patchlevel_minor => 1)
|
61
61
|
value_ = value_.reset(:patchlevel)
|
62
62
|
assert_equal([2,0,1,0,:final,0,0], value_.values_array)
|
63
63
|
end
|
64
|
-
|
65
|
-
|
64
|
+
|
65
|
+
|
66
66
|
# Test resetting a beta release type.
|
67
|
-
|
67
|
+
|
68
68
|
def test_reset_beta_release_type
|
69
69
|
value_ = ::Versionomy.create(:major => 2, :tiny => 1, :release_type => :beta, :beta_version => 2)
|
70
70
|
value_ = value_.reset(:release_type)
|
71
71
|
assert_equal([2,0,1,0,:final,0,0], value_.values_array)
|
72
72
|
end
|
73
|
-
|
74
|
-
|
73
|
+
|
74
|
+
|
75
75
|
# Test resetting a final release type.
|
76
|
-
|
76
|
+
|
77
77
|
def test_reset_final_release_type
|
78
78
|
value_ = ::Versionomy.create(:major => 2, :tiny => 1, :patchlevel => 2)
|
79
79
|
value_ = value_.reset(:release_type)
|
80
80
|
assert_equal([2,0,1,0,:final,0,0], value_.values_array)
|
81
81
|
end
|
82
|
-
|
83
|
-
|
82
|
+
|
83
|
+
|
84
84
|
# Test resetting tiny.
|
85
|
-
|
85
|
+
|
86
86
|
def test_reset_tiny
|
87
87
|
value_ = ::Versionomy.create(:major => 2, :tiny => 1, :tiny2 => 3, :release_type => :release_candidate, :release_candidate_version => 2)
|
88
88
|
value_ = value_.reset(:tiny)
|
89
89
|
assert_equal([2,0,0,0,:final,0,0], value_.values_array)
|
90
90
|
end
|
91
|
-
|
92
|
-
|
91
|
+
|
92
|
+
|
93
93
|
# Test resetting major.
|
94
|
-
|
94
|
+
|
95
95
|
def test_reset_major
|
96
96
|
value_ = ::Versionomy.create(:major => 2, :tiny => 1, :tiny2 => 3, :release_type => :release_candidate, :release_candidate_version => 2)
|
97
97
|
value_ = value_.reset(:major)
|
98
98
|
assert_equal([1,0,0,0,:final,0,0], value_.values_array)
|
99
99
|
end
|
100
|
-
|
101
|
-
|
100
|
+
|
101
|
+
|
102
102
|
end
|
103
|
-
|
103
|
+
|
104
104
|
end
|
105
105
|
end
|
data/test/tc_version_of.rb
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
# -----------------------------------------------------------------------------
|
2
|
-
#
|
2
|
+
#
|
3
3
|
# Versionomy basic tests on standard schema
|
4
|
-
#
|
4
|
+
#
|
5
5
|
# This file contains tests for the basic use cases on the standard schema
|
6
|
-
#
|
6
|
+
#
|
7
7
|
# -----------------------------------------------------------------------------
|
8
8
|
# Copyright 2008-2009 Daniel Azuma
|
9
|
-
#
|
9
|
+
#
|
10
10
|
# All rights reserved.
|
11
|
-
#
|
11
|
+
#
|
12
12
|
# Redistribution and use in source and binary forms, with or without
|
13
13
|
# modification, are permitted provided that the following conditions are met:
|
14
|
-
#
|
14
|
+
#
|
15
15
|
# * Redistributions of source code must retain the above copyright notice,
|
16
16
|
# this list of conditions and the following disclaimer.
|
17
17
|
# * Redistributions in binary form must reproduce the above copyright notice,
|
@@ -20,7 +20,7 @@
|
|
20
20
|
# * Neither the name of the copyright holder, nor the names of any other
|
21
21
|
# contributors to this software, may be used to endorse or promote products
|
22
22
|
# derived from this software without specific prior written permission.
|
23
|
-
#
|
23
|
+
#
|
24
24
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
25
25
|
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
26
26
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
@@ -41,10 +41,10 @@ require 'versionomy'
|
|
41
41
|
|
42
42
|
module Versionomy
|
43
43
|
module Tests # :nodoc:
|
44
|
-
|
44
|
+
|
45
45
|
class TestVersionOf < ::Test::Unit::TestCase # :nodoc:
|
46
|
-
|
47
|
-
|
46
|
+
|
47
|
+
|
48
48
|
# Gems to test if we can
|
49
49
|
GEM_LIST = {
|
50
50
|
'activerecord' => {:require => 'active_record', :module_name => 'ActiveRecord'},
|
@@ -52,8 +52,8 @@ module Versionomy
|
|
52
52
|
'bundler' => {:module_name => 'Bundler'},
|
53
53
|
'erubis' => {:module_name => 'Erubis'},
|
54
54
|
}
|
55
|
-
|
56
|
-
|
55
|
+
|
56
|
+
|
57
57
|
# Engine that tests each gem if it's installed
|
58
58
|
zero_ = ::Versionomy.create(:major => 0)
|
59
59
|
GEM_LIST.each do |name_, data_|
|
@@ -73,9 +73,9 @@ module Versionomy
|
|
73
73
|
assert_not_equal(zero_, value_)
|
74
74
|
end
|
75
75
|
end
|
76
|
-
|
77
|
-
|
76
|
+
|
77
|
+
|
78
78
|
end
|
79
|
-
|
79
|
+
|
80
80
|
end
|
81
81
|
end
|
metadata
CHANGED
@@ -1,39 +1,38 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: versionomy
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.4.2
|
4
5
|
prerelease:
|
5
|
-
version: 0.4.1
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Daniel Azuma
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-02-17 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
16
15
|
name: blockenspiel
|
17
|
-
|
18
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2156310880 !ruby/object:Gem::Requirement
|
19
17
|
none: false
|
20
|
-
requirements:
|
21
|
-
- -
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 0.4.
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.4.3
|
24
22
|
type: :runtime
|
25
|
-
|
26
|
-
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *2156310880
|
25
|
+
description: Versionomy is a generalized version number library. It provides tools
|
26
|
+
to represent, manipulate, parse, and compare version numbers in the wide variety
|
27
|
+
of versioning schemes in use.
|
27
28
|
email: dazuma@gmail.com
|
28
29
|
executables: []
|
29
|
-
|
30
30
|
extensions: []
|
31
|
-
|
32
|
-
extra_rdoc_files:
|
31
|
+
extra_rdoc_files:
|
33
32
|
- History.rdoc
|
34
33
|
- README.rdoc
|
35
34
|
- Versionomy.rdoc
|
36
|
-
files:
|
35
|
+
files:
|
37
36
|
- lib/versionomy/conversion/base.rb
|
38
37
|
- lib/versionomy/conversion/parsing.rb
|
39
38
|
- lib/versionomy/conversion.rb
|
@@ -71,32 +70,29 @@ files:
|
|
71
70
|
- Version
|
72
71
|
homepage: http://virtuoso.rubyforge.org/versionomy
|
73
72
|
licenses: []
|
74
|
-
|
75
73
|
post_install_message:
|
76
74
|
rdoc_options: []
|
77
|
-
|
78
|
-
require_paths:
|
75
|
+
require_paths:
|
79
76
|
- lib
|
80
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
77
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
81
78
|
none: false
|
82
|
-
requirements:
|
83
|
-
- -
|
84
|
-
- !ruby/object:Gem::Version
|
79
|
+
requirements:
|
80
|
+
- - ! '>='
|
81
|
+
- !ruby/object:Gem::Version
|
85
82
|
version: 1.8.7
|
86
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
83
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
87
84
|
none: false
|
88
|
-
requirements:
|
89
|
-
- -
|
90
|
-
- !ruby/object:Gem::Version
|
85
|
+
requirements:
|
86
|
+
- - ! '>'
|
87
|
+
- !ruby/object:Gem::Version
|
91
88
|
version: 1.3.1
|
92
89
|
requirements: []
|
93
|
-
|
94
90
|
rubyforge_project: virtuoso
|
95
|
-
rubygems_version: 1.
|
91
|
+
rubygems_version: 1.8.17
|
96
92
|
signing_key:
|
97
93
|
specification_version: 3
|
98
94
|
summary: Versionomy is a generalized version number library.
|
99
|
-
test_files:
|
95
|
+
test_files:
|
100
96
|
- test/tc_custom_format.rb
|
101
97
|
- test/tc_readme_examples.rb
|
102
98
|
- test/tc_rubygems_basic.rb
|