openlogic-couchrest_model 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. data/.gitignore +11 -0
  2. data/.rspec +4 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE +176 -0
  5. data/README.md +137 -0
  6. data/Rakefile +38 -0
  7. data/THANKS.md +21 -0
  8. data/VERSION +1 -0
  9. data/benchmarks/dirty.rb +118 -0
  10. data/couchrest_model.gemspec +36 -0
  11. data/history.md +309 -0
  12. data/init.rb +1 -0
  13. data/lib/couchrest/model.rb +10 -0
  14. data/lib/couchrest/model/associations.rb +231 -0
  15. data/lib/couchrest/model/base.rb +129 -0
  16. data/lib/couchrest/model/callbacks.rb +28 -0
  17. data/lib/couchrest/model/casted_array.rb +83 -0
  18. data/lib/couchrest/model/casted_by.rb +33 -0
  19. data/lib/couchrest/model/casted_hash.rb +84 -0
  20. data/lib/couchrest/model/class_proxy.rb +135 -0
  21. data/lib/couchrest/model/collection.rb +273 -0
  22. data/lib/couchrest/model/configuration.rb +67 -0
  23. data/lib/couchrest/model/connection.rb +70 -0
  24. data/lib/couchrest/model/core_extensions/hash.rb +9 -0
  25. data/lib/couchrest/model/core_extensions/time_parsing.rb +66 -0
  26. data/lib/couchrest/model/design_doc.rb +128 -0
  27. data/lib/couchrest/model/designs.rb +91 -0
  28. data/lib/couchrest/model/designs/view.rb +513 -0
  29. data/lib/couchrest/model/dirty.rb +39 -0
  30. data/lib/couchrest/model/document_queries.rb +99 -0
  31. data/lib/couchrest/model/embeddable.rb +78 -0
  32. data/lib/couchrest/model/errors.rb +25 -0
  33. data/lib/couchrest/model/extended_attachments.rb +83 -0
  34. data/lib/couchrest/model/persistence.rb +178 -0
  35. data/lib/couchrest/model/properties.rb +228 -0
  36. data/lib/couchrest/model/property.rb +114 -0
  37. data/lib/couchrest/model/property_protection.rb +71 -0
  38. data/lib/couchrest/model/proxyable.rb +183 -0
  39. data/lib/couchrest/model/support/couchrest_database.rb +13 -0
  40. data/lib/couchrest/model/support/couchrest_design.rb +33 -0
  41. data/lib/couchrest/model/typecast.rb +154 -0
  42. data/lib/couchrest/model/validations.rb +80 -0
  43. data/lib/couchrest/model/validations/casted_model.rb +16 -0
  44. data/lib/couchrest/model/validations/locale/en.yml +5 -0
  45. data/lib/couchrest/model/validations/uniqueness.rb +69 -0
  46. data/lib/couchrest/model/views.rb +151 -0
  47. data/lib/couchrest/railtie.rb +24 -0
  48. data/lib/couchrest_model.rb +66 -0
  49. data/lib/rails/generators/couchrest_model.rb +16 -0
  50. data/lib/rails/generators/couchrest_model/config/config_generator.rb +18 -0
  51. data/lib/rails/generators/couchrest_model/config/templates/couchdb.yml +21 -0
  52. data/lib/rails/generators/couchrest_model/model/model_generator.rb +27 -0
  53. data/lib/rails/generators/couchrest_model/model/templates/model.rb +2 -0
  54. data/spec/.gitignore +1 -0
  55. data/spec/fixtures/attachments/README +3 -0
  56. data/spec/fixtures/attachments/couchdb.png +0 -0
  57. data/spec/fixtures/attachments/test.html +11 -0
  58. data/spec/fixtures/config/couchdb.yml +10 -0
  59. data/spec/fixtures/models/article.rb +36 -0
  60. data/spec/fixtures/models/base.rb +164 -0
  61. data/spec/fixtures/models/card.rb +19 -0
  62. data/spec/fixtures/models/cat.rb +23 -0
  63. data/spec/fixtures/models/client.rb +6 -0
  64. data/spec/fixtures/models/course.rb +27 -0
  65. data/spec/fixtures/models/event.rb +8 -0
  66. data/spec/fixtures/models/invoice.rb +14 -0
  67. data/spec/fixtures/models/key_chain.rb +5 -0
  68. data/spec/fixtures/models/membership.rb +4 -0
  69. data/spec/fixtures/models/person.rb +11 -0
  70. data/spec/fixtures/models/project.rb +6 -0
  71. data/spec/fixtures/models/question.rb +7 -0
  72. data/spec/fixtures/models/sale_entry.rb +9 -0
  73. data/spec/fixtures/models/sale_invoice.rb +14 -0
  74. data/spec/fixtures/models/service.rb +10 -0
  75. data/spec/fixtures/models/user.rb +22 -0
  76. data/spec/fixtures/views/lib.js +3 -0
  77. data/spec/fixtures/views/test_view/lib.js +3 -0
  78. data/spec/fixtures/views/test_view/only-map.js +4 -0
  79. data/spec/fixtures/views/test_view/test-map.js +3 -0
  80. data/spec/fixtures/views/test_view/test-reduce.js +3 -0
  81. data/spec/functional/validations_spec.rb +8 -0
  82. data/spec/spec_helper.rb +60 -0
  83. data/spec/unit/active_model_lint_spec.rb +30 -0
  84. data/spec/unit/assocations_spec.rb +242 -0
  85. data/spec/unit/attachment_spec.rb +176 -0
  86. data/spec/unit/base_spec.rb +537 -0
  87. data/spec/unit/casted_spec.rb +72 -0
  88. data/spec/unit/class_proxy_spec.rb +167 -0
  89. data/spec/unit/collection_spec.rb +86 -0
  90. data/spec/unit/configuration_spec.rb +77 -0
  91. data/spec/unit/connection_spec.rb +148 -0
  92. data/spec/unit/core_extensions/time_parsing.rb +77 -0
  93. data/spec/unit/design_doc_spec.rb +241 -0
  94. data/spec/unit/designs/view_spec.rb +831 -0
  95. data/spec/unit/designs_spec.rb +134 -0
  96. data/spec/unit/dirty_spec.rb +436 -0
  97. data/spec/unit/embeddable_spec.rb +498 -0
  98. data/spec/unit/inherited_spec.rb +33 -0
  99. data/spec/unit/persistence_spec.rb +481 -0
  100. data/spec/unit/property_protection_spec.rb +192 -0
  101. data/spec/unit/property_spec.rb +481 -0
  102. data/spec/unit/proxyable_spec.rb +376 -0
  103. data/spec/unit/subclass_spec.rb +85 -0
  104. data/spec/unit/typecast_spec.rb +521 -0
  105. data/spec/unit/validations_spec.rb +140 -0
  106. data/spec/unit/view_spec.rb +367 -0
  107. metadata +301 -0
metadata ADDED
@@ -0,0 +1,301 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: openlogic-couchrest_model
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - J. Chris Anderson
9
+ - Matt Aimonetti
10
+ - Marcos Tapajos
11
+ - Will Leinweber
12
+ - Sam Lown
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+ date: 2011-12-01 00:00:00.000000000 -07:00
17
+ default_executable:
18
+ dependencies:
19
+ - !ruby/object:Gem::Dependency
20
+ name: couchrest
21
+ requirement: &2161356740 !ruby/object:Gem::Requirement
22
+ none: false
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 1.1.2
27
+ type: :runtime
28
+ prerelease: false
29
+ version_requirements: *2161356740
30
+ - !ruby/object:Gem::Dependency
31
+ name: mime-types
32
+ requirement: &2161356120 !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: '1.15'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: *2161356120
41
+ - !ruby/object:Gem::Dependency
42
+ name: activemodel
43
+ requirement: &2161355580 !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '3.0'
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: *2161355580
52
+ - !ruby/object:Gem::Dependency
53
+ name: tzinfo
54
+ requirement: &2161355100 !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ~>
58
+ - !ruby/object:Gem::Version
59
+ version: 0.3.22
60
+ type: :runtime
61
+ prerelease: false
62
+ version_requirements: *2161355100
63
+ - !ruby/object:Gem::Dependency
64
+ name: rspec
65
+ requirement: &2161354640 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ~>
69
+ - !ruby/object:Gem::Version
70
+ version: 2.6.0
71
+ type: :development
72
+ prerelease: false
73
+ version_requirements: *2161354640
74
+ - !ruby/object:Gem::Dependency
75
+ name: json
76
+ requirement: &2161354160 !ruby/object:Gem::Requirement
77
+ none: false
78
+ requirements:
79
+ - - ~>
80
+ - !ruby/object:Gem::Version
81
+ version: 1.5.1
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: *2161354160
85
+ - !ruby/object:Gem::Dependency
86
+ name: rack-test
87
+ requirement: &2161353680 !ruby/object:Gem::Requirement
88
+ none: false
89
+ requirements:
90
+ - - ! '>='
91
+ - !ruby/object:Gem::Version
92
+ version: 0.5.7
93
+ type: :development
94
+ prerelease: false
95
+ version_requirements: *2161353680
96
+ - !ruby/object:Gem::Dependency
97
+ name: rake
98
+ requirement: &2161353220 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ! '>='
102
+ - !ruby/object:Gem::Version
103
+ version: 0.8.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: *2161353220
107
+ description: CouchRest Model provides aditional features to the standard CouchRest
108
+ Document class such as properties, view designs, associations, callbacks, typecasting
109
+ and validations.
110
+ email: jchris@apache.org
111
+ executables: []
112
+ extensions: []
113
+ extra_rdoc_files:
114
+ - LICENSE
115
+ - README.md
116
+ - THANKS.md
117
+ files:
118
+ - .gitignore
119
+ - .rspec
120
+ - Gemfile
121
+ - LICENSE
122
+ - README.md
123
+ - Rakefile
124
+ - THANKS.md
125
+ - VERSION
126
+ - benchmarks/dirty.rb
127
+ - couchrest_model.gemspec
128
+ - history.md
129
+ - init.rb
130
+ - lib/couchrest/model.rb
131
+ - lib/couchrest/model/associations.rb
132
+ - lib/couchrest/model/base.rb
133
+ - lib/couchrest/model/callbacks.rb
134
+ - lib/couchrest/model/casted_array.rb
135
+ - lib/couchrest/model/casted_by.rb
136
+ - lib/couchrest/model/casted_hash.rb
137
+ - lib/couchrest/model/class_proxy.rb
138
+ - lib/couchrest/model/collection.rb
139
+ - lib/couchrest/model/configuration.rb
140
+ - lib/couchrest/model/connection.rb
141
+ - lib/couchrest/model/core_extensions/hash.rb
142
+ - lib/couchrest/model/core_extensions/time_parsing.rb
143
+ - lib/couchrest/model/design_doc.rb
144
+ - lib/couchrest/model/designs.rb
145
+ - lib/couchrest/model/designs/view.rb
146
+ - lib/couchrest/model/dirty.rb
147
+ - lib/couchrest/model/document_queries.rb
148
+ - lib/couchrest/model/embeddable.rb
149
+ - lib/couchrest/model/errors.rb
150
+ - lib/couchrest/model/extended_attachments.rb
151
+ - lib/couchrest/model/persistence.rb
152
+ - lib/couchrest/model/properties.rb
153
+ - lib/couchrest/model/property.rb
154
+ - lib/couchrest/model/property_protection.rb
155
+ - lib/couchrest/model/proxyable.rb
156
+ - lib/couchrest/model/support/couchrest_database.rb
157
+ - lib/couchrest/model/support/couchrest_design.rb
158
+ - lib/couchrest/model/typecast.rb
159
+ - lib/couchrest/model/validations.rb
160
+ - lib/couchrest/model/validations/casted_model.rb
161
+ - lib/couchrest/model/validations/locale/en.yml
162
+ - lib/couchrest/model/validations/uniqueness.rb
163
+ - lib/couchrest/model/views.rb
164
+ - lib/couchrest/railtie.rb
165
+ - lib/couchrest_model.rb
166
+ - lib/rails/generators/couchrest_model.rb
167
+ - lib/rails/generators/couchrest_model/config/config_generator.rb
168
+ - lib/rails/generators/couchrest_model/config/templates/couchdb.yml
169
+ - lib/rails/generators/couchrest_model/model/model_generator.rb
170
+ - lib/rails/generators/couchrest_model/model/templates/model.rb
171
+ - spec/.gitignore
172
+ - spec/fixtures/attachments/README
173
+ - spec/fixtures/attachments/couchdb.png
174
+ - spec/fixtures/attachments/test.html
175
+ - spec/fixtures/config/couchdb.yml
176
+ - spec/fixtures/models/article.rb
177
+ - spec/fixtures/models/base.rb
178
+ - spec/fixtures/models/card.rb
179
+ - spec/fixtures/models/cat.rb
180
+ - spec/fixtures/models/client.rb
181
+ - spec/fixtures/models/course.rb
182
+ - spec/fixtures/models/event.rb
183
+ - spec/fixtures/models/invoice.rb
184
+ - spec/fixtures/models/key_chain.rb
185
+ - spec/fixtures/models/membership.rb
186
+ - spec/fixtures/models/person.rb
187
+ - spec/fixtures/models/project.rb
188
+ - spec/fixtures/models/question.rb
189
+ - spec/fixtures/models/sale_entry.rb
190
+ - spec/fixtures/models/sale_invoice.rb
191
+ - spec/fixtures/models/service.rb
192
+ - spec/fixtures/models/user.rb
193
+ - spec/fixtures/views/lib.js
194
+ - spec/fixtures/views/test_view/lib.js
195
+ - spec/fixtures/views/test_view/only-map.js
196
+ - spec/fixtures/views/test_view/test-map.js
197
+ - spec/fixtures/views/test_view/test-reduce.js
198
+ - spec/functional/validations_spec.rb
199
+ - spec/spec_helper.rb
200
+ - spec/unit/active_model_lint_spec.rb
201
+ - spec/unit/assocations_spec.rb
202
+ - spec/unit/attachment_spec.rb
203
+ - spec/unit/base_spec.rb
204
+ - spec/unit/casted_spec.rb
205
+ - spec/unit/class_proxy_spec.rb
206
+ - spec/unit/collection_spec.rb
207
+ - spec/unit/configuration_spec.rb
208
+ - spec/unit/connection_spec.rb
209
+ - spec/unit/core_extensions/time_parsing.rb
210
+ - spec/unit/design_doc_spec.rb
211
+ - spec/unit/designs/view_spec.rb
212
+ - spec/unit/designs_spec.rb
213
+ - spec/unit/dirty_spec.rb
214
+ - spec/unit/embeddable_spec.rb
215
+ - spec/unit/inherited_spec.rb
216
+ - spec/unit/persistence_spec.rb
217
+ - spec/unit/property_protection_spec.rb
218
+ - spec/unit/property_spec.rb
219
+ - spec/unit/proxyable_spec.rb
220
+ - spec/unit/subclass_spec.rb
221
+ - spec/unit/typecast_spec.rb
222
+ - spec/unit/validations_spec.rb
223
+ - spec/unit/view_spec.rb
224
+ has_rdoc: true
225
+ homepage: http://github.com/couchrest/couchrest_model
226
+ licenses: []
227
+ post_install_message:
228
+ rdoc_options: []
229
+ require_paths:
230
+ - lib
231
+ required_ruby_version: !ruby/object:Gem::Requirement
232
+ none: false
233
+ requirements:
234
+ - - ! '>='
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ required_rubygems_version: !ruby/object:Gem::Requirement
238
+ none: false
239
+ requirements:
240
+ - - ! '>'
241
+ - !ruby/object:Gem::Version
242
+ version: 1.3.1
243
+ requirements: []
244
+ rubyforge_project:
245
+ rubygems_version: 1.6.2
246
+ signing_key:
247
+ specification_version: 3
248
+ summary: Extends the CouchRest Document for advanced modelling.
249
+ test_files:
250
+ - spec/fixtures/attachments/README
251
+ - spec/fixtures/attachments/couchdb.png
252
+ - spec/fixtures/attachments/test.html
253
+ - spec/fixtures/config/couchdb.yml
254
+ - spec/fixtures/models/article.rb
255
+ - spec/fixtures/models/base.rb
256
+ - spec/fixtures/models/card.rb
257
+ - spec/fixtures/models/cat.rb
258
+ - spec/fixtures/models/client.rb
259
+ - spec/fixtures/models/course.rb
260
+ - spec/fixtures/models/event.rb
261
+ - spec/fixtures/models/invoice.rb
262
+ - spec/fixtures/models/key_chain.rb
263
+ - spec/fixtures/models/membership.rb
264
+ - spec/fixtures/models/person.rb
265
+ - spec/fixtures/models/project.rb
266
+ - spec/fixtures/models/question.rb
267
+ - spec/fixtures/models/sale_entry.rb
268
+ - spec/fixtures/models/sale_invoice.rb
269
+ - spec/fixtures/models/service.rb
270
+ - spec/fixtures/models/user.rb
271
+ - spec/fixtures/views/lib.js
272
+ - spec/fixtures/views/test_view/lib.js
273
+ - spec/fixtures/views/test_view/only-map.js
274
+ - spec/fixtures/views/test_view/test-map.js
275
+ - spec/fixtures/views/test_view/test-reduce.js
276
+ - spec/functional/validations_spec.rb
277
+ - spec/spec_helper.rb
278
+ - spec/unit/active_model_lint_spec.rb
279
+ - spec/unit/assocations_spec.rb
280
+ - spec/unit/attachment_spec.rb
281
+ - spec/unit/base_spec.rb
282
+ - spec/unit/casted_spec.rb
283
+ - spec/unit/class_proxy_spec.rb
284
+ - spec/unit/collection_spec.rb
285
+ - spec/unit/configuration_spec.rb
286
+ - spec/unit/connection_spec.rb
287
+ - spec/unit/core_extensions/time_parsing.rb
288
+ - spec/unit/design_doc_spec.rb
289
+ - spec/unit/designs/view_spec.rb
290
+ - spec/unit/designs_spec.rb
291
+ - spec/unit/dirty_spec.rb
292
+ - spec/unit/embeddable_spec.rb
293
+ - spec/unit/inherited_spec.rb
294
+ - spec/unit/persistence_spec.rb
295
+ - spec/unit/property_protection_spec.rb
296
+ - spec/unit/property_spec.rb
297
+ - spec/unit/proxyable_spec.rb
298
+ - spec/unit/subclass_spec.rb
299
+ - spec/unit/typecast_spec.rb
300
+ - spec/unit/validations_spec.rb
301
+ - spec/unit/view_spec.rb