agile_utils 0.1.4 → 0.1.5

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: ca7cc30d331f283e9fe0c4f4e7d9d227040e7b3d
4
- data.tar.gz: 09885e2202d776308cddf7edf3b1289dd9cf9900
3
+ metadata.gz: f50e652ce299a2e408bd3a6f52854701dfa9a2b6
4
+ data.tar.gz: e1caa27c97160b4832741ef51df9c56a999ff2a0
5
5
  SHA512:
6
- metadata.gz: c77b3326d64e4ec1c70e78afab81d9a36a68e18c413dd4344f0993f6b5a8317198c8d57c8d76cd024cef950c7b5952f5c84f7ed3c3c252ec49a275c7b989be3f
7
- data.tar.gz: ca12be1bec9164bb7303e7fbd1101d13a079d8e8e4ba96240682aa4cc5a4e97f41af027bef3b107a9a2082652f46d3dd8f99cff1857858c48b68f39d70d91b35
6
+ metadata.gz: 9a8aff4fc72070fbab97a0037f06ec37fe1200eb1cf28ec8ad87efcd21835c1b48b3b104bf425e368b5f64c6709e3d7d63e4b39b6ae73e88ad249cee39804059
7
+ data.tar.gz: a3e2e44119e65efaa3eb13904c4558771fe21b41fa0f8edd6cc836579a2864f4cb4d7cc5bfe5e064d57b8a94b5053ec798a2845f392a11c6595972969794f837
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ #### 0.1.5
2
+
3
+ - Organize the core_ext class
4
+ - Add `blank.rb` class
5
+
1
6
  #### 0.1.4
2
7
 
3
8
  - Add the new api for getting the command from shell command
data/lib/agile_utils.rb CHANGED
@@ -1,5 +1,4 @@
1
- require_relative "./agile_utils/core_ext/hash/hash"
2
- require_relative "./agile_utils/core_ext/kernel/reporting"
1
+ require_relative "./agile_utils/core_ext/all"
3
2
  require_relative "./agile_utils/version"
4
3
  require_relative "./agile_utils/logger"
5
4
  require_relative "./agile_utils/cli"
@@ -0,0 +1,3 @@
1
+ require_relative "./hash/hash"
2
+ require_relative "./kernel/reporting"
3
+ require_relative "./object/blank"
@@ -0,0 +1,105 @@
1
+ # encoding: utf-8
2
+ # from: active_support/core_ext/object/blank.rb
3
+ class Object
4
+ # An object is blank if it's false, empty, or a whitespace string.
5
+ # For example, '', ' ', +nil+, [], and {} are all blank.
6
+ #
7
+ # This simplifies:
8
+ #
9
+ # if address.nil? || address.empty?
10
+ #
11
+ # ...to:
12
+ #
13
+ # if address.blank?
14
+ def blank?
15
+ respond_to?(:empty?) ? empty? : !self
16
+ end
17
+
18
+ # An object is present if it's not <tt>blank?</tt>.
19
+ def present?
20
+ !blank?
21
+ end
22
+
23
+ # Returns object if it's <tt>present?</tt> otherwise returns +nil+.
24
+ # <tt>object.presence</tt> is equivalent to <tt>object.present? ? object : nil</tt>.
25
+ #
26
+ # This is handy for any representation of objects where blank is the same
27
+ # as not present at all. For example, this simplifies a common check for
28
+ # HTTP POST/query parameters:
29
+ #
30
+ # state = params[:state] if params[:state].present?
31
+ # country = params[:country] if params[:country].present?
32
+ # region = state || country || 'US'
33
+ #
34
+ # ...becomes:
35
+ #
36
+ # region = params[:state].presence || params[:country].presence || 'US'
37
+ def presence
38
+ self if present?
39
+ end
40
+ end
41
+
42
+ class NilClass
43
+ # +nil+ is blank:
44
+ #
45
+ # nil.blank? # => true
46
+ def blank?
47
+ true
48
+ end
49
+ end
50
+
51
+ class FalseClass
52
+ # +false+ is blank:
53
+ #
54
+ # false.blank? # => true
55
+ def blank?
56
+ true
57
+ end
58
+ end
59
+
60
+ class TrueClass
61
+ # +true+ is not blank:
62
+ #
63
+ # true.blank? # => false
64
+ def blank?
65
+ false
66
+ end
67
+ end
68
+
69
+ class Array
70
+ # An array is blank if it's empty:
71
+ #
72
+ # [].blank? # => true
73
+ # [1,2,3].blank? # => false
74
+ alias_method :blank?, :empty?
75
+ end
76
+
77
+ class Hash
78
+ # A hash is blank if it's empty:
79
+ #
80
+ # {}.blank? # => true
81
+ # { key: 'value' }.blank? # => false
82
+ alias_method :blank?, :empty?
83
+ end
84
+
85
+ class String
86
+ # A string is blank if it's empty or contains whitespaces only:
87
+ #
88
+ # ''.blank? # => true
89
+ # ' '.blank? # => true
90
+ # ' '.blank? # => true
91
+ # ' something here '.blank? # => false
92
+ def blank?
93
+ self !~ /[^[:space:]]/
94
+ end
95
+ end
96
+
97
+ class Numeric #:nodoc:
98
+ # No number is blank:
99
+ #
100
+ # 1.blank? # => false
101
+ # 0.blank? # => false
102
+ def blank?
103
+ false
104
+ end
105
+ end
@@ -1,3 +1,3 @@
1
1
  module AgileUtils
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: agile_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Burin Choomnuan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-21 00:00:00.000000000 Z
11
+ date: 2014-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -214,8 +214,10 @@ files:
214
214
  - lib/agile_utils/base_option.rb
215
215
  - lib/agile_utils/cli.rb
216
216
  - lib/agile_utils/constant.rb
217
+ - lib/agile_utils/core_ext/all.rb
217
218
  - lib/agile_utils/core_ext/hash/hash.rb
218
219
  - lib/agile_utils/core_ext/kernel/reporting.rb
220
+ - lib/agile_utils/core_ext/object/blank.rb
219
221
  - lib/agile_utils/file_util.rb
220
222
  - lib/agile_utils/helper.rb
221
223
  - lib/agile_utils/logger.rb
@@ -252,11 +254,11 @@ signing_key:
252
254
  specification_version: 4
253
255
  summary: Collection of my ruby library that can be re-used across projects
254
256
  test_files:
255
- - test/fixtures/inputs/demo1.xxx.rb
256
- - test/fixtures/inputs/demo2.xxx.rb
257
- - test/fixtures/outputs/demo1.xhtml
258
- - test/fixtures/outputs/demo2.xhtml
259
- - test/lib/agile_utils/test_file_util.rb
260
257
  - test/lib/agile_utils/test_helper.rb
258
+ - test/lib/agile_utils/test_file_util.rb
261
259
  - test/test_helper.rb
260
+ - test/fixtures/outputs/demo1.xhtml
261
+ - test/fixtures/outputs/demo2.xhtml
262
+ - test/fixtures/inputs/demo2.xxx.rb
263
+ - test/fixtures/inputs/demo1.xxx.rb
262
264
  has_rdoc: