mongoid 1.9.5 → 2.0.0.alpha

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 (213) hide show
  1. data/.gitignore +6 -0
  2. data/.watchr +29 -0
  3. data/Rakefile +52 -0
  4. data/VERSION +1 -0
  5. data/caliper.yml +4 -0
  6. data/lib/mongoid.rb +20 -9
  7. data/lib/mongoid/associations.rb +100 -123
  8. data/lib/mongoid/associations/belongs_to_related.rb +3 -2
  9. data/lib/mongoid/associations/{embeds_many.rb → embed_many.rb} +29 -90
  10. data/lib/mongoid/associations/{embeds_one.rb → embed_one.rb} +7 -8
  11. data/lib/mongoid/associations/embedded_in.rb +4 -12
  12. data/lib/mongoid/associations/has_many_related.rb +4 -52
  13. data/lib/mongoid/associations/has_one_related.rb +4 -8
  14. data/lib/mongoid/associations/meta_data.rb +1 -2
  15. data/lib/mongoid/associations/options.rb +1 -6
  16. data/lib/mongoid/associations/proxy.rb +21 -14
  17. data/lib/mongoid/attributes.rb +13 -33
  18. data/lib/mongoid/callbacks.rb +11 -16
  19. data/lib/mongoid/collection.rb +3 -4
  20. data/lib/mongoid/collections/master.rb +2 -3
  21. data/lib/mongoid/collections/mimic.rb +46 -0
  22. data/lib/mongoid/collections/slaves.rb +2 -3
  23. data/lib/mongoid/commands.rb +161 -0
  24. data/lib/mongoid/commands/create.rb +19 -0
  25. data/lib/mongoid/commands/delete.rb +16 -0
  26. data/lib/mongoid/commands/delete_all.rb +23 -0
  27. data/lib/mongoid/commands/deletion.rb +18 -0
  28. data/lib/mongoid/commands/destroy.rb +17 -0
  29. data/lib/mongoid/commands/destroy_all.rb +23 -0
  30. data/lib/mongoid/commands/save.rb +29 -0
  31. data/lib/mongoid/components.rb +6 -4
  32. data/lib/mongoid/config.rb +15 -134
  33. data/lib/mongoid/contexts.rb +1 -1
  34. data/lib/mongoid/contexts/enumerable.rb +1 -1
  35. data/lib/mongoid/contexts/mongo.rb +1 -1
  36. data/lib/mongoid/contexts/paging.rb +2 -10
  37. data/lib/mongoid/criterion/inclusion.rb +0 -17
  38. data/lib/mongoid/criterion/optional.rb +1 -1
  39. data/lib/mongoid/cursor.rb +1 -0
  40. data/lib/mongoid/document.rb +45 -49
  41. data/lib/mongoid/errors.rb +1 -32
  42. data/lib/mongoid/extensions.rb +10 -12
  43. data/lib/mongoid/extensions/array/conversions.rb +6 -8
  44. data/lib/mongoid/extensions/big_decimal/conversions.rb +2 -2
  45. data/lib/mongoid/extensions/boolean/conversions.rb +2 -8
  46. data/lib/mongoid/extensions/date/conversions.rb +4 -13
  47. data/lib/mongoid/extensions/datetime/conversions.rb +6 -1
  48. data/lib/mongoid/extensions/float/conversions.rb +1 -5
  49. data/lib/mongoid/extensions/hash/assimilation.rb +3 -12
  50. data/lib/mongoid/extensions/hash/conversions.rb +4 -34
  51. data/lib/mongoid/extensions/integer/conversions.rb +1 -5
  52. data/lib/mongoid/extensions/nil/assimilation.rb +0 -4
  53. data/lib/mongoid/extensions/object/conversions.rb +2 -8
  54. data/lib/mongoid/extensions/objectid/conversions.rb +1 -1
  55. data/lib/mongoid/extensions/string/conversions.rb +1 -1
  56. data/lib/mongoid/extensions/symbol/inflections.rb +1 -1
  57. data/lib/mongoid/extensions/time/conversions.rb +18 -0
  58. data/lib/mongoid/factory.rb +1 -2
  59. data/lib/mongoid/field.rb +2 -9
  60. data/lib/mongoid/fields.rb +7 -11
  61. data/lib/mongoid/finders.rb +2 -2
  62. data/lib/mongoid/identity.rb +4 -4
  63. data/lib/mongoid/indexes.rb +7 -10
  64. data/lib/mongoid/memoization.rb +2 -8
  65. data/lib/mongoid/named_scope.rb +5 -0
  66. data/lib/mongoid/observable.rb +1 -1
  67. data/lib/mongoid/paths.rb +22 -30
  68. data/lib/mongoid/state.rb +21 -28
  69. data/lib/mongoid/timestamps.rb +1 -1
  70. data/lib/mongoid/validations.rb +51 -0
  71. data/lib/mongoid/validations/associated.rb +32 -0
  72. data/lib/mongoid/validations/locale/en.yml +4 -0
  73. data/lib/mongoid/validations/uniqueness.rb +22 -0
  74. data/lib/mongoid/versioning.rb +1 -2
  75. data/mongoid.gemspec +408 -0
  76. data/perf/benchmark.rb +77 -0
  77. data/spec/integration/mongoid/associations_spec.rb +340 -0
  78. data/spec/integration/mongoid/attributes_spec.rb +22 -0
  79. data/spec/integration/mongoid/commands_spec.rb +227 -0
  80. data/spec/integration/mongoid/contexts/enumerable_spec.rb +33 -0
  81. data/spec/integration/mongoid/criteria_spec.rb +272 -0
  82. data/spec/integration/mongoid/document_spec.rb +650 -0
  83. data/spec/integration/mongoid/extensions_spec.rb +22 -0
  84. data/spec/integration/mongoid/finders_spec.rb +119 -0
  85. data/spec/integration/mongoid/inheritance_spec.rb +137 -0
  86. data/spec/integration/mongoid/named_scope_spec.rb +46 -0
  87. data/spec/models/address.rb +39 -0
  88. data/spec/models/animal.rb +6 -0
  89. data/spec/models/callbacks.rb +18 -0
  90. data/spec/models/comment.rb +8 -0
  91. data/spec/models/country_code.rb +6 -0
  92. data/spec/models/employer.rb +5 -0
  93. data/spec/models/game.rb +7 -0
  94. data/spec/models/inheritance.rb +56 -0
  95. data/spec/models/location.rb +5 -0
  96. data/spec/models/mixed_drink.rb +4 -0
  97. data/spec/models/name.rb +13 -0
  98. data/spec/models/namespacing.rb +11 -0
  99. data/spec/models/patient.rb +4 -0
  100. data/spec/models/person.rb +99 -0
  101. data/spec/models/pet.rb +7 -0
  102. data/spec/models/pet_owner.rb +6 -0
  103. data/spec/models/phone.rb +7 -0
  104. data/spec/models/post.rb +15 -0
  105. data/spec/models/translation.rb +5 -0
  106. data/spec/models/vet_visit.rb +5 -0
  107. data/spec/spec.opts +3 -0
  108. data/spec/spec_helper.rb +31 -0
  109. data/spec/unit/mongoid/associations/belongs_to_related_spec.rb +145 -0
  110. data/spec/unit/mongoid/associations/embed_many_spec.rb +516 -0
  111. data/spec/unit/mongoid/associations/embed_one_spec.rb +282 -0
  112. data/spec/unit/mongoid/associations/embedded_in_spec.rb +193 -0
  113. data/spec/unit/mongoid/associations/has_many_related_spec.rb +418 -0
  114. data/spec/unit/mongoid/associations/has_one_related_spec.rb +179 -0
  115. data/spec/unit/mongoid/associations/meta_data_spec.rb +88 -0
  116. data/spec/unit/mongoid/associations/options_spec.rb +192 -0
  117. data/spec/unit/mongoid/associations_spec.rb +595 -0
  118. data/spec/unit/mongoid/attributes_spec.rb +507 -0
  119. data/spec/unit/mongoid/callbacks_spec.rb +55 -0
  120. data/spec/unit/mongoid/collection_spec.rb +187 -0
  121. data/spec/unit/mongoid/collections/cyclic_iterator_spec.rb +75 -0
  122. data/spec/unit/mongoid/collections/master_spec.rb +41 -0
  123. data/spec/unit/mongoid/collections/mimic_spec.rb +43 -0
  124. data/spec/unit/mongoid/collections/slaves_spec.rb +81 -0
  125. data/spec/unit/mongoid/commands/create_spec.rb +31 -0
  126. data/spec/unit/mongoid/commands/delete_all_spec.rb +58 -0
  127. data/spec/unit/mongoid/commands/delete_spec.rb +38 -0
  128. data/spec/unit/mongoid/commands/destroy_all_spec.rb +21 -0
  129. data/spec/unit/mongoid/commands/destroy_spec.rb +51 -0
  130. data/spec/unit/mongoid/commands/save_spec.rb +107 -0
  131. data/spec/unit/mongoid/commands_spec.rb +270 -0
  132. data/spec/unit/mongoid/config_spec.rb +172 -0
  133. data/spec/unit/mongoid/contexts/enumerable_spec.rb +421 -0
  134. data/spec/unit/mongoid/contexts/mongo_spec.rb +682 -0
  135. data/spec/unit/mongoid/contexts_spec.rb +25 -0
  136. data/spec/unit/mongoid/criteria_spec.rb +824 -0
  137. data/spec/unit/mongoid/criterion/complex_spec.rb +19 -0
  138. data/spec/unit/mongoid/criterion/exclusion_spec.rb +91 -0
  139. data/spec/unit/mongoid/criterion/inclusion_spec.rb +219 -0
  140. data/spec/unit/mongoid/criterion/optional_spec.rb +319 -0
  141. data/spec/unit/mongoid/cursor_spec.rb +74 -0
  142. data/spec/unit/mongoid/deprecation_spec.rb +24 -0
  143. data/spec/unit/mongoid/document_spec.rb +818 -0
  144. data/spec/unit/mongoid/errors_spec.rb +103 -0
  145. data/spec/unit/mongoid/extensions/array/accessors_spec.rb +50 -0
  146. data/spec/unit/mongoid/extensions/array/assimilation_spec.rb +24 -0
  147. data/spec/unit/mongoid/extensions/array/conversions_spec.rb +35 -0
  148. data/spec/unit/mongoid/extensions/array/parentization_spec.rb +20 -0
  149. data/spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb +22 -0
  150. data/spec/unit/mongoid/extensions/binary/conversions_spec.rb +22 -0
  151. data/spec/unit/mongoid/extensions/boolean/conversions_spec.rb +49 -0
  152. data/spec/unit/mongoid/extensions/date/conversions_spec.rb +102 -0
  153. data/spec/unit/mongoid/extensions/datetime/conversions_spec.rb +67 -0
  154. data/spec/unit/mongoid/extensions/float/conversions_spec.rb +61 -0
  155. data/spec/unit/mongoid/extensions/hash/accessors_spec.rb +184 -0
  156. data/spec/unit/mongoid/extensions/hash/assimilation_spec.rb +46 -0
  157. data/spec/unit/mongoid/extensions/hash/conversions_spec.rb +21 -0
  158. data/spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb +17 -0
  159. data/spec/unit/mongoid/extensions/hash/scoping_spec.rb +14 -0
  160. data/spec/unit/mongoid/extensions/integer/conversions_spec.rb +61 -0
  161. data/spec/unit/mongoid/extensions/nil/assimilation_spec.rb +24 -0
  162. data/spec/unit/mongoid/extensions/object/conversions_spec.rb +57 -0
  163. data/spec/unit/mongoid/extensions/proc/scoping_spec.rb +34 -0
  164. data/spec/unit/mongoid/extensions/string/conversions_spec.rb +17 -0
  165. data/spec/unit/mongoid/extensions/string/inflections_spec.rb +208 -0
  166. data/spec/unit/mongoid/extensions/symbol/inflections_spec.rb +91 -0
  167. data/spec/unit/mongoid/extensions/time/conversions_spec.rb +70 -0
  168. data/spec/unit/mongoid/extras_spec.rb +102 -0
  169. data/spec/unit/mongoid/factory_spec.rb +31 -0
  170. data/spec/unit/mongoid/field_spec.rb +143 -0
  171. data/spec/unit/mongoid/fields_spec.rb +181 -0
  172. data/spec/unit/mongoid/finders_spec.rb +404 -0
  173. data/spec/unit/mongoid/identity_spec.rb +109 -0
  174. data/spec/unit/mongoid/indexes_spec.rb +93 -0
  175. data/spec/unit/mongoid/javascript_spec.rb +48 -0
  176. data/spec/unit/mongoid/matchers/all_spec.rb +27 -0
  177. data/spec/unit/mongoid/matchers/default_spec.rb +27 -0
  178. data/spec/unit/mongoid/matchers/exists_spec.rb +56 -0
  179. data/spec/unit/mongoid/matchers/gt_spec.rb +39 -0
  180. data/spec/unit/mongoid/matchers/gte_spec.rb +49 -0
  181. data/spec/unit/mongoid/matchers/in_spec.rb +27 -0
  182. data/spec/unit/mongoid/matchers/lt_spec.rb +39 -0
  183. data/spec/unit/mongoid/matchers/lte_spec.rb +49 -0
  184. data/spec/unit/mongoid/matchers/ne_spec.rb +27 -0
  185. data/spec/unit/mongoid/matchers/nin_spec.rb +27 -0
  186. data/spec/unit/mongoid/matchers/size_spec.rb +27 -0
  187. data/spec/unit/mongoid/matchers_spec.rb +329 -0
  188. data/spec/unit/mongoid/memoization_spec.rb +75 -0
  189. data/spec/unit/mongoid/named_scope_spec.rb +123 -0
  190. data/spec/unit/mongoid/observable_spec.rb +46 -0
  191. data/spec/unit/mongoid/paths_spec.rb +124 -0
  192. data/spec/unit/mongoid/scope_spec.rb +240 -0
  193. data/spec/unit/mongoid/state_spec.rb +83 -0
  194. data/spec/unit/mongoid/timestamps_spec.rb +25 -0
  195. data/spec/unit/mongoid/validations/associated_spec.rb +103 -0
  196. data/spec/unit/mongoid/validations/uniqueness_spec.rb +47 -0
  197. data/spec/unit/mongoid/validations_spec.rb +190 -0
  198. data/spec/unit/mongoid/versioning_spec.rb +41 -0
  199. data/spec/unit/mongoid_spec.rb +46 -0
  200. metadata +316 -110
  201. data/lib/mongoid/collections.rb +0 -41
  202. data/lib/mongoid/concern.rb +0 -31
  203. data/lib/mongoid/dirty.rb +0 -253
  204. data/lib/mongoid/extensions/time_conversions.rb +0 -35
  205. data/lib/mongoid/persistence.rb +0 -222
  206. data/lib/mongoid/persistence/command.rb +0 -39
  207. data/lib/mongoid/persistence/insert.rb +0 -50
  208. data/lib/mongoid/persistence/insert_embedded.rb +0 -38
  209. data/lib/mongoid/persistence/remove.rb +0 -39
  210. data/lib/mongoid/persistence/remove_all.rb +0 -37
  211. data/lib/mongoid/persistence/remove_embedded.rb +0 -50
  212. data/lib/mongoid/persistence/update.rb +0 -63
  213. data/lib/mongoid/version.rb +0 -4
