fun_with_version_strings 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NDk1MmRkZjVlMjJmMzA5MDY3MTQxOThkMzQyYTdhMzg3MzNjMTZjZA==
5
+ data.tar.gz: !binary |-
6
+ MzU4M2E5YWY2YWMyYzZhZDZlNzg4MjdkYjUzMWMwYjI3NzE2MzlkMw==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ NzhiOWQyYjA5YmE3Mzk3YzFlY2YzMDMyZGMzNjI4NWYzZjFiMjgyODE1ZDkw
10
+ NjMzZDIwZjM4MDQ5NWU3ZTU0ZGI4NDFhOGNmNGJjOGNkZWRhNjgxZTFhYzZi
11
+ YjRhYTM5ZDNkNTgxNGUxOTE2ZjY5NDY1NzcyOTYwMDQxZGI5ZDE=
12
+ data.tar.gz: !binary |-
13
+ YmViMjA3NzgwMmI5YTVhMmYzYjVlODIxYjkzYTcyZjNhYmVlYmIzNmUwMGQy
14
+ MWMxOTViYTk3Y2I4NDE5MmNmZjVjODA4MTJkMjYwZTVjNzlhMjZiYTA0ZGI3
15
+ N2IzOGYyOWVmMjQ5NGUzNWM2NjliNjA4ZmYxYjQ4MmJlNWNkOWU=
data/Gemfile CHANGED
@@ -6,10 +6,11 @@ source "http://rubygems.org"
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "shoulda", ">= 0"
9
+ gem "shoulda", "~> 3.5"
10
10
  gem "rdoc", "~> 3.12"
11
- gem "bundler", "~> 1.3.5"
12
- gem "jeweler", "~> 1.8.4"
11
+ gem "bundler", "~> 1.0"
12
+ gem "jeweler", "~> 2.0.1"
13
+ gem "simplecov", ">= 0.8"
13
14
  end
14
15
 
15
16
  gem "fun_with_files"
data/README.rdoc CHANGED
@@ -24,11 +24,17 @@ You can also compare versions. Observe:
24
24
  version_b > version_a # => true
25
25
  version_b < version_a # => false
26
26
 
27
- But comparisons are a bit tricky. It will try to compare standard strings as version strings, if the standard string is of the proper format. Otherwise
28
- it will compare the two as regular strings. Note that this means that the
29
- comparison behaves differently depending on whether the left-hand side is
30
- a regular string.
31
-
27
+ But comparisons are a bit tricky. It will try to compare standard strings as version strings, if the standard string is of the proper format. Otherwise it will compare the two as regular strings.
28
+
29
+ If the versionized object responds to ".root" and that root is a FunWith::Files::FilePath, you don't need to give a version. versionize() will try to read the version from the VERSION file in the root directory.
30
+
31
+ It's a common pattern with my gems.
32
+
33
+ Other useful stuff:
34
+
35
+ "10.4.9".fwvs_version_string.patch # => 9
36
+
37
+
32
38
 
33
39
  == Contributing to fun_with_version_strings
34
40
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.0.3
@@ -7,11 +7,12 @@ module FunWith
7
7
  # my gems.
8
8
  def versionize( obj, version_string = nil )
9
9
  if obj.respond_to?(:version)
10
- warn( "FunWith::VersionStrings (warn): #{obj.to_s[0..100]} already responds to version()")
10
+ warn( "FunWith::VersionStrings (warn): #{obj.to_s[0..100]} already responds to version(). Leaving alone.")
11
+ return nil
11
12
  end
12
13
 
13
14
  if version_string.nil?
14
- if obj.respond_to?(:root) && obj.root("VERSION").file?
15
+ if obj.respond_to?(:root) && obj.root.is_a?(FunWith::Files::FilePath) && obj.root("VERSION").file?
15
16
  version_string = obj.root("VERSION").read
16
17
  else
17
18
  raise "No version string specified, and cannot infer version from VERSION file."
@@ -1,9 +1,5 @@
1
1
  class String
2
2
  def fwvs_version_string
3
- if self.is_a?(FunWith::VersionStrings::VersionString)
4
- self.dup
5
- else
6
- FunWith::VersionStrings::VersionString.new( self )
7
- end
3
+ FunWith::VersionStrings::VersionString.new( self )
8
4
  end
9
5
  end
@@ -82,7 +82,18 @@ class TestFunWithVersionStrings < VersionStringsTestCase
82
82
  end
83
83
  end
84
84
 
85
- should "compare incorrectly when dealing with regular strings" do
86
- flunk "not written"
85
+ should "compare as strings when compared string doesn't fit the format" do
86
+ v = "10.0.10".fwvs_version_string
87
+
88
+ comparisons = [[1, "0a"],
89
+ [1, "--"],
90
+ [1, "..?"],
91
+ [-1, "5 is a number"]
92
+ ]
93
+
94
+
95
+ for compare in comparisons
96
+ assert_equal compare.first, ( v <=> compare.last )
97
+ end
87
98
  end
88
99
  end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fun_with_version_strings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
5
- prerelease:
4
+ version: 0.0.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Bryce Anderson
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-02-02 00:00:00.000000000 Z
11
+ date: 2014-03-20 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: fun_with_files
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ! '>='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ! '>='
28
25
  - !ruby/object:Gem::Version
@@ -30,23 +27,20 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: shoulda
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ~>
36
32
  - !ruby/object:Gem::Version
37
- version: '0'
33
+ version: '3.5'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ~>
44
39
  - !ruby/object:Gem::Version
45
- version: '0'
40
+ version: '3.5'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rdoc
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,35 +55,45 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: bundler
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
69
- version: 1.3.5
61
+ version: '1.0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
77
- version: 1.3.5
68
+ version: '1.0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: jeweler
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ~>
84
74
  - !ruby/object:Gem::Version
85
- version: 1.8.4
75
+ version: 2.0.1
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
80
  - - ~>
92
81
  - !ruby/object:Gem::Version
93
- version: 1.8.4
82
+ version: 2.0.1
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.8'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0.8'
94
97
  description: A simple little gem for adding a version string to any Ruby object.
95
98
  email: keeputahweird@gmail.com
96
99
  executables: []
@@ -116,29 +119,25 @@ files:
116
119
  homepage: http://github.com/darthschmoo/fun_with_version_strings
117
120
  licenses:
118
121
  - MIT
122
+ metadata: {}
119
123
  post_install_message:
120
124
  rdoc_options: []
121
125
  require_paths:
122
126
  - lib
123
127
  required_ruby_version: !ruby/object:Gem::Requirement
124
- none: false
125
128
  requirements:
126
129
  - - ! '>='
127
130
  - !ruby/object:Gem::Version
128
131
  version: '0'
129
- segments:
130
- - 0
131
- hash: 3139587629202339878
132
132
  required_rubygems_version: !ruby/object:Gem::Requirement
133
- none: false
134
133
  requirements:
135
134
  - - ! '>='
136
135
  - !ruby/object:Gem::Version
137
136
  version: '0'
138
137
  requirements: []
139
138
  rubyforge_project:
140
- rubygems_version: 1.8.25
139
+ rubygems_version: 2.2.2
141
140
  signing_key:
142
- specification_version: 3
141
+ specification_version: 4
143
142
  summary: Add a version string (with :major,:minor, and :patch methods) to a Ruby object.
144
143
  test_files: []