naturalsorter 3.0.18 → 3.0.23

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 00d43f59d162fae1a70fd22f3362d15c2425c62a
4
- data.tar.gz: fc581607d0658b4f8bb5392e55a148804821b5aa
2
+ SHA256:
3
+ metadata.gz: 9290de5341a8ef7b6b9be56c88f1681f809a3c5228a88747c9e2ea45d6c514cc
4
+ data.tar.gz: d4d8428298d684556241c1cdd9d9fb55e87214e1f593808abaa7072fb660ae6d
5
5
  SHA512:
6
- metadata.gz: 8949a480245b8db9ea956ed9aec2c4668dcb2b50213d83e16f49d0028444899e08595a65df75f4f9d14dc4edef7df507fc3829ba7e54ae61bba5cde58518aca1
7
- data.tar.gz: 89a45aa107e5afca1f9a019a42cc2ce5a2cbc763719837d518cdd228311c22a8c7c04f01c546b12509ef58e8de7f77e6e958258412445346abd37ad60cc86e75
6
+ metadata.gz: ea5558167d520a1593f1465f4523cc31d0bda2cf84a0ff0412108d5b15b166e2a71134fda097e16efeb263257d8c95496fb3b7cb756a858797d6fad0b899d56b
7
+ data.tar.gz: 4b6347068aac95054d835b9498157c0d68bc71d3ed62790412f977b89c9a9785171c8a463da11888427731e2aeacabf0a2a9f16f016dcf24e687318b138cdcd1
@@ -0,0 +1 @@
1
+ ve-ns
@@ -1 +1 @@
1
- 2.2.3
1
+ 2.5.8
@@ -27,7 +27,7 @@ Because the default sort method does not recognize the numbers in the string. Th
27
27
 
28
28
  You should add this line to your Gemfile
29
29
 
30
- `gem 'naturalsorter', '3.0.16'`
30
+ `gem 'naturalsorter', '3.0.22'`
31
31
 
32
32
  and run this command in your app root directory
33
33
 
@@ -1,3 +1,3 @@
1
1
  module Naturalsorter
2
- VERSION = "3.0.18"
2
+ VERSION = "3.0.23"
3
3
  end
@@ -24,12 +24,24 @@ class VersionTagRecognizer
24
24
  return 1
25
25
  end
26
26
 
27
+ def self.value_for_key( value )
28
+ return 0 if A_STABILITY_DEV.eql? value
29
+ return 2 if A_STABILITY_SNAPSHOT.eql? value
30
+ return 3 if A_STABILITY_ALPHA.eql? value
31
+ return 4 if A_STABILITY_BETA.eql? value
32
+ return 5 if A_STABILITY_RC.eql? value
33
+ return 6 if A_STABILITY_PRE.eql? value
34
+ return 10 if A_STABILITY_STABLE.eql? value
35
+ return 11 if A_STABILITY_PATCH.eql? value
36
+ return 1
37
+ end
38
+
27
39
  def self.compare_tags( a, b)
28
40
  a_val = self.value_for a
29
41
  b_val = self.value_for b
30
42
  return -1 if a_val < b_val
31
43
  return 1 if a_val > b_val
32
- return 0
44
+ return 0
33
45
  end
34
46
 
35
47
  def self.tagged? value
@@ -69,26 +81,34 @@ class VersionTagRecognizer
69
81
  val.gsub!(/@.*$/, "") if val.match(/@.*$/)
70
82
  end
71
83
 
84
+
72
85
  def self.does_it_fit_stability?( version_number, stability )
73
- patch = self.patch?( version_number )
74
- stable = self.stable?( version_number )
75
- pre = stable || self.pre?( version_number )
76
- rc = stable || self.rc?( version_number )
77
- beta = rc || self.beta?( version_number )
78
- alpha = beta || self.alpha?( version_number )
79
- snapshot = alpha || self.pre?( version_number ) || self.snapshot?( version_number )
80
-
81
- return true if (stability.casecmp( A_STABILITY_PATCH ) == 0) && patch
82
- return true if (stability.casecmp( A_STABILITY_STABLE ) == 0) && stable
83
- return true if (stability.casecmp( A_STABILITY_PRE ) == 0) && pre
84
- return true if (stability.casecmp( A_STABILITY_RC ) == 0) && rc
85
- return true if (stability.casecmp( A_STABILITY_BETA ) == 0) && beta
86
- return true if (stability.casecmp( A_STABILITY_ALPHA ) == 0) && alpha
86
+ patch = self.patch?( version_number )
87
+ return true if (stability.casecmp( A_STABILITY_PATCH ) == 0) && patch
88
+
89
+ stable = self.stable?( version_number )
90
+ return true if (stability.casecmp( A_STABILITY_STABLE ) == 0) && stable
91
+
92
+ pre = stable || self.pre?( version_number )
93
+ return true if (stability.casecmp( A_STABILITY_PRE ) == 0) && pre
94
+
95
+ rc = stable || self.rc?( version_number )
96
+ return true if (stability.casecmp( A_STABILITY_RC ) == 0) && rc
97
+
98
+ beta = rc || self.beta?( version_number )
99
+ return true if (stability.casecmp( A_STABILITY_BETA ) == 0) && beta
100
+
101
+ alpha = beta || self.alpha?( version_number )
102
+ return true if (stability.casecmp( A_STABILITY_ALPHA ) == 0) && alpha
103
+
104
+ snapshot = alpha || self.pre?( version_number ) || self.snapshot?( version_number )
87
105
  return true if (stability.casecmp( A_STABILITY_SNAPSHOT ) == 0) && snapshot
88
106
  return true if (stability.casecmp( A_STABILITY_DEV ) == 0)
107
+
89
108
  return false
90
109
  end
91
110
 
111
+
92
112
  def self.stability_tag_for( version )
93
113
  if version.match(/@.*$/)
94
114
  spliti = version.split("@")
@@ -234,6 +234,7 @@ class Versioncmp
234
234
  replace_99_does_not_exist cleaned_version
235
235
  replace_timestamps cleaned_version
236
236
  replace_groovy cleaned_version
237
+ replace_redhatx cleaned_version
237
238
  VersionTagRecognizer.remove_minimum_stability cleaned_version
238
239
  cleaned_version
239
240
  end
@@ -257,6 +258,12 @@ class Versioncmp
257
258
  end
258
259
  end
259
260
 
261
+ def self.replace_redhatx val
262
+ if val.match(/\-redhat\-[0-9]+$/i)
263
+ val.gsub!(/\-redhat\-[0-9]+$/i, "")
264
+ end
265
+ end
266
+
260
267
 
261
268
  # Some glory Java Devs used the timestamp as version string
262
269
  # http://www.versioneye.com/package/commons-beanutils--commons-beanutils
@@ -280,7 +287,7 @@ class Versioncmp
280
287
 
281
288
  def self.replace_x_dev val
282
289
  new_val = String.new(val)
283
- if val.eql?("dev-master")
290
+ if ['dev-master', 'master', 'trunk'].include?( val )
284
291
  new_val = "99999999999"
285
292
  elsif val.eql?("dev-develop")
286
293
  new_val = "9999999999"
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
22
22
  # specify any dependencies here; for example:
23
23
  # s.add_development_dependency "rspec"
24
24
  # s.add_runtime_dependency "rest-client"
25
- s.add_development_dependency "rspec", "3.2.0"
26
- s.add_development_dependency "coveralls", "0.8.3"
27
- s.add_development_dependency "simplecov", "0.10.0"
25
+ s.add_development_dependency "rspec", "3.9.0"
26
+ s.add_development_dependency "coveralls", "0.8.23"
27
+ s.add_development_dependency "simplecov", "0.16.1"
28
28
  end
@@ -297,6 +297,31 @@ describe VersionTagRecognizer do
297
297
  end
298
298
 
299
299
 
300
+ it "returns the right value for stable" do
301
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_STABLE)).to eql(10)
302
+ end
303
+ it "returns the right value for patch" do
304
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_PATCH)).to eql(11)
305
+ end
306
+ it "returns the right value for pre" do
307
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_PRE)).to eql(6)
308
+ end
309
+ it "returns the right value for rc" do
310
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_RC)).to eql(5)
311
+ end
312
+ it "returns the right value for beta" do
313
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_BETA)).to eql(4)
314
+ end
315
+ it "returns the right value for alpha" do
316
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_ALPHA)).to eql(3)
317
+ end
318
+ it "returns the right value for snapshot" do
319
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_SNAPSHOT)).to eql(2)
320
+ end
321
+ it "returns the right value for dev" do
322
+ expect( VersionTagRecognizer.value_for_key(VersionTagRecognizer::A_STABILITY_DEV)).to eql(0)
323
+ end
324
+
300
325
 
301
326
  it "returns compares right for alpha and beta" do
302
327
  expect( VersionTagRecognizer.compare_tags("1.1.1-alpha", "1.1.1-beta")).to eql(-1)
@@ -334,6 +359,9 @@ describe VersionTagRecognizer do
334
359
  it "does fit stability" do
335
360
  expect( VersionTagRecognizer.does_it_fit_stability?( "2.2.1-BETA", "beta" )).to be_truthy
336
361
  end
362
+ it "does fit stability" do
363
+ expect( VersionTagRecognizer.does_it_fit_stability?( "2.2.1-alpha", "beta" )).to be_falsey
364
+ end
337
365
  it "does fit stability" do
338
366
  expect( VersionTagRecognizer.does_it_fit_stability?( "2.2.x-dev", "dev" )).to be_truthy
339
367
  end
@@ -95,6 +95,14 @@ describe Versioncmp do
95
95
  expect( Versioncmp.compare("dev-master", "10.10.999")).to eql(1)
96
96
  end
97
97
 
98
+ it "master is bigger than 10.10.999" do
99
+ expect( Versioncmp.compare("master", "10.10.999")).to eql(1)
100
+ end
101
+
102
+ it "trunk is bigger than 10.10.999" do
103
+ expect( Versioncmp.compare("trunk", "10.10.999")).to eql(1)
104
+ end
105
+
98
106
  it "2.2.x-dev is bigger than 2.2.1" do
99
107
  expect( Versioncmp.compare("2.2.x-dev", "2.2.1")).to eql(1)
100
108
  end
@@ -141,6 +149,14 @@ describe Versioncmp do
141
149
  expect( Versioncmp.compare("1.0", "1.0.0")).to eql(0)
142
150
  end
143
151
 
152
+ it "equal" do
153
+ expect( Versioncmp.compare("3.3.1.Final", "3.3.1.Final-redhat-1")).to eql(0)
154
+ end
155
+
156
+ it "equal" do
157
+ expect( Versioncmp.compare("3.3.1.Final", "3.3.1.Final-RedHat-33")).to eql(0)
158
+ end
159
+
144
160
  it "1.0.0 is smaller than 1.0.*" do
145
161
  expect( Versioncmp.compare("1.0.0", "1.0.*")).to eql(-1)
146
162
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: naturalsorter
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.18
4
+ version: 3.0.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - reiz
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-07-14 00:00:00.000000000 Z
12
+ date: 2020-06-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
@@ -17,42 +17,42 @@ dependencies:
17
17
  requirements:
18
18
  - - '='
19
19
  - !ruby/object:Gem::Version
20
- version: 3.2.0
20
+ version: 3.9.0
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - '='
26
26
  - !ruby/object:Gem::Version
27
- version: 3.2.0
27
+ version: 3.9.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: coveralls
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - '='
33
33
  - !ruby/object:Gem::Version
34
- version: 0.8.3
34
+ version: 0.8.23
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - '='
40
40
  - !ruby/object:Gem::Version
41
- version: 0.8.3
41
+ version: 0.8.23
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: simplecov
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - '='
47
47
  - !ruby/object:Gem::Version
48
- version: 0.10.0
48
+ version: 0.16.1
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - '='
54
54
  - !ruby/object:Gem::Version
55
- version: 0.10.0
55
+ version: 0.16.1
56
56
  description: This GEM is sorting Arrays in a natural order. a2 < a10. Beside that
57
57
  this GEM has some methods to sort version strings. It even recognises alpha, beta,
58
58
  RC, dev and stable versions.
@@ -64,6 +64,7 @@ extra_rdoc_files: []
64
64
  files:
65
65
  - ".coveralls.yml"
66
66
  - ".gitignore"
67
+ - ".ruby-gemset"
67
68
  - ".ruby-version"
68
69
  - ".travis.yml"
69
70
  - Gemfile
@@ -99,8 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
100
  - !ruby/object:Gem::Version
100
101
  version: '0'
101
102
  requirements: []
102
- rubyforge_project: naturalsorter
103
- rubygems_version: 2.4.8
103
+ rubygems_version: 3.0.8
104
104
  signing_key:
105
105
  specification_version: 4
106
106
  summary: Sorting arrays in natural order