@@ -0,0 +1,41 @@
1
+ require "spec_helper"
2
+
3
+ describe Mongoid::Versioning do
4
+
5
+ describe "#version" do
6
+
7
+ before do
8
+ @post = Post.new
9
+ end
10
+
11
+ it "defaults to 1" do
12
+ @post.version.should == 1
13
+ end
14
+
15
+ context "when document is saved" do
16
+
17
+ before do
18
+ @post.title = "New"
19
+ @version = Post.new(:title => "Test")
20
+ Post.expects(:first).at_least(1).with(:conditions => { :_id => @post.id, :version => 1 }).returns(@version)
21
+ @post.revise
22
+ end
23
+
24
+ it "increments the version" do
25
+ @post.version.should == 2
26
+ end
27
+
28
+ it "adds a snapshot of the document to the versions" do
29
+ @post.title.should == "New"
30
+ @post.version.should == 2
31
+ @post.versions.size.should == 1
32
+ version = @post.versions.first
33
+ version.title.should == "Test"
34
+ version.version.should == 1
35
+ end
36
+
37
+ end
38
+
39
+ end
40
+
41
+ end
@@ -0,0 +1,46 @@
1
+ require "spec_helper"
2
+
3
+ describe Mongoid do
4
+
5
+ describe ".configure" do
6
+
7
+ context "when no block supplied" do
8
+
9
+ it "returns the config singleton" do
10
+ Mongoid.configure.should == Mongoid::Config.instance
11
+ end
12
+ end
13
+
14
+ context "when a block is supplied" do
15
+
16
+ before do
17
+ Mongoid.configure do |config|
18
+ config.allow_dynamic_fields = false
19
+ end
20
+ end
21
+
22
+ after do
23
+ Mongoid.configure do |config|
24
+ config.allow_dynamic_fields = true
25
+ end
26
+ end
27
+
28
+ it "sets the values on the config instance" do
29
+ Mongoid.allow_dynamic_fields.should be_false
30
+ end
31
+ end
32
+ end
33
+
34
+ describe ".deprecate" do
35
+
36
+ before do
37
+ @deprecation = mock
38
+ Mongoid::Deprecation.expects(:instance).returns(@deprecation)
39
+ end
40
+
41
+ it "calls alert on the deprecation singleton" do
42
+ @deprecation.expects(:alert).with("testing")
43
+ Mongoid.deprecate("testing")
44
+ end
45
+ end
46
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid
3
3
  version: !ruby/object:Gem::Version
4
- hash: 57
5
- prerelease: false
4
+ prerelease: true
6
5
  segments:
7
- - 1
8
- - 9
9
- - 5
10
- version: 1.9.5
6
+ - 2
7
+ - 0
8
+ - 0
9
+ - alpha
10
+ version: 2.0.0.alpha
11
11
  platform: ruby
12
12
  authors:
13
13
  - Durran Jordan
@@ -15,156 +15,129 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-02-14 00:00:00 +01:00
18
+ date: 2010-03-24 00:00:00 -05:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: activesupport
22
+ name: activemodel
23
23
  prerelease: false
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
25
  requirements:
27
- - - <
26
+ - - ">="
28
27
  - !ruby/object:Gem::Version
29
- hash: 7
30
28
  segments:
31
29
  - 3
32
30
  - 0
33
- - 0
34
- version: 3.0.0
31
+ - pre
32
+ version: 3.0.pre
35
33
  type: :runtime
36
34
  version_requirements: *id001
37
35
  - !ruby/object:Gem::Dependency
38
- name: durran-validatable
36
+ name: will_paginate
39
37
  prerelease: false
40
38
  requirement: &id002 !ruby/object:Gem::Requirement
41
- none: false
42
39
  requirements:
43
40
  - - ">="
44
41
  - !ruby/object:Gem::Version
45
- hash: 13
46
42
  segments:
47
- - 2
43
+ - 3
48
44
  - 0
49
- - 1
50
- version: 2.0.1
45
+ - pre
46
+ version: 3.0.pre
51
47
  type: :runtime
52
48
  version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
- name: will_paginate
55
- prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - <
60
- - !ruby/object:Gem::Version
61
- hash: 17
62
- segments:
63
- - 2
64
- - 9
65
- version: "2.9"
66
- type: :runtime
67
- version_requirements: *id003
68
49
  - !ruby/object:Gem::Dependency
69
50
  name: mongo
70
51
  prerelease: false
71
- requirement: &id004 !ruby/object:Gem::Requirement
72
- none: false
73
- requirements:
74
- - - ~>
75
- - !ruby/object:Gem::Version
76
- hash: 29
77
- segments:
78
- - 1
79
- - 2
80
- - 1
81
- version: 1.2.1
82
- type: :runtime
83
- version_requirements: *id004
84
- - !ruby/object:Gem::Dependency
85
- name: bson
86
- prerelease: false
87
- requirement: &id005 !ruby/object:Gem::Requirement
88
- none: false
52
+ requirement: &id003 !ruby/object:Gem::Requirement
89
53
  requirements:
90
- - - ~>
54
+ - - ">="
91
55
  - !ruby/object:Gem::Version
92
- hash: 29
93
56
  segments:
57
+ - 0
58
+ - 19
94
59
  - 1
95
- - 2
96
- - 1
97
- version: 1.2.1
60
+ version: 0.19.1
98
61
  type: :runtime
99
- version_requirements: *id005
62
+ version_requirements: *id003
100
63
  - !ruby/object:Gem::Dependency
101
64
  name: rspec
102
65
  prerelease: false
103
- requirement: &id006 !ruby/object:Gem::Requirement
104
- none: false
66
+ requirement: &id004 !ruby/object:Gem::Requirement
105
67
  requirements:
106
- - - "="
68
+ - - ">="
107
69
  - !ruby/object:Gem::Version
108
- hash: 27
109
70
  segments:
110
71
  - 1
111
72
  - 3
112
73
  - 0
113
74
  version: 1.3.0
114
75
  type: :development
115
- version_requirements: *id006
76
+ version_requirements: *id004
116
77
  - !ruby/object:Gem::Dependency
117
78
  name: mocha
118
79
  prerelease: false
119
- requirement: &id007 !ruby/object:Gem::Requirement
120
- none: false
80
+ requirement: &id005 !ruby/object:Gem::Requirement
121
81
  requirements:
122
- - - "="
82
+ - - ">="
123
83
  - !ruby/object:Gem::Version
124
- hash: 43
125
84
  segments:
126
85
  - 0
127
86
  - 9
128
87
  - 8
129
88
  version: 0.9.8
130
89
  type: :development
131
- version_requirements: *id007
132
- description: Mongoid is an ODM (Object Document Mapper) Framework for MongoDB, written in Ruby.
133
- email:
134
- - durran@gmail.com
90
+ version_requirements: *id005
91
+ description:
92
+ email: durran@gmail.com
135
93
  executables: []
136
94
 
137
95
  extensions: []
138
96
 
139
- extra_rdoc_files: []
140
-
97
+ extra_rdoc_files:
98
+ - README.rdoc
141
99
  files:
100
+ - .gitignore
101
+ - .watchr
102
+ - MIT_LICENSE
103
+ - README.rdoc
104
+ - Rakefile
105
+ - VERSION
106
+ - caliper.yml
107
+ - lib/mongoid.rb
108
+ - lib/mongoid/associations.rb
142
109
  - lib/mongoid/associations/belongs_to_related.rb
110
+ - lib/mongoid/associations/embed_many.rb
111
+ - lib/mongoid/associations/embed_one.rb
143
112
  - lib/mongoid/associations/embedded_in.rb
144
- - lib/mongoid/associations/embeds_many.rb
145
- - lib/mongoid/associations/embeds_one.rb
146
113
  - lib/mongoid/associations/has_many_related.rb
147
114
  - lib/mongoid/associations/has_one_related.rb
148
115
  - lib/mongoid/associations/meta_data.rb
149
116
  - lib/mongoid/associations/options.rb
150
117
  - lib/mongoid/associations/proxy.rb
151
- - lib/mongoid/associations.rb
152
118
  - lib/mongoid/attributes.rb
153
119
  - lib/mongoid/callbacks.rb
154
120
  - lib/mongoid/collection.rb
155
121
  - lib/mongoid/collections/cyclic_iterator.rb
156
122
  - lib/mongoid/collections/master.rb
123
+ - lib/mongoid/collections/mimic.rb
157
124
  - lib/mongoid/collections/operations.rb
158
125
  - lib/mongoid/collections/slaves.rb
159
- - lib/mongoid/collections.rb
126
+ - lib/mongoid/commands.rb
127
+ - lib/mongoid/commands/create.rb
128
+ - lib/mongoid/commands/delete.rb
129
+ - lib/mongoid/commands/delete_all.rb
130
+ - lib/mongoid/commands/deletion.rb
131
+ - lib/mongoid/commands/destroy.rb
132
+ - lib/mongoid/commands/destroy_all.rb
133
+ - lib/mongoid/commands/save.rb
160
134
  - lib/mongoid/components.rb
161
- - lib/mongoid/concern.rb
162
135
  - lib/mongoid/config.rb
136
+ - lib/mongoid/contexts.rb
163
137
  - lib/mongoid/contexts/enumerable.rb
164
138
  - lib/mongoid/contexts/ids.rb
165
139
  - lib/mongoid/contexts/mongo.rb
166
140
  - lib/mongoid/contexts/paging.rb
167
- - lib/mongoid/contexts.rb
168
141
  - lib/mongoid/criteria.rb
169
142
  - lib/mongoid/criterion/complex.rb
170
143
  - lib/mongoid/criterion/exclusion.rb
@@ -172,9 +145,9 @@ files:
172
145
  - lib/mongoid/criterion/optional.rb
173
146
  - lib/mongoid/cursor.rb
174
147
  - lib/mongoid/deprecation.rb
175
- - lib/mongoid/dirty.rb
176
148
  - lib/mongoid/document.rb
177
149
  - lib/mongoid/errors.rb
150
+ - lib/mongoid/extensions.rb
178
151
  - lib/mongoid/extensions/array/accessors.rb
179
152
  - lib/mongoid/extensions/array/aliasing.rb
180
153
  - lib/mongoid/extensions/array/assimilation.rb
@@ -199,8 +172,7 @@ files:
199
172
  - lib/mongoid/extensions/string/conversions.rb
200
173
  - lib/mongoid/extensions/string/inflections.rb
201
174
  - lib/mongoid/extensions/symbol/inflections.rb
202
- - lib/mongoid/extensions/time_conversions.rb
203
- - lib/mongoid/extensions.rb
175
+ - lib/mongoid/extensions/time/conversions.rb
204
176
  - lib/mongoid/extras.rb
205
177
  - lib/mongoid/factory.rb
206
178
  - lib/mongoid/field.rb
@@ -208,8 +180,9 @@ files:
208
180
  - lib/mongoid/finders.rb
209
181
  - lib/mongoid/identity.rb
210
182
  - lib/mongoid/indexes.rb
211
- - lib/mongoid/javascript/functions.yml
212
183
  - lib/mongoid/javascript.rb
184
+ - lib/mongoid/javascript/functions.yml
185
+ - lib/mongoid/matchers.rb
213
186
  - lib/mongoid/matchers/all.rb
214
187
  - lib/mongoid/matchers/default.rb
215
188
  - lib/mongoid/matchers/exists.rb
@@ -221,62 +194,295 @@ files:
221
194
  - lib/mongoid/matchers/ne.rb
222
195
  - lib/mongoid/matchers/nin.rb
223
196
  - lib/mongoid/matchers/size.rb
224
- - lib/mongoid/matchers.rb
225
197
  - lib/mongoid/memoization.rb
226
198
  - lib/mongoid/named_scope.rb
227
199
  - lib/mongoid/observable.rb
228
200
  - lib/mongoid/paths.rb
229
- - lib/mongoid/persistence/command.rb
230
- - lib/mongoid/persistence/insert.rb
231
- - lib/mongoid/persistence/insert_embedded.rb
232
- - lib/mongoid/persistence/remove.rb
233
- - lib/mongoid/persistence/remove_all.rb
234
- - lib/mongoid/persistence/remove_embedded.rb
235
- - lib/mongoid/persistence/update.rb
236
- - lib/mongoid/persistence.rb
237
201
  - lib/mongoid/scope.rb
238
202
  - lib/mongoid/state.rb
239
203
  - lib/mongoid/timestamps.rb
240
- - lib/mongoid/version.rb
204
+ - lib/mongoid/validations.rb
205
+ - lib/mongoid/validations/associated.rb
206
+ - lib/mongoid/validations/locale/en.yml
207
+ - lib/mongoid/validations/uniqueness.rb
241
208
  - lib/mongoid/versioning.rb
242
- - lib/mongoid.rb
243
- - MIT_LICENSE
244
- - README.rdoc
209
+ - mongoid.gemspec
210
+ - perf/benchmark.rb
211
+ - spec/integration/mongoid/associations_spec.rb
212
+ - spec/integration/mongoid/attributes_spec.rb
213
+ - spec/integration/mongoid/commands_spec.rb
214
+ - spec/integration/mongoid/contexts/enumerable_spec.rb
215
+ - spec/integration/mongoid/criteria_spec.rb
216
+ - spec/integration/mongoid/document_spec.rb
217
+ - spec/integration/mongoid/extensions_spec.rb
218
+ - spec/integration/mongoid/finders_spec.rb
219
+ - spec/integration/mongoid/inheritance_spec.rb
220
+ - spec/integration/mongoid/named_scope_spec.rb
221
+ - spec/models/address.rb
222
+ - spec/models/animal.rb
223
+ - spec/models/callbacks.rb
224
+ - spec/models/comment.rb
225
+ - spec/models/country_code.rb
226
+ - spec/models/employer.rb
227
+ - spec/models/game.rb
228
+ - spec/models/inheritance.rb
229
+ - spec/models/location.rb
230
+ - spec/models/mixed_drink.rb
231
+ - spec/models/name.rb
232
+ - spec/models/namespacing.rb
233
+ - spec/models/patient.rb
234
+ - spec/models/person.rb
235
+ - spec/models/pet.rb
236
+ - spec/models/pet_owner.rb
237
+ - spec/models/phone.rb
238
+ - spec/models/post.rb
239
+ - spec/models/translation.rb
240
+ - spec/models/vet_visit.rb
241
+ - spec/spec.opts
242
+ - spec/spec_helper.rb
243
+ - spec/unit/mongoid/associations/belongs_to_related_spec.rb
244
+ - spec/unit/mongoid/associations/embed_many_spec.rb
245
+ - spec/unit/mongoid/associations/embed_one_spec.rb
246
+ - spec/unit/mongoid/associations/embedded_in_spec.rb
247
+ - spec/unit/mongoid/associations/has_many_related_spec.rb
248
+ - spec/unit/mongoid/associations/has_one_related_spec.rb
249
+ - spec/unit/mongoid/associations/meta_data_spec.rb
250
+ - spec/unit/mongoid/associations/options_spec.rb
251
+ - spec/unit/mongoid/associations_spec.rb
252
+ - spec/unit/mongoid/attributes_spec.rb
253
+ - spec/unit/mongoid/callbacks_spec.rb
254
+ - spec/unit/mongoid/collection_spec.rb
255
+ - spec/unit/mongoid/collections/cyclic_iterator_spec.rb
256
+ - spec/unit/mongoid/collections/master_spec.rb
257
+ - spec/unit/mongoid/collections/mimic_spec.rb
258
+ - spec/unit/mongoid/collections/slaves_spec.rb
259
+ - spec/unit/mongoid/commands/create_spec.rb
260
+ - spec/unit/mongoid/commands/delete_all_spec.rb
261
+ - spec/unit/mongoid/commands/delete_spec.rb
262
+ - spec/unit/mongoid/commands/destroy_all_spec.rb
263
+ - spec/unit/mongoid/commands/destroy_spec.rb
264
+ - spec/unit/mongoid/commands/save_spec.rb
265
+ - spec/unit/mongoid/commands_spec.rb
266
+ - spec/unit/mongoid/config_spec.rb
267
+ - spec/unit/mongoid/contexts/enumerable_spec.rb
268
+ - spec/unit/mongoid/contexts/mongo_spec.rb
269
+ - spec/unit/mongoid/contexts_spec.rb
270
+ - spec/unit/mongoid/criteria_spec.rb
271
+ - spec/unit/mongoid/criterion/complex_spec.rb
272
+ - spec/unit/mongoid/criterion/exclusion_spec.rb
273
+ - spec/unit/mongoid/criterion/inclusion_spec.rb
274
+ - spec/unit/mongoid/criterion/optional_spec.rb
275
+ - spec/unit/mongoid/cursor_spec.rb
276
+ - spec/unit/mongoid/deprecation_spec.rb
277
+ - spec/unit/mongoid/document_spec.rb
278
+ - spec/unit/mongoid/errors_spec.rb
279
+ - spec/unit/mongoid/extensions/array/accessors_spec.rb
280
+ - spec/unit/mongoid/extensions/array/assimilation_spec.rb
281
+ - spec/unit/mongoid/extensions/array/conversions_spec.rb
282
+ - spec/unit/mongoid/extensions/array/parentization_spec.rb
283
+ - spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb
284
+ - spec/unit/mongoid/extensions/binary/conversions_spec.rb
285
+ - spec/unit/mongoid/extensions/boolean/conversions_spec.rb
286
+ - spec/unit/mongoid/extensions/date/conversions_spec.rb
287
+ - spec/unit/mongoid/extensions/datetime/conversions_spec.rb
288
+ - spec/unit/mongoid/extensions/float/conversions_spec.rb
289
+ - spec/unit/mongoid/extensions/hash/accessors_spec.rb
290
+ - spec/unit/mongoid/extensions/hash/assimilation_spec.rb
291
+ - spec/unit/mongoid/extensions/hash/conversions_spec.rb
292
+ - spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb
293
+ - spec/unit/mongoid/extensions/hash/scoping_spec.rb
294
+ - spec/unit/mongoid/extensions/integer/conversions_spec.rb
295
+ - spec/unit/mongoid/extensions/nil/assimilation_spec.rb
296
+ - spec/unit/mongoid/extensions/object/conversions_spec.rb
297
+ - spec/unit/mongoid/extensions/proc/scoping_spec.rb
298
+ - spec/unit/mongoid/extensions/string/conversions_spec.rb
299
+ - spec/unit/mongoid/extensions/string/inflections_spec.rb
300
+ - spec/unit/mongoid/extensions/symbol/inflections_spec.rb
301
+ - spec/unit/mongoid/extensions/time/conversions_spec.rb
302
+ - spec/unit/mongoid/extras_spec.rb
303
+ - spec/unit/mongoid/factory_spec.rb
304
+ - spec/unit/mongoid/field_spec.rb
305
+ - spec/unit/mongoid/fields_spec.rb
306
+ - spec/unit/mongoid/finders_spec.rb
307
+ - spec/unit/mongoid/identity_spec.rb
308
+ - spec/unit/mongoid/indexes_spec.rb
309
+ - spec/unit/mongoid/javascript_spec.rb
310
+ - spec/unit/mongoid/matchers/all_spec.rb
311
+ - spec/unit/mongoid/matchers/default_spec.rb
312
+ - spec/unit/mongoid/matchers/exists_spec.rb
313
+ - spec/unit/mongoid/matchers/gt_spec.rb
314
+ - spec/unit/mongoid/matchers/gte_spec.rb
315
+ - spec/unit/mongoid/matchers/in_spec.rb
316
+ - spec/unit/mongoid/matchers/lt_spec.rb
317
+ - spec/unit/mongoid/matchers/lte_spec.rb
318
+ - spec/unit/mongoid/matchers/ne_spec.rb
319
+ - spec/unit/mongoid/matchers/nin_spec.rb
320
+ - spec/unit/mongoid/matchers/size_spec.rb
321
+ - spec/unit/mongoid/matchers_spec.rb
322
+ - spec/unit/mongoid/memoization_spec.rb
323
+ - spec/unit/mongoid/named_scope_spec.rb
324
+ - spec/unit/mongoid/observable_spec.rb
325
+ - spec/unit/mongoid/paths_spec.rb
326
+ - spec/unit/mongoid/scope_spec.rb
327
+ - spec/unit/mongoid/state_spec.rb
328
+ - spec/unit/mongoid/timestamps_spec.rb
329
+ - spec/unit/mongoid/validations/associated_spec.rb
330
+ - spec/unit/mongoid/validations/uniqueness_spec.rb
331
+ - spec/unit/mongoid/validations_spec.rb
332
+ - spec/unit/mongoid/versioning_spec.rb
333
+ - spec/unit/mongoid_spec.rb
245
334
  has_rdoc: true
246
335
  homepage: http://mongoid.org
247
336
  licenses: []
248
337
 
249
338
  post_install_message:
250
- rdoc_options: []
251
-
339
+ rdoc_options:
340
+ - --charset=UTF-8
252
341
  require_paths:
253
342
  - lib
254
343
  required_ruby_version: !ruby/object:Gem::Requirement
255
- none: false
256
344
  requirements:
257
345
  - - ">="
258
346
  - !ruby/object:Gem::Version
259
- hash: 3
260
347
  segments:
261
348
  - 0
262
349
  version: "0"
263
350
  required_rubygems_version: !ruby/object:Gem::Requirement
264
- none: false
265
351
  requirements:
266
- - - ">="
352
+ - - ">"
267
353
  - !ruby/object:Gem::Version
268
- hash: 23
269
354
  segments:
270
355
  - 1
271
356
  - 3
272
- - 6
273
- version: 1.3.6
357
+ - 1
358
+ version: 1.3.1
274
359
  requirements: []
275
360
 
276
- rubyforge_project: mongoid
277
- rubygems_version: 1.3.7
361
+ rubyforge_project:
362
+ rubygems_version: 1.3.6
278
363
  signing_key:
279
364
  specification_version: 3
280
- summary: Elegent Persistance in Ruby for MongoDB.
281
- test_files: []
282
-
365
+ summary: ODM framework for MongoDB
366
+ test_files:
367
+ - spec/integration/mongoid/associations_spec.rb
368
+ - spec/integration/mongoid/attributes_spec.rb
369
+ - spec/integration/mongoid/commands_spec.rb
370
+ - spec/integration/mongoid/contexts/enumerable_spec.rb
371
+ - spec/integration/mongoid/criteria_spec.rb
372
+ - spec/integration/mongoid/document_spec.rb
373
+ - spec/integration/mongoid/extensions_spec.rb
374
+ - spec/integration/mongoid/finders_spec.rb
375
+ - spec/integration/mongoid/inheritance_spec.rb
376
+ - spec/integration/mongoid/named_scope_spec.rb
377
+ - spec/models/address.rb
378
+ - spec/models/animal.rb
379
+ - spec/models/callbacks.rb
380
+ - spec/models/comment.rb
381
+ - spec/models/country_code.rb
382
+ - spec/models/employer.rb
383
+ - spec/models/game.rb
384
+ - spec/models/inheritance.rb
385
+ - spec/models/location.rb
386
+ - spec/models/mixed_drink.rb
387
+ - spec/models/name.rb
388
+ - spec/models/namespacing.rb
389
+ - spec/models/patient.rb
390
+ - spec/models/person.rb
391
+ - spec/models/pet.rb
392
+ - spec/models/pet_owner.rb
393
+ - spec/models/phone.rb
394
+ - spec/models/post.rb
395
+ - spec/models/translation.rb
396
+ - spec/models/vet_visit.rb
397
+ - spec/spec_helper.rb
398
+ - spec/unit/mongoid/associations/belongs_to_related_spec.rb
399
+ - spec/unit/mongoid/associations/embed_many_spec.rb
400
+ - spec/unit/mongoid/associations/embed_one_spec.rb
401
+ - spec/unit/mongoid/associations/embedded_in_spec.rb
402
+ - spec/unit/mongoid/associations/has_many_related_spec.rb
403
+ - spec/unit/mongoid/associations/has_one_related_spec.rb
404
+ - spec/unit/mongoid/associations/meta_data_spec.rb
405
+ - spec/unit/mongoid/associations/options_spec.rb
406
+ - spec/unit/mongoid/associations_spec.rb
407
+ - spec/unit/mongoid/attributes_spec.rb
408
+ - spec/unit/mongoid/callbacks_spec.rb
409
+ - spec/unit/mongoid/collection_spec.rb
410
+ - spec/unit/mongoid/collections/cyclic_iterator_spec.rb
411
+ - spec/unit/mongoid/collections/master_spec.rb
412
+ - spec/unit/mongoid/collections/mimic_spec.rb
413
+ - spec/unit/mongoid/collections/slaves_spec.rb
414
+ - spec/unit/mongoid/commands/create_spec.rb
415
+ - spec/unit/mongoid/commands/delete_all_spec.rb
416
+ - spec/unit/mongoid/commands/delete_spec.rb
417
+ - spec/unit/mongoid/commands/destroy_all_spec.rb
418
+ - spec/unit/mongoid/commands/destroy_spec.rb
419
+ - spec/unit/mongoid/commands/save_spec.rb
420
+ - spec/unit/mongoid/commands_spec.rb
421
+ - spec/unit/mongoid/config_spec.rb
422
+ - spec/unit/mongoid/contexts/enumerable_spec.rb
423
+ - spec/unit/mongoid/contexts/mongo_spec.rb
424
+ - spec/unit/mongoid/contexts_spec.rb
425
+ - spec/unit/mongoid/criteria_spec.rb
426
+ - spec/unit/mongoid/criterion/complex_spec.rb
427
+ - spec/unit/mongoid/criterion/exclusion_spec.rb
428
+ - spec/unit/mongoid/criterion/inclusion_spec.rb
429
+ - spec/unit/mongoid/criterion/optional_spec.rb
430
+ - spec/unit/mongoid/cursor_spec.rb
431
+ - spec/unit/mongoid/deprecation_spec.rb
432
+ - spec/unit/mongoid/document_spec.rb
433
+ - spec/unit/mongoid/errors_spec.rb
434
+ - spec/unit/mongoid/extensions/array/accessors_spec.rb
435
+ - spec/unit/mongoid/extensions/array/assimilation_spec.rb
436
+ - spec/unit/mongoid/extensions/array/conversions_spec.rb
437
+ - spec/unit/mongoid/extensions/array/parentization_spec.rb
438
+ - spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb
439
+ - spec/unit/mongoid/extensions/binary/conversions_spec.rb
440
+ - spec/unit/mongoid/extensions/boolean/conversions_spec.rb
441
+ - spec/unit/mongoid/extensions/date/conversions_spec.rb
442
+ - spec/unit/mongoid/extensions/datetime/conversions_spec.rb
443
+ - spec/unit/mongoid/extensions/float/conversions_spec.rb
444
+ - spec/unit/mongoid/extensions/hash/accessors_spec.rb
445
+ - spec/unit/mongoid/extensions/hash/assimilation_spec.rb
446
+ - spec/unit/mongoid/extensions/hash/conversions_spec.rb
447
+ - spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb
448
+ - spec/unit/mongoid/extensions/hash/scoping_spec.rb
449
+ - spec/unit/mongoid/extensions/integer/conversions_spec.rb
450
+ - spec/unit/mongoid/extensions/nil/assimilation_spec.rb
451
+ - spec/unit/mongoid/extensions/object/conversions_spec.rb
452
+ - spec/unit/mongoid/extensions/proc/scoping_spec.rb
453
+ - spec/unit/mongoid/extensions/string/conversions_spec.rb
454
+ - spec/unit/mongoid/extensions/string/inflections_spec.rb
455
+ - spec/unit/mongoid/extensions/symbol/inflections_spec.rb
456
+ - spec/unit/mongoid/extensions/time/conversions_spec.rb
457
+ - spec/unit/mongoid/extras_spec.rb
458
+ - spec/unit/mongoid/factory_spec.rb
459
+ - spec/unit/mongoid/field_spec.rb
460
+ - spec/unit/mongoid/fields_spec.rb
461
+ - spec/unit/mongoid/finders_spec.rb
462
+ - spec/unit/mongoid/identity_spec.rb
463
+ - spec/unit/mongoid/indexes_spec.rb
464
+ - spec/unit/mongoid/javascript_spec.rb
465
+ - spec/unit/mongoid/matchers/all_spec.rb
466
+ - spec/unit/mongoid/matchers/default_spec.rb
467
+ - spec/unit/mongoid/matchers/exists_spec.rb
468
+ - spec/unit/mongoid/matchers/gt_spec.rb
469
+ - spec/unit/mongoid/matchers/gte_spec.rb
470
+ - spec/unit/mongoid/matchers/in_spec.rb
471
+ - spec/unit/mongoid/matchers/lt_spec.rb
472
+ - spec/unit/mongoid/matchers/lte_spec.rb
473
+ - spec/unit/mongoid/matchers/ne_spec.rb
474
+ - spec/unit/mongoid/matchers/nin_spec.rb
475
+ - spec/unit/mongoid/matchers/size_spec.rb
476
+ - spec/unit/mongoid/matchers_spec.rb
477
+ - spec/unit/mongoid/memoization_spec.rb
478
+ - spec/unit/mongoid/named_scope_spec.rb
479
+ - spec/unit/mongoid/observable_spec.rb
480
+ - spec/unit/mongoid/paths_spec.rb
481
+ - spec/unit/mongoid/scope_spec.rb
482
+ - spec/unit/mongoid/state_spec.rb
483
+ - spec/unit/mongoid/timestamps_spec.rb
484
+ - spec/unit/mongoid/validations/associated_spec.rb
485
+ - spec/unit/mongoid/validations/uniqueness_spec.rb
486
+ - spec/unit/mongoid/validations_spec.rb
487
+ - spec/unit/mongoid/versioning_spec.rb
488
+ - spec/unit/mongoid_spec.rb