guacamole 0.0.1 → 0.1.0

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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/{config/rubocop.yml → .hound.yml} +1 -12
  4. data/.ruby-version +1 -1
  5. data/.travis.yml +2 -0
  6. data/.yardopts +1 -0
  7. data/CONTRIBUTING.md +3 -3
  8. data/Gemfile.devtools +24 -12
  9. data/Guardfile +1 -1
  10. data/README.md +347 -50
  11. data/Rakefile +10 -0
  12. data/config/reek.yml +18 -5
  13. data/guacamole.gemspec +5 -2
  14. data/lib/guacamole.rb +1 -0
  15. data/lib/guacamole/collection.rb +79 -7
  16. data/lib/guacamole/configuration.rb +56 -2
  17. data/lib/guacamole/document_model_mapper.rb +87 -7
  18. data/lib/guacamole/identity_map.rb +124 -0
  19. data/lib/guacamole/proxies/proxy.rb +42 -0
  20. data/lib/guacamole/proxies/referenced_by.rb +15 -0
  21. data/lib/guacamole/proxies/references.rb +15 -0
  22. data/lib/guacamole/query.rb +11 -0
  23. data/lib/guacamole/railtie.rb +6 -1
  24. data/lib/guacamole/railtie/database.rake +57 -3
  25. data/lib/guacamole/tasks/database.rake +23 -0
  26. data/lib/guacamole/version.rb +1 -1
  27. data/lib/rails/generators/guacamole/collection/collection_generator.rb +19 -0
  28. data/lib/rails/generators/guacamole/collection/templates/collection.rb.tt +5 -0
  29. data/lib/rails/generators/guacamole/config/config_generator.rb +25 -0
  30. data/lib/rails/generators/guacamole/config/templates/guacamole.yml +15 -0
  31. data/lib/rails/generators/guacamole/model/model_generator.rb +25 -0
  32. data/lib/rails/generators/guacamole/model/templates/model.rb.tt +11 -0
  33. data/lib/rails/generators/guacamole_generator.rb +28 -0
  34. data/lib/rails/generators/rails/collection/collection_generator.rb +13 -0
  35. data/lib/rails/generators/rspec/collection/collection_generator.rb +13 -0
  36. data/lib/rails/generators/rspec/collection/templates/collection_spec.rb.tt +7 -0
  37. data/spec/acceptance/association_spec.rb +40 -0
  38. data/spec/acceptance/basic_spec.rb +19 -2
  39. data/spec/acceptance/spec_helper.rb +5 -2
  40. data/spec/fabricators/author.rb +11 -0
  41. data/spec/fabricators/author_fabricator.rb +7 -0
  42. data/spec/fabricators/book.rb +11 -0
  43. data/spec/fabricators/book_fabricator.rb +5 -0
  44. data/spec/unit/collection_spec.rb +265 -18
  45. data/spec/unit/configuration_spec.rb +11 -1
  46. data/spec/unit/document_model_mapper_spec.rb +127 -5
  47. data/spec/unit/identiy_map_spec.rb +140 -0
  48. data/spec/unit/query_spec.rb +37 -16
  49. data/tasks/adjustments.rake +0 -1
  50. metadata +78 -8
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guacamole
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lucas Dohmen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-11-09 00:00:00.000000000 Z
12
+ date: 2014-05-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ashikawa-core
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - ~>
19
19
  - !ruby/object:Gem::Version
20
- version: 0.9.0
20
+ version: 0.10.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - ~>
26
26
  - !ruby/object:Gem::Version
27
- version: 0.9.0
27
+ version: 0.10.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: virtus
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: 1.0.0.rc2
34
+ version: 1.0.1
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - ~>
40
40
  - !ruby/object:Gem::Version
41
- version: 1.0.0.rc2
41
+ version: 1.0.1
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: activesupport
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -67,6 +67,20 @@ dependencies:
67
67
  - - '>='
68
68
  - !ruby/object:Gem::Version
69
69
  version: 4.0.0
70
+ - !ruby/object:Gem::Dependency
71
+ name: hamster
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: 1.0.1.pre.rc.1
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ~>
82
+ - !ruby/object:Gem::Version
83
+ version: 1.0.1.pre.rc.1
70
84
  - !ruby/object:Gem::Dependency
71
85
  name: fabrication
72
86
  requirement: !ruby/object:Gem::Requirement
@@ -81,6 +95,20 @@ dependencies:
81
95
  - - ~>
82
96
  - !ruby/object:Gem::Version
83
97
  version: 2.8.1
98
+ - !ruby/object:Gem::Dependency
99
+ name: faker
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ~>
103
+ - !ruby/object:Gem::Version
104
+ version: 1.2.0
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ~>
110
+ - !ruby/object:Gem::Version
111
+ version: 1.2.0
84
112
  - !ruby/object:Gem::Dependency
85
113
  name: logging
86
114
  requirement: !ruby/object:Gem::Requirement
@@ -95,6 +123,20 @@ dependencies:
95
123
  - - ~>
96
124
  - !ruby/object:Gem::Version
97
125
  version: 1.8.1
