object_struct 0.0.4 → 0.0.5

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/CHANGELOG CHANGED
@@ -1,3 +1,7 @@
1
+ ## 0.0.5 (October 4, 2010)
2
+
3
+ Handle capital letters and numbers in has_property?
4
+
1
5
  ## 0.0.4 (September 23, 2010)
2
6
 
3
7
  More presumptous fixes for has_related?
@@ -25,7 +25,7 @@
25
25
  # @abstract You probably want to subclass ObjectStruct, to reflect your business
26
26
  # entities. See the README for example use.
27
27
  class ObjectStruct < OpenStruct
28
- VERSION = '0.0.4'
28
+ VERSION = '0.0.5'
29
29
 
30
30
  # Delegated to Hash#each
31
31
  def each &blk
@@ -71,7 +71,7 @@ class ObjectStruct < OpenStruct
71
71
  # method, it will furthermore make sure #count is greater than zero.
72
72
  # @return the property, if it exists, nil otherwise
73
73
  def method_missing(name, *args)
74
- if name =~ /^has_([a-z_]+)\?$/
74
+ if name =~ /^has_(\w+)\?$/
75
75
  if respond_to? (field = $1.to_sym)
76
76
  result = (send field)
77
77
  if (result.kind_of? Enumerable) && result.respond_to?(:count)
@@ -59,5 +59,7 @@ class ObjectStructTest < MiniTest::Unit::TestCase
59
59
 
60
60
  def test_has_property_name_empty
61
61
  refute @widget.has_empty_array?
62
+ refute @widget.has_empty_with_CaPiTaL_lEtTeRs?
63
+ refute @widget.has_empty_w17h_numb3r5?
62
64
  end
63
65
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 4
9
- version: 0.0.4
8
+ - 5
9
+ version: 0.0.5
10
10
  platform: ruby
11
11
  authors:
12
12
  - Quid, Inc.
@@ -14,13 +14,14 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-09-23 00:00:00 -07:00
17
+ date: 2010-10-04 00:00:00 -07:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: lazy
22
22
  prerelease: false
23
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
24
25
  requirements:
25
26
  - - ">="
26
27
  - !ruby/object:Gem::Version
@@ -33,6 +34,7 @@ dependencies:
33
34
  name: activesupport
34
35
  prerelease: false
35
36
  requirement: &id002 !ruby/object:Gem::Requirement
37
+ none: false
36
38
  requirements:
37
39
  - - ">="
38
40
  - !ruby/object:Gem::Version
@@ -68,6 +70,7 @@ rdoc_options: []
68
70
  require_paths:
69
71
  - lib
70
72
  required_ruby_version: !ruby/object:Gem::Requirement
73
+ none: false
71
74
  requirements:
72
75
  - - ">="
73
76
  - !ruby/object:Gem::Version
@@ -75,6 +78,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
75
78
  - 0
76
79
  version: "0"
77
80
  required_rubygems_version: !ruby/object:Gem::Requirement
81
+ none: false
78
82
  requirements:
79
83
  - - ">="
80
84
  - !ruby/object:Gem::Version
@@ -86,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
90
  requirements: []
87
91
 
88
92
  rubyforge_project:
89
- rubygems_version: 1.3.6
93
+ rubygems_version: 1.3.7
90
94
  signing_key:
91
95
  specification_version: 3
92
96
  summary: Structs, with methods. Deep and lazy conversion.