versionomy 0.4.1 → 0.4.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|