126
+ - !ruby/object:Gem::Dependency
127
+ name: pry
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ~>
131
+ - !ruby/object:Gem::Version
132
+ version: 0.9.12
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ~>
138
+ - !ruby/object:Gem::Version
139
+ version: 0.9.12
98
140
  description: ODM for ArangoDB
99
141
  email:
100
142
  - moonglum@moonbeamlabs.com
@@ -104,9 +146,11 @@ extensions: []
104
146
  extra_rdoc_files: []
105
147
  files:
106
148
  - .gitignore
149
+ - .hound.yml
107
150
  - .rspec
108
151
  - .ruby-version
109
152
  - .travis.yml
153
+ - .yardopts
110
154
  - CONTRIBUTING.md
111
155
  - Gemfile
112
156
  - Gemfile.devtools
@@ -119,24 +163,43 @@ files:
119
163
  - config/flog.yml
120
164
  - config/mutant.yml
121
165
  - config/reek.yml
122
- - config/rubocop.yml
123
166
  - config/yardstick.yml
124
167
  - guacamole.gemspec
125
168
  - lib/guacamole.rb
126
169
  - lib/guacamole/collection.rb
127
170
  - lib/guacamole/configuration.rb
128
171
  - lib/guacamole/document_model_mapper.rb
172
+ - lib/guacamole/identity_map.rb
129
173
  - lib/guacamole/model.rb
174
+ - lib/guacamole/proxies/proxy.rb
175
+ - lib/guacamole/proxies/referenced_by.rb
176
+ - lib/guacamole/proxies/references.rb
130
177
  - lib/guacamole/query.rb
131
178
  - lib/guacamole/railtie.rb
132
179
  - lib/guacamole/railtie/database.rake
180
+ - lib/guacamole/tasks/database.rake
133
181
  - lib/guacamole/version.rb
182
+ - lib/rails/generators/guacamole/collection/collection_generator.rb
183
+ - lib/rails/generators/guacamole/collection/templates/collection.rb.tt
184
+ - lib/rails/generators/guacamole/config/config_generator.rb
185
+ - lib/rails/generators/guacamole/config/templates/guacamole.yml
186
+ - lib/rails/generators/guacamole/model/model_generator.rb
187
+ - lib/rails/generators/guacamole/model/templates/model.rb.tt
188
+ - lib/rails/generators/guacamole_generator.rb
189
+ - lib/rails/generators/rails/collection/collection_generator.rb
190
+ - lib/rails/generators/rspec/collection/collection_generator.rb
191
+ - lib/rails/generators/rspec/collection/templates/collection_spec.rb.tt
134
192
  - log/.gitkeep
135
193
  - spec/acceptance/.gitkeep
194
+ - spec/acceptance/association_spec.rb
136
195
  - spec/acceptance/basic_spec.rb
137
196
  - spec/acceptance/config/guacamole.yml
138
197
  - spec/acceptance/spec_helper.rb
139
198
  - spec/fabricators/article_fabricator.rb
199
+ - spec/fabricators/author.rb
200
+ - spec/fabricators/author_fabricator.rb
201
+ - spec/fabricators/book.rb
202
+ - spec/fabricators/book_fabricator.rb
140
203
  - spec/fabricators/comment_fabricator.rb
141
204
  - spec/setup/arangodb.sh
142
205
  - spec/spec_helper.rb
@@ -145,6 +208,7 @@ files:
145
208
  - spec/unit/configuration_spec.rb
146
209
  - spec/unit/document_model_mapper_spec.rb
147
210
  - spec/unit/example_spec.rb
211
+ - spec/unit/identiy_map_spec.rb
148
212
  - spec/unit/model_spec.rb
149
213
  - spec/unit/query_spec.rb
150
214
  - tasks/adjustments.rake
@@ -168,16 +232,21 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
232
  version: '0'
169
233
  requirements: []
170
234
  rubyforge_project:
171
- rubygems_version: 2.1.9
235
+ rubygems_version: 2.2.0
172
236
  signing_key:
173
237
  specification_version: 4
174
238
  summary: An ODM for ArangoDB that uses the DataMapper pattern.
175
239
  test_files:
176
240
  - spec/acceptance/.gitkeep
241
+ - spec/acceptance/association_spec.rb
177
242
  - spec/acceptance/basic_spec.rb
178
243
  - spec/acceptance/config/guacamole.yml
179
244
  - spec/acceptance/spec_helper.rb
180
245
  - spec/fabricators/article_fabricator.rb
246
+ - spec/fabricators/author.rb
247
+ - spec/fabricators/author_fabricator.rb
248
+ - spec/fabricators/book.rb
249
+ - spec/fabricators/book_fabricator.rb
181
250
  - spec/fabricators/comment_fabricator.rb
182
251
  - spec/setup/arangodb.sh
183
252
  - spec/spec_helper.rb
@@ -186,6 +255,7 @@ test_files:
186
255
  - spec/unit/configuration_spec.rb
187
256
  - spec/unit/document_model_mapper_spec.rb
188
257
  - spec/unit/example_spec.rb
258
+ - spec/unit/identiy_map_spec.rb
189
259
  - spec/unit/model_spec.rb
190
260
  - spec/unit/query_spec.rb
191
261
  has_rdoc: