ensure_it 0.1.2 → 0.1.3

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
2
  SHA1:
3
- metadata.gz: 5ba3443d9d913fa270efaafb09ed62ff942ccb97
4
- data.tar.gz: 1748051d5985f1a9ae54f9eec83d7fd70666695a
3
+ metadata.gz: 5d381a0a403aaacdf696b7c0a266bce2fa39ae74
4
+ data.tar.gz: 25c551cabb907a4c8319a5e1b21745033eba16ec
5
5
  SHA512:
6
- metadata.gz: a7c50aa22687707d9ab0940aa8bc66bb5dc90c7da4ede7790f99437359acfed6846bf3ece8dfc23fa4c91afaf1ca1a3d6e9c1e88a8746bf5aca18f9dde96c862
7
- data.tar.gz: f998fe70c88c0660373d53faa54a4c6076b3c5bd34c7bf3db4a28cf3598c449ebc9523ae9fa39b7f50c923d582515efa8315affdc0526726e342d9a5a3bc4d50
6
+ metadata.gz: ee79f33c6d6029d32b4b6bb363a9247c22580805d3665bb1ec7f7895ee44faac4dec601d6f1b506c17b5a583f931ee6e9e23e8b05759bd21fa90235a6dc305c1
7
+ data.tar.gz: c65f42a800eff72dc0a663d0f92ad9e4a9a3eabbcbfb7a8126b8384f43115d9b3ff613c86e6f569996524f1fa5154f3a8d1607a00ca84b72d9a5b52397daa33a
data/README.md CHANGED
@@ -11,7 +11,7 @@ The main goal of EnsureIt is to provide as fast executed code as it possible wit
11
11
 
12
12
  > **Note:** this library doesn't support ruby older than `2.0.0`
13
13
 
14
- The simplest example, that you can find at `examples/symbol.rb`:
14
+ Simplest example (you can find at `examples/symbol.rb`):
15
15
 
16
16
  ```ruby
17
17
  require 'rubygems'
@@ -128,6 +128,8 @@ Returns self for Symbol, converted value for String, nil (or raise) for other:
128
128
  :one.esnure_symbol(values: %i(one two)) # => :one
129
129
  'test'.esnure_symbol(values: %i(one two)) # => nil
130
130
  'one'.esnure_symbol(values: %i(one two)) # => :one
131
+ :Test.ensure_symbol(downcase: true) # => :test
132
+ 'Test'.ensure_symbol(downcase: true) # => :test
131
133
  ```
132
134
 
133
135
  ### ensure_string, ensure_string!
@@ -139,6 +141,7 @@ By default, returns self for String, converted value for Symbol and nil (or rais
139
141
  'test'.ensure_string # => 'test'
140
142
  100.ensure_string # => nil
141
143
  100.ensure_string(numbers: true) # => '100'
144
+ :Test.ensure_string(downcase: true) # => 'test'
142
145
  ```
143
146
 
144
147
  ### ensure_integer, ensure_integer!
@@ -369,6 +372,9 @@ thor ensure_it:benchmark:all -n 1000 -s
369
372
 
370
373
  ## Changelog
371
374
 
375
+ `0.1.3`
376
+ * downcase option added to `ensure_symbol` and `ensure_string`
377
+
372
378
  `0.1.2`
373
379
  * smart errors refactored
374
380
  * benchmarking added
@@ -406,6 +412,7 @@ thor ensure_it:benchmark:all -n 1000 -s
406
412
  * ActiveSupport and MongoId integration
407
413
  * custom extending functionality support
408
414
  * profiling distribution
415
+ * documenting with yard
409
416
 
410
417
  ## Contributing
411
418
 
@@ -13,17 +13,19 @@ module EnsureIt
13
13
  end
14
14
 
15
15
  patch String do
16
- def ensure_string(default: nil, values: nil, **opts)
17
- if values.nil? || values.is_a?(Array) && values.include?(self)
18
- self
16
+ def ensure_string(default: nil, values: nil, downcase: nil, **opts)
17
+ value = downcase == true ? self.downcase : self
18
+ if values.nil? || values.is_a?(Array) && values.include?(value)
19
+ value
19
20
  else
20
21
  default
21
22
  end
22
23
  end
23
24
 
24
- def ensure_string!(default: nil, values: nil, **opts)
25
- if values.nil? || values.is_a?(Array) && values.include?(self)
26
- return self
25
+ def ensure_string!(default: nil, values: nil, downcase: nil, **opts)
26
+ value = downcase == true ? self.downcase : self
27
+ if values.nil? || values.is_a?(Array) && values.include?(value)
28
+ return value
27
29
  end
28
30
  EnsureIt.raise_error(
29
31
  :ensure_string!,
@@ -33,22 +35,19 @@ module EnsureIt
33
35
  end
34
36
 
35
37
  patch Symbol do
36
- def ensure_string(default: nil, values: nil, **opts)
37
- if values.nil?
38
- to_s
39
- elsif values.is_a?(Array)
40
- value = to_s
41
- values.include?(value) ? value : default
38
+ def ensure_string(default: nil, values: nil, downcase: nil, **opts)
39
+ value = downcase == true ? to_s.downcase : to_s
40
+ if values.nil? || values.is_a?(Array) && values.include?(value)
41
+ value
42
42
  else
43
43
  default
44
44
  end
45
45
  end
46
46
 
47
- def ensure_string!(default: nil, values: nil, **opts)
48
- return to_s if values.nil?
49
- if values.is_a?(Array)
50
- value = to_s
51
- return value if values.include?(value)
47
+ def ensure_string!(default: nil, values: nil, downcase: nil, **opts)
48
+ value = downcase == true ? to_s.downcase : to_s
49
+ if values.nil? || values.is_a?(Array) && values.include?(value)
50
+ return value
52
51
  end
53
52
  EnsureIt.raise_error(
54
53
  :ensure_string!,
@@ -13,22 +13,19 @@ module EnsureIt
13
13
  end
14
14
 
15
15
  patch String do
16
- def ensure_symbol(default: nil, values: nil, **opts)
17
- if values.nil?
18
- to_sym
19
- elsif values.is_a?(Array)
20
- value = to_sym
21
- values.include?(value) ? value : default
16
+ def ensure_symbol(default: nil, values: nil, downcase: nil, **opts)
17
+ value = downcase == true ? self.downcase.to_sym : to_sym
18
+ if values.nil? || values.is_a?(Array) && values.include?(value)
19
+ value
22
20
  else
23
21
  default
24
22
  end
25
23
  end
26
24
 
27
- def ensure_symbol!(default: nil, values: nil, **opts)
28
- return to_sym if values.nil?
29
- if values.is_a?(Array)
30
- value = to_sym
31
- return value if values.include?(value)
25
+ def ensure_symbol!(default: nil, values: nil, downcase: nil, **opts)
26
+ value = downcase == true ? self.downcase.to_sym : to_sym
27
+ if values.nil? || values.is_a?(Array) && values.include?(value)
28
+ return value
32
29
  end
33
30
  EnsureIt.raise_error(
34
31
  :ensure_symbol!,
@@ -38,17 +35,19 @@ module EnsureIt
38
35
  end
39
36
 
40
37
  patch Symbol do
41
- def ensure_symbol(default: nil, values: nil, **opts)
42
- if values.nil? || values.is_a?(Array) && values.include?(self)
43
- self
38
+ def ensure_symbol(default: nil, values: nil, downcase: nil, **opts)
39
+ value = downcase == true ? self.to_s.downcase.to_sym : self
40
+ if values.nil? || values.is_a?(Array) && values.include?(value)
41
+ value
44
42
  else
45
43
  default
46
44
  end
47
45
  end
48
46
 
49
- def ensure_symbol!(default: nil, values: nil, **opts)
50
- if values.nil? || values.is_a?(Array) && values.include?(self)
51
- return self
47
+ def ensure_symbol!(default: nil, values: nil, downcase: nil, **opts)
48
+ value = downcase == true ? self.to_s.downcase.to_sym : self
49
+ if values.nil? || values.is_a?(Array) && values.include?(value)
50
+ return value
52
51
  end
53
52
  EnsureIt.raise_error(
54
53
  :ensure_symbol!,
@@ -1,3 +1,3 @@
1
1
  module EnsureIt
2
- VERSION = '0.1.2'
2
+ VERSION = '0.1.3'
3
3
  end
@@ -28,6 +28,11 @@ describe EnsureIt do
28
28
  expect(call_for(0.5, numbers: true)).to eq '0.5'
29
29
  expect(call_for(Rational(2, 3), numbers: true)).to eq '2/3'
30
30
  end
31
+
32
+ it 'and downcases value with downcase option' do
33
+ expect(call_for(:teST, downcase: true)).to eq 'test'
34
+ expect(call_for('teST', downcase: true)).to eq 'test'
35
+ end
31
36
  end
32
37
 
33
38
  describe '#ensure_string' do
@@ -26,6 +26,11 @@ describe EnsureIt do
26
26
  expect(call_for(:test, values: %i(test me))).to eq :test
27
27
  expect(call_for('me', values: %i(test me))).to eq :me
28
28
  end
29
+
30
+ it 'and downcases value with downcase option' do
31
+ expect(call_for(:teST, downcase: true)).to eq :test
32
+ expect(call_for('teST', downcase: true)).to eq :test
33
+ end
29
34
  end
30
35
 
31
36
  describe '#ensure_symbol' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ensure_it
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexey Ovchinnikov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-29 00:00:00.000000000 Z
11
+ date: 2014-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler