utiles 0.0.2 → 0.0.3

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/Gemfile.lock ADDED
@@ -0,0 +1,42 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ utiles (0.0.3)
5
+
6
+ GEM
7
+ remote: http://rubygems.org/
8
+ specs:
9
+ diff-lcs (1.1.3)
10
+ ffi (1.0.11)
11
+ guard (1.2.3)
12
+ listen (>= 0.4.2)
13
+ thor (>= 0.14.6)
14
+ guard-rspec (1.1.0)
15
+ guard (>= 1.1)
16
+ listen (0.4.7)
17
+ rb-fchange (~> 0.0.5)
18
+ rb-fsevent (~> 0.9.1)
19
+ rb-inotify (~> 0.8.8)
20
+ rb-fchange (0.0.5)
21
+ ffi
22
+ rb-fsevent (0.9.1)
23
+ rb-inotify (0.8.8)
24
+ ffi (>= 0.5.0)
25
+ rspec (2.10.0)
26
+ rspec-core (~> 2.10.0)
27
+ rspec-expectations (~> 2.10.0)
28
+ rspec-mocks (~> 2.10.0)
29
+ rspec-core (2.10.1)
30
+ rspec-expectations (2.10.0)
31
+ diff-lcs (~> 1.1.3)
32
+ rspec-mocks (2.10.1)
33
+ thor (0.15.4)
34
+
35
+ PLATFORMS
36
+ ruby
37
+
38
+ DEPENDENCIES
39
+ guard
40
+ guard-rspec
41
+ rspec
42
+ utiles!
data/Guardfile ADDED
@@ -0,0 +1,8 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ guard 'rspec' do
5
+ watch(%r{^spec/.+_spec\.rb$})
6
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
7
+ watch('spec/spec_helper.rb') { "spec" }
8
+ end
data/README.md CHANGED
File without changes
@@ -2,5 +2,5 @@
2
2
  module Utiles
3
3
 
4
4
  # Gem version
5
- VERSION = "0.0.2"
5
+ VERSION = "0.0.3"
6
6
  end
@@ -22,25 +22,7 @@ class Integer
22
22
  # 18539311.to_date_vol => "185 MB"
23
23
  # 18532.to_date_vol => "18,5 kB"
24
24
  def to_data_vol
25
- if self > 1000000000
26
- gb = self / 1000000000
27
- rest = self % 1000000000
28
- s = gb < 10 ? "#{gb},#{rest.to_s[0,2]}" : gb < 100 ? "#{gb},#{(rest.to_s)[0,1]}" : "#{gb}"
29
- "#{s} GB"
30
- elsif self > 1000000
31
- mb = self / 1000000
32
- rest = self % 1000000
33
- s = mb < 10 ? "#{mb},#{rest.to_s[0,2]}" : mb < 100 ? "#{mb},#{(rest.to_s)[0,1]}" : "#{mb}"
34
- "#{s} MB"
35
- elsif self > 1000
36
- kb = self / 1000
37
- rest = self % 1000
38
- s = kb < 10 ? "#{kb},#{rest.to_s[0,2]}" : kb < 100 ? "#{kb},#{(rest.to_s)[0,1]}" : "#{kb}"
39
- "#{s} kB"
40
- elsif self > 0
41
- "#{self} B"
42
- else
43
- "0"
44
- end
45
- end
25
+ to_s.to_data_vol
26
+ end
27
+
46
28
  end
data/lib/utiles_string.rb CHANGED
@@ -32,7 +32,25 @@ class String
32
32
  # "18539311".to_date_vol => "185 MB"
33
33
  # "18532".to_date_vol => "18,5 kB"
34
34
  def to_data_vol
35
- to_i.to_data_vol
35
+ case
36
+ when length > 9
37
+ label = "GB"
38
+ border = 9
39
+ when length > 6
40
+ label = "MB"
41
+ border = 6
42
+ when length > 3
43
+ label = "kB"
44
+ border = 3
45
+ else
46
+ label = "B"
47
+ return self == "0" ? "0" : "#{self} #{label}"
48
+ end
49
+ int = self[0,length-border].to_i
50
+ rest = self[-border,border]
51
+ sets = int < 10 ? rest[0,2] : int < 100 ? rest[0,1] : ""
52
+ setss = int < 100 ? sets.to_i.zero? ? "" : ",#{sets}" : ""
53
+ "#{int}#{setss} #{label}"
36
54
  end
37
55
 
38
56
  end
@@ -1,4 +1,4 @@
1
- require 'utiles'
1
+ require 'lib/utiles'
2
2
 
3
3
  describe NilClass do
4
4
 
@@ -67,6 +67,18 @@ describe String do
67
67
  it "Data in 185 GB" do
68
68
  "185393114721".to_data_vol.should eq("185 GB")
69
69
  end
70
+
71
+ it "Data in 18 GB" do
72
+ "18093114721".to_data_vol.should eq("18 GB")
73
+ end
74
+
75
+ it "Data in 1,05 GB" do
76
+ "1053114721".to_data_vol.should eq("1,05 GB")
77
+ end
78
+
79
+ it "Data in 1 GB" do
80
+ "1003114721".to_data_vol.should eq("1 GB")
81
+ end
70
82
 
71
83
  it "Data in 18 GB" do
72
84
  "18539311472".to_data_vol.should eq("18,5 GB")
@@ -92,6 +104,10 @@ describe String do
92
104
  "18532".to_data_vol.should eq("18,5 kB")
93
105
  end
94
106
 
107
+ it "Data in 1,08 kB" do
108
+ "1080".to_data_vol.should eq("1,08 kB")
109
+ end
110
+
95
111
  it "Data in 185 B" do
96
112
  "185".to_data_vol.should eq("185 B")
97
113
  end
@@ -138,6 +154,58 @@ describe Integer do
138
154
  a = 2
139
155
  a.is_blank?.should be_false
140
156
  end
157
+
158
+ it "Data in 185 GB" do
159
+ 185393114721.to_data_vol.should eq("185 GB")
160
+ end
161
+
162
+ it "Data in 18 GB" do
163
+ 18093114721.to_data_vol.should eq("18 GB")
164
+ end
165
+
166
+ it "Data in 1,05 GB" do
167
+ 1053114721.to_data_vol.should eq("1,05 GB")
168
+ end
169
+
170
+ it "Data in 1 GB" do
171
+ 1003114721.to_data_vol.should eq("1 GB")
172
+ end
173
+
174
+ it "Data in 18 GB" do
175
+ 18539311472.to_data_vol.should eq("18,5 GB")
176
+ end
177
+
178
+ it "Data in 185 MB" do
179
+ 185393114.to_data_vol.should eq("185 MB")
180
+ end
181
+
182
+ it "Data in 18 MB" do
183
+ 18539311.to_data_vol.should eq("18,5 MB")
184
+ end
185
+
186
+ it "Data in 1 MB" do
187
+ 1853931.to_data_vol.should eq("1,85 MB")
188
+ end
189
+
190
+ it "Data in 185 kB" do
191
+ 185322.to_data_vol.should eq("185 kB")
192
+ end
193
+
194
+ it "Data in 18 kB" do
195
+ 18532.to_data_vol.should eq("18,5 kB")
196
+ end
197
+
198
+ it "Data in 1,08 kB" do
199
+ 1080.to_data_vol.should eq("1,08 kB")
200
+ end
201
+
202
+ it "Data in 185 B" do
203
+ 185.to_data_vol.should eq("185 B")
204
+ end
205
+
206
+ it "Data in 0" do
207
+ 0.to_data_vol.should eq("0")
208
+ end
141
209
 
142
210
  end
143
211
 
data/utiles.gemspec CHANGED
@@ -19,4 +19,6 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
21
21
  s.add_development_dependency "rspec", [">= 0"]
22
+ s.add_development_dependency "guard", [">= 0"]
23
+ s.add_development_dependency "guard-rspec", [">= 0"]
22
24
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: utiles
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 2
10
- version: 0.0.2
9
+ - 3
10
+ version: 0.0.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Wojciech Todryk
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-07-05 00:00:00 Z
18
+ date: 2012-07-09 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: rspec
@@ -31,6 +31,34 @@ dependencies:
31
31
  version: "0"
32
32
  type: :development
33
33
  version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: guard
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ type: :development
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: guard-rspec
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ type: :development
61
+ version_requirements: *id003
34
62
  description: Extends standard classes
35
63
  email:
36
64
  - wojciech@todryk.pl
@@ -42,6 +70,8 @@ extra_rdoc_files: []
42
70
 
43
71
  files:
44
72
  - Gemfile
73
+ - Gemfile.lock
74
+ - Guardfile
45
75
  - README.md
46
76
  - Rakefile
47
77
  - lib/utiles.rb
@@ -50,7 +80,7 @@ files:
50
80
  - lib/utiles_integer.rb
51
81
  - lib/utiles_nil.rb
52
82
  - lib/utiles_string.rb
53
- - test/utiles_spec.rb
83
+ - spec/utiles_spec.rb
54
84
  - utiles.gemspec
55
85
  homepage: http://todryk.pl/utiles
56
86
  licenses: []
@@ -86,5 +116,4 @@ signing_key:
86
116
  specification_version: 3
87
117
  summary: Utiles
88
118
  test_files:
89
- - test/utiles_spec.rb
90
- has_rdoc:
119
+ - spec/utiles_spec.rb