hashmodel 0.1.1

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.
@@ -0,0 +1,23 @@
1
+ $: << '.'
2
+ $LOAD_PATH.unshift File.expand_path(File.join(File.dirname(__FILE__), "/../lib"))
3
+ require 'hash_model'
4
+ require 'rspec'
5
+ require 'rspec/matchers'
6
+
7
+ # Make a new class with the given name and create instance variables set using key,value pairs.
8
+ # e.g. new_class = create_class "Dummy", {:x=>"x", :y=>String, :z=>["1",2,:three]}
9
+ def create_proc_tester(property_value_hash)
10
+ proc_test = Class.new.new
11
+
12
+ # Add an evaluator method to make it more clear what we are doing
13
+ proc_test.class.class_eval do
14
+ define_method(:xql?) { |&block| instance_eval &block }
15
+ end
16
+
17
+ # Add the property values to this instance of the class
18
+ property_value_hash.each do |key, value|
19
+ proc_test.instance_variable_set("@#{key}", value)
20
+ end
21
+
22
+ proc_test
23
+ end
metadata ADDED
@@ -0,0 +1,160 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: hashmodel
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 1
8
+ - 1
9
+ version: 0.1.1
10
+ platform: ruby
11
+ authors:
12
+ - Mike Bethany
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-12-15 00:00:00 -05:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: rspec
22
+ requirement: &id001 !ruby/object:Gem::Requirement
23
+ none: false
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 2
29
+ - 2
30
+ - 0
31
+ version: 2.2.0
32
+ type: :development
33
+ prerelease: false
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: cucumber
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ segments:
43
+ - 0
44
+ - 10
45
+ - 0
46
+ version: 0.10.0
47
+ type: :development
48
+ prerelease: false
49
+ version_requirements: *id002
50
+ - !ruby/object:Gem::Dependency
51
+ name: bundler
52
+ requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ segments:
58
+ - 1
59
+ - 0
60
+ - 0
61
+ version: 1.0.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: *id003
65
+ - !ruby/object:Gem::Dependency
66
+ name: jeweler
67
+ requirement: &id004 !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ segments:
73
+ - 1
74
+ - 5
75
+ - 0
76
+ - pre5
77
+ version: 1.5.0.pre5
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: *id004
81
+ - !ruby/object:Gem::Dependency
82
+ name: rcov
83
+ requirement: &id005 !ruby/object:Gem::Requirement
84
+ none: false
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ segments:
89
+ - 0
90
+ version: "0"
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: *id005
94
+ description: A simple MVC type model class for storing records as an array of hashes. You can store deeply nested hashes and still easily flatten and querying the records using flattened field names.
95
+ email: mikbe.tk@gmail.com
96
+ executables: []
97
+
98
+ extensions: []
99
+
100
+ extra_rdoc_files:
101
+ - LICENSE.txt
102
+ - README.markdown
103
+ files:
104
+ - .document
105
+ - .rspec
106
+ - Gemfile
107
+ - Gemfile.lock
108
+ - LICENSE.txt
109
+ - README.markdown
110
+ - Rakefile
111
+ - autotest/discover.rb
112
+ - features/README
113
+ - features/hash_model_flatten.feature
114
+ - features/hash_model_grouping.feature
115
+ - features/hash_model_search.feature
116
+ - features/step_definitions/hash_model_steps.rb
117
+ - features/support/env.rb
118
+ - features/support/helper.rb
119
+ - lib/hash_model.rb
120
+ - lib/hash_model/exceptions.rb
121
+ - lib/hash_model/hash_model.rb
122
+ - lib/hash_model/version.rb
123
+ - spec/hash_model/hash_model_spec.rb
124
+ - spec/spec_helper.rb
125
+ has_rdoc: true
126
+ homepage: http://github.com/mikbe/hashmodel
127
+ licenses: []
128
+
129
+ post_install_message:
130
+ rdoc_options: []
131
+
132
+ require_paths:
133
+ - lib
134
+ required_ruby_version: !ruby/object:Gem::Requirement
135
+ none: false
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ hash: 209517049231045196
140
+ segments:
141
+ - 0
142
+ version: "0"
143
+ required_rubygems_version: !ruby/object:Gem::Requirement
144
+ none: false
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ segments:
149
+ - 0
150
+ version: "0"
151
+ requirements: []
152
+
153
+ rubyforge_project:
154
+ rubygems_version: 1.3.7
155
+ signing_key:
156
+ specification_version: 3
157
+ summary: Store small amounts of dynamic data and easily search fields (even nested ones)
158
+ test_files:
159
+ - spec/hash_model/hash_model_spec.rb
160
+ - spec/spec_helper.rb