mongoid 3.1.7 → 4.0.0.alpha1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (521) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +317 -11
  3. data/README.md +4 -5
  4. data/lib/config/locales/en.yml +9 -12
  5. data/lib/mongoid.rb +6 -75
  6. data/lib/mongoid/atomic.rb +0 -11
  7. data/lib/mongoid/atomic/paths/embedded.rb +0 -30
  8. data/lib/mongoid/atomic/paths/root.rb +0 -13
  9. data/lib/mongoid/attributes.rb +30 -108
  10. data/lib/mongoid/attributes/dynamic.rb +154 -0
  11. data/lib/mongoid/attributes/nested.rb +82 -0
  12. data/lib/mongoid/attributes/processing.rb +13 -66
  13. data/lib/mongoid/{dirty.rb → changeable.rb} +5 -2
  14. data/lib/mongoid/composable.rb +104 -0
  15. data/lib/mongoid/config.rb +3 -9
  16. data/lib/mongoid/config/options.rb +1 -1
  17. data/lib/mongoid/contextual/aggregable/mongo.rb +5 -9
  18. data/lib/mongoid/contextual/atomic.rb +53 -53
  19. data/lib/mongoid/contextual/command.rb +26 -0
  20. data/lib/mongoid/contextual/map_reduce.rb +1 -1
  21. data/lib/mongoid/contextual/memory.rb +6 -5
  22. data/lib/mongoid/contextual/mongo.rb +59 -28
  23. data/lib/mongoid/contextual/text_search.rb +180 -0
  24. data/lib/mongoid/copyable.rb +2 -3
  25. data/lib/mongoid/criteria.rb +13 -33
  26. data/lib/mongoid/criteria/{#findable.rb# → findable.rb} +0 -2
  27. data/lib/mongoid/{criterion/inspection.rb → criteria/inspectable.rb} +2 -2
  28. data/lib/mongoid/{criterion → criteria}/marshalable.rb +3 -1
  29. data/lib/mongoid/{criterion → criteria}/modifiable.rb +1 -1
  30. data/lib/mongoid/{criterion/scoping.rb → criteria/scopable.rb} +2 -2
  31. data/lib/mongoid/document.rb +28 -12
  32. data/lib/mongoid/errors.rb +1 -1
  33. data/lib/mongoid/errors/document_not_found.rb +2 -1
  34. data/lib/mongoid/errors/invalid_value.rb +16 -0
  35. data/lib/mongoid/errors/mongoid_error.rb +1 -1
  36. data/lib/mongoid/extensions.rb +2 -7
  37. data/lib/mongoid/extensions/array.rb +2 -2
  38. data/lib/mongoid/extensions/boolean.rb +14 -17
  39. data/lib/mongoid/extensions/float.rb +1 -0
  40. data/lib/mongoid/extensions/hash.rb +1 -1
  41. data/lib/mongoid/extensions/object.rb +4 -4
  42. data/lib/mongoid/extensions/object_id.rb +5 -5
  43. data/lib/mongoid/extensions/range.rb +8 -2
  44. data/lib/mongoid/extensions/string.rb +5 -17
  45. data/lib/mongoid/extensions/time.rb +2 -2
  46. data/lib/mongoid/factory.rb +3 -3
  47. data/lib/mongoid/fields.rb +9 -8
  48. data/lib/mongoid/fields/foreign_key.rb +3 -3
  49. data/lib/mongoid/fields/standard.rb +4 -16
  50. data/lib/mongoid/fields/validators/macro.rb +11 -3
  51. data/lib/mongoid/{finders.rb → findable.rb} +6 -2
  52. data/lib/mongoid/{indexes.rb → indexable.rb} +50 -55
  53. data/lib/mongoid/indexable/specification.rb +104 -0
  54. data/lib/mongoid/{indexes → indexable}/validators/options.rb +2 -1
  55. data/lib/mongoid/{inspection.rb → inspectable.rb} +15 -11
  56. data/lib/mongoid/{callbacks.rb → interceptable.rb} +3 -52
  57. data/lib/mongoid/log_subscriber.rb +22 -0
  58. data/lib/mongoid/matchable.rb +152 -0
  59. data/lib/mongoid/{matchers → matchable}/all.rb +1 -1
  60. data/lib/mongoid/{matchers → matchable}/and.rb +2 -2
  61. data/lib/mongoid/{matchers → matchable}/default.rb +1 -1
  62. data/lib/mongoid/{matchers → matchable}/exists.rb +1 -1
  63. data/lib/mongoid/{matchers → matchable}/gt.rb +1 -1
  64. data/lib/mongoid/{matchers → matchable}/gte.rb +1 -1
  65. data/lib/mongoid/{matchers → matchable}/in.rb +2 -2
  66. data/lib/mongoid/{matchers → matchable}/lt.rb +1 -1
  67. data/lib/mongoid/{matchers → matchable}/lte.rb +1 -1
  68. data/lib/mongoid/{matchers → matchable}/ne.rb +1 -1
  69. data/lib/mongoid/{matchers → matchable}/nin.rb +3 -2
  70. data/lib/mongoid/{matchers → matchable}/or.rb +2 -2
  71. data/lib/mongoid/{matchers → matchable}/size.rb +1 -1
  72. data/lib/mongoid/persistable.rb +212 -0
  73. data/lib/mongoid/persistable/creatable.rb +188 -0
  74. data/lib/mongoid/persistable/deletable.rb +148 -0
  75. data/lib/mongoid/persistable/destroyable.rb +55 -0
  76. data/lib/mongoid/persistable/incrementable.rb +36 -0
  77. data/lib/mongoid/persistable/logical.rb +38 -0
  78. data/lib/mongoid/persistable/poppable.rb +39 -0
  79. data/lib/mongoid/persistable/pullable.rb +55 -0
  80. data/lib/mongoid/persistable/pushable.rb +62 -0
  81. data/lib/mongoid/persistable/renamable.rb +35 -0
  82. data/lib/mongoid/persistable/savable.rb +52 -0
  83. data/lib/mongoid/persistable/settable.rb +33 -0
  84. data/lib/mongoid/persistable/unsettable.rb +36 -0
  85. data/lib/mongoid/persistable/updatable.rb +151 -0
  86. data/lib/mongoid/persistable/upsertable.rb +55 -0
  87. data/lib/mongoid/positional.rb +71 -0
  88. data/lib/mongoid/railtie.rb +32 -45
  89. data/lib/mongoid/railties/database.rake +12 -6
  90. data/lib/mongoid/relations.rb +3 -3
  91. data/lib/mongoid/relations/accessors.rb +13 -46
  92. data/lib/mongoid/relations/auto_save.rb +15 -36
  93. data/lib/mongoid/relations/binding.rb +0 -23
  94. data/lib/mongoid/relations/bindings/embedded/many.rb +1 -3
  95. data/lib/mongoid/relations/bindings/referenced/in.rb +3 -8
  96. data/lib/mongoid/relations/bindings/referenced/many_to_many.rb +3 -1
  97. data/lib/mongoid/relations/builder.rb +1 -1
  98. data/lib/mongoid/relations/builders.rb +2 -2
  99. data/lib/mongoid/relations/builders/nested_attributes/many.rb +10 -13
  100. data/lib/mongoid/relations/builders/nested_attributes/one.rb +4 -5
  101. data/lib/mongoid/relations/builders/referenced/in.rb +1 -1
  102. data/lib/mongoid/relations/builders/referenced/many.rb +1 -2
  103. data/lib/mongoid/relations/builders/referenced/many_to_many.rb +1 -2
  104. data/lib/mongoid/relations/builders/referenced/one.rb +1 -1
  105. data/lib/mongoid/relations/cascading.rb +3 -5
  106. data/lib/mongoid/relations/constraint.rb +1 -1
  107. data/lib/mongoid/relations/conversions.rb +1 -1
  108. data/lib/mongoid/relations/counter_cache.rb +39 -15
  109. data/lib/mongoid/relations/eager.rb +47 -0
  110. data/lib/mongoid/relations/eager/base.rb +57 -0
  111. data/lib/mongoid/relations/eager/belongs_to.rb +30 -0
  112. data/lib/mongoid/relations/eager/has_and_belongs_to_many.rb +40 -0
  113. data/lib/mongoid/relations/eager/has_many.rb +37 -0
  114. data/lib/mongoid/relations/eager/has_one.rb +29 -0
  115. data/lib/mongoid/relations/embedded/batchable.rb +3 -4
  116. data/lib/mongoid/relations/embedded/many.rb +7 -27
  117. data/lib/mongoid/relations/macros.rb +2 -4
  118. data/lib/mongoid/relations/many.rb +30 -31
  119. data/lib/mongoid/relations/metadata.rb +6 -75
  120. data/lib/mongoid/relations/nested_builder.rb +2 -2
  121. data/lib/mongoid/relations/options.rb +1 -0
  122. data/lib/mongoid/relations/polymorphic.rb +0 -1
  123. data/lib/mongoid/relations/proxy.rb +10 -32
  124. data/lib/mongoid/relations/referenced/in.rb +2 -18
  125. data/lib/mongoid/relations/referenced/many.rb +9 -22
  126. data/lib/mongoid/relations/referenced/many_to_many.rb +10 -33
  127. data/lib/mongoid/relations/referenced/one.rb +2 -21
  128. data/lib/mongoid/relations/synchronization.rb +3 -3
  129. data/lib/mongoid/relations/touchable.rb +33 -0
  130. data/lib/mongoid/{reloading.rb → reloadable.rb} +6 -4
  131. data/lib/mongoid/{scoping.rb → scopable.rb} +26 -3
  132. data/lib/mongoid/selectable.rb +59 -0
  133. data/lib/mongoid/{serialization.rb → serializable.rb} +10 -1
  134. data/lib/mongoid/sessions.rb +37 -345
  135. data/lib/mongoid/sessions/factory.rb +2 -0
  136. data/lib/mongoid/sessions/options.rb +176 -0
  137. data/lib/mongoid/sessions/storage_options.rb +140 -0
  138. data/lib/mongoid/sessions/thread_options.rb +19 -0
  139. data/lib/mongoid/sessions/validators/storage.rb +15 -1
  140. data/lib/mongoid/{sharding.rb → shardable.rb} +5 -1
  141. data/lib/mongoid/support/query_counter.rb +23 -0
  142. data/lib/mongoid/threaded.rb +0 -110
  143. data/lib/mongoid/threaded/lifecycle.rb +0 -28
  144. data/lib/mongoid/timestamps/updated/short.rb +2 -2
  145. data/lib/mongoid/{hierarchy.rb → traversable.rb} +9 -5
  146. data/lib/mongoid/{validations.rb → validatable.rb} +23 -9
  147. data/lib/mongoid/{validations → validatable}/associated.rb +3 -1
  148. data/lib/mongoid/{validations → validatable}/format.rb +1 -1
  149. data/lib/mongoid/{validations → validatable}/length.rb +1 -1
  150. data/lib/mongoid/{validations → validatable}/localizable.rb +1 -1
  151. data/lib/mongoid/{validations → validatable}/macros.rb +4 -3
  152. data/lib/mongoid/{validations → validatable}/presence.rb +1 -1
  153. data/lib/mongoid/{validations → validatable}/queryable.rb +1 -2
  154. data/lib/mongoid/{validations → validatable}/uniqueness.rb +3 -3
  155. data/lib/mongoid/version.rb +1 -1
  156. data/lib/rails/generators/mongoid/config/templates/mongoid.yml +9 -13
  157. data/lib/rails/generators/mongoid/model/model_generator.rb +0 -1
  158. data/lib/rails/generators/mongoid/model/templates/model.rb.tt +0 -3
  159. data/lib/rails/generators/mongoid_generator.rb +3 -40
  160. data/lib/rails/mongoid.rb +59 -57
  161. data/lib/support/ruby_version.rb +1 -1
  162. data/spec/app/models/account.rb +2 -6
  163. data/spec/app/models/acolyte.rb +1 -0
  164. data/spec/app/models/actor.rb +0 -1
  165. data/spec/app/models/address.rb +6 -1
  166. data/spec/app/models/animal.rb +1 -1
  167. data/spec/app/models/appointment.rb +2 -2
  168. data/spec/app/models/article.rb +1 -4
  169. data/spec/app/models/audio.rb +5 -0
  170. data/spec/app/models/author.rb +0 -2
  171. data/spec/app/models/band.rb +3 -2
  172. data/spec/app/models/bar.rb +1 -0
  173. data/spec/app/models/book.rb +1 -0
  174. data/spec/app/models/building.rb +0 -2
  175. data/spec/app/models/building_address.rb +0 -2
  176. data/spec/app/models/bus.rb +1 -1
  177. data/spec/app/models/canvas.rb +1 -1
  178. data/spec/app/models/contractor.rb +0 -2
  179. data/spec/app/models/country_code.rb +1 -1
  180. data/spec/app/models/definition.rb +2 -2
  181. data/spec/app/models/dragon.rb +4 -0
  182. data/spec/app/models/drug.rb +1 -3
  183. data/spec/app/models/dungeon.rb +4 -0
  184. data/spec/app/models/filesystem.rb +1 -0
  185. data/spec/app/models/fish.rb +0 -1
  186. data/spec/app/models/fruits.rb +6 -0
  187. data/spec/app/models/game.rb +0 -2
  188. data/spec/app/models/house.rb +0 -2
  189. data/spec/app/models/item.rb +1 -5
  190. data/spec/app/models/jar.rb +1 -1
  191. data/spec/app/models/label.rb +4 -4
  192. data/spec/app/models/login.rb +1 -1
  193. data/spec/app/models/movie.rb +1 -0
  194. data/spec/app/models/name.rb +3 -3
  195. data/spec/app/models/note.rb +1 -1
  196. data/spec/app/models/oscar.rb +1 -1
  197. data/spec/app/models/parent_doc.rb +1 -1
  198. data/spec/app/models/person.rb +13 -8
  199. data/spec/app/models/phone.rb +1 -3
  200. data/spec/app/models/player.rb +1 -1
  201. data/spec/app/models/post.rb +2 -1
  202. data/spec/app/models/quiz.rb +0 -3
  203. data/spec/app/models/record.rb +5 -5
  204. data/spec/app/models/registry.rb +1 -1
  205. data/spec/app/models/server.rb +1 -1
  206. data/spec/app/models/service.rb +3 -3
  207. data/spec/app/models/sound.rb +5 -0
  208. data/spec/app/models/template.rb +1 -1
  209. data/spec/app/models/title.rb +0 -1
  210. data/spec/app/models/track.rb +5 -5
  211. data/spec/app/models/tree.rb +1 -1
  212. data/spec/app/models/video.rb +0 -4
  213. data/spec/app/models/wiki_page.rb +1 -4
  214. data/spec/app/models/word.rb +3 -0
  215. data/spec/app/models/word_origin.rb +1 -1
  216. data/spec/config/mongoid.yml +7 -8
  217. data/spec/helpers.rb +18 -0
  218. data/spec/mongoid/atomic/modifiers_spec.rb +22 -22
  219. data/spec/mongoid/atomic/paths/embedded/many_spec.rb +8 -49
  220. data/spec/mongoid/atomic/paths/embedded/one_spec.rb +7 -49
  221. data/spec/mongoid/atomic/paths/root_spec.rb +3 -61
  222. data/spec/mongoid/atomic/paths_spec.rb +19 -19
  223. data/spec/mongoid/atomic_spec.rb +19 -19
  224. data/spec/mongoid/{nested_attributes_spec.rb → attributes/nested_spec.rb} +335 -448
  225. data/spec/mongoid/attributes/readonly_spec.rb +16 -16
  226. data/spec/mongoid/attributes_spec.rb +188 -434
  227. data/spec/mongoid/{dirty_spec.rb → changeable_spec.rb} +117 -148
  228. data/spec/mongoid/{components_spec.rb → composable_spec.rb} +3 -3
  229. data/spec/mongoid/config/environment_spec.rb +3 -3
  230. data/spec/mongoid/config/options_spec.rb +6 -6
  231. data/spec/mongoid/config_spec.rb +24 -48
  232. data/spec/mongoid/contextual/aggregable/memory_spec.rb +12 -12
  233. data/spec/mongoid/contextual/aggregable/mongo_spec.rb +46 -38
  234. data/spec/mongoid/contextual/atomic_spec.rb +60 -56
  235. data/spec/mongoid/contextual/find_and_modify_spec.rb +14 -14
  236. data/spec/mongoid/contextual/geo_near_spec.rb +22 -22
  237. data/spec/mongoid/contextual/map_reduce_spec.rb +27 -27
  238. data/spec/mongoid/contextual/memory_spec.rb +94 -94
  239. data/spec/mongoid/contextual/mongo_spec.rb +225 -139
  240. data/spec/mongoid/contextual/text_search_spec.rb +207 -0
  241. data/spec/mongoid/copyable_spec.rb +56 -68
  242. data/spec/mongoid/criteria/findable_spec.rb +991 -0
  243. data/spec/mongoid/{criterion/inspection_spec.rb → criteria/inspectable_spec.rb} +5 -5
  244. data/spec/mongoid/{criterion → criteria}/marshalable_spec.rb +2 -2
  245. data/spec/mongoid/criteria/modifiable_spec.rb +1063 -0
  246. data/spec/mongoid/{criterion/scoping_spec.rb → criteria/scopable_spec.rb} +31 -31
  247. data/spec/mongoid/criteria_spec.rb +530 -2207
  248. data/spec/mongoid/document_spec.rb +166 -120
  249. data/spec/mongoid/equality_spec.rb +22 -22
  250. data/spec/mongoid/errors/ambiguous_relationship_spec.rb +3 -3
  251. data/spec/mongoid/errors/callback_spec.rb +3 -3
  252. data/spec/mongoid/errors/delete_restriction_spec.rb +3 -3
  253. data/spec/mongoid/errors/document_not_found_spec.rb +11 -11
  254. data/spec/mongoid/errors/eager_load_spec.rb +3 -3
  255. data/spec/mongoid/errors/invalid_collection_spec.rb +3 -3
  256. data/spec/mongoid/errors/invalid_config_option_spec.rb +3 -3
  257. data/spec/mongoid/errors/invalid_field_option_spec.rb +3 -3
  258. data/spec/mongoid/errors/invalid_field_spec.rb +3 -3
  259. data/spec/mongoid/errors/invalid_find_spec.rb +3 -3
  260. data/spec/mongoid/errors/invalid_includes_spec.rb +3 -3
  261. data/spec/mongoid/errors/invalid_index_spec.rb +3 -3
  262. data/spec/mongoid/errors/invalid_options_spec.rb +3 -3
  263. data/spec/mongoid/errors/invalid_path_spec.rb +3 -3
  264. data/spec/mongoid/errors/invalid_scope_spec.rb +3 -3
  265. data/spec/mongoid/errors/invalid_set_polymorphic_relation_spec.rb +3 -3
  266. data/spec/mongoid/errors/invalid_storage_options_spec.rb +3 -3
  267. data/spec/mongoid/errors/invalid_time_spec.rb +3 -3
  268. data/spec/mongoid/errors/inverse_not_found_spec.rb +3 -3
  269. data/spec/mongoid/errors/mixed_relations_spec.rb +3 -3
  270. data/spec/mongoid/errors/mixed_session_configuration_spec.rb +3 -3
  271. data/spec/mongoid/errors/mongoid_error_spec.rb +7 -7
  272. data/spec/mongoid/errors/nested_attributes_metadata_not_found_spec.rb +3 -3
  273. data/spec/mongoid/errors/no_environment_spec.rb +3 -3
  274. data/spec/mongoid/errors/no_map_reduce_output_spec.rb +3 -3
  275. data/spec/mongoid/errors/no_metadata_spec.rb +3 -3
  276. data/spec/mongoid/errors/no_parent_spec.rb +3 -3
  277. data/spec/mongoid/errors/no_session_config_spec.rb +3 -3
  278. data/spec/mongoid/errors/no_session_database_spec.rb +3 -3
  279. data/spec/mongoid/errors/no_session_hosts_spec.rb +3 -3
  280. data/spec/mongoid/errors/no_sessions_config_spec.rb +3 -3
  281. data/spec/mongoid/errors/readonly_attribute_spec.rb +3 -3
  282. data/spec/mongoid/errors/scope_overwrite_spec.rb +3 -3
  283. data/spec/mongoid/errors/too_many_nested_attribute_records_spec.rb +3 -3
  284. data/spec/mongoid/errors/unknown_attribute_spec.rb +5 -5
  285. data/spec/mongoid/errors/unsaved_document_spec.rb +3 -3
  286. data/spec/mongoid/errors/unsupported_javascript_spec.rb +3 -3
  287. data/spec/mongoid/errors/validations_spec.rb +7 -7
  288. data/spec/mongoid/extensions/array_spec.rb +61 -61
  289. data/spec/mongoid/extensions/big_decimal_spec.rb +11 -11
  290. data/spec/mongoid/extensions/binary_spec.rb +12 -12
  291. data/spec/mongoid/extensions/boolean_spec.rb +18 -18
  292. data/spec/mongoid/extensions/date_spec.rb +13 -13
  293. data/spec/mongoid/extensions/date_time_spec.rb +9 -9
  294. data/spec/mongoid/extensions/false_class_spec.rb +5 -5
  295. data/spec/mongoid/extensions/float_spec.rb +29 -15
  296. data/spec/mongoid/extensions/hash_spec.rb +29 -29
  297. data/spec/mongoid/extensions/integer_spec.rb +15 -15
  298. data/spec/mongoid/extensions/module_spec.rb +2 -2
  299. data/spec/mongoid/extensions/nil_class_spec.rb +1 -1
  300. data/spec/mongoid/extensions/object_id_spec.rb +134 -134
  301. data/spec/mongoid/extensions/object_spec.rb +26 -26
  302. data/spec/mongoid/extensions/range_spec.rb +61 -12
  303. data/spec/mongoid/extensions/regexp_spec.rb +4 -4
  304. data/spec/mongoid/extensions/set_spec.rb +4 -4
  305. data/spec/mongoid/extensions/string_spec.rb +35 -46
  306. data/spec/mongoid/extensions/symbol_spec.rb +9 -9
  307. data/spec/mongoid/extensions/time_spec.rb +49 -49
  308. data/spec/mongoid/extensions/time_with_zone_spec.rb +34 -34
  309. data/spec/mongoid/extensions/true_class_spec.rb +5 -5
  310. data/spec/mongoid/extensions_spec.rb +15 -0
  311. data/spec/mongoid/factory_spec.rb +15 -15
  312. data/spec/mongoid/fields/foreign_key_spec.rb +73 -66
  313. data/spec/mongoid/fields/internal/foreign_keys/array_spec.rb +15 -15
  314. data/spec/mongoid/fields/internal/foreign_keys/object_spec.rb +22 -22
  315. data/spec/mongoid/fields/localized_spec.rb +23 -23
  316. data/spec/mongoid/fields/standard_spec.rb +12 -12
  317. data/spec/mongoid/fields_spec.rb +168 -209
  318. data/spec/mongoid/{finders_spec.rb → findable_spec.rb} +62 -27
  319. data/spec/mongoid/indexable/specification_spec.rb +102 -0
  320. data/spec/mongoid/{indexes_spec.rb → indexable_spec.rb} +171 -51
  321. data/spec/mongoid/{inspection_spec.rb → inspectable_spec.rb} +6 -14
  322. data/spec/mongoid/{callbacks_spec.rb → interceptable_spec.rb} +105 -105
  323. data/spec/mongoid/log_subscriber_spec.rb +74 -0
  324. data/spec/mongoid/loggable_spec.rb +1 -1
  325. data/spec/mongoid/{matchers → matchable}/all_spec.rb +4 -4
  326. data/spec/mongoid/{matchers → matchable}/and_spec.rb +11 -11
  327. data/spec/mongoid/{matchers → matchable}/default_spec.rb +15 -15
  328. data/spec/mongoid/{matchers → matchable}/exists_spec.rb +5 -5
  329. data/spec/mongoid/{matchers → matchable}/gt_spec.rb +9 -8
  330. data/spec/mongoid/{matchers → matchable}/gte_spec.rb +7 -7
  331. data/spec/mongoid/matchable/in_spec.rb +49 -0
  332. data/spec/mongoid/{matchers → matchable}/lt_spec.rb +7 -7
  333. data/spec/mongoid/{matchers → matchable}/lte_spec.rb +7 -7
  334. data/spec/mongoid/{matchers → matchable}/ne_spec.rb +3 -3
  335. data/spec/mongoid/matchable/nin_spec.rb +48 -0
  336. data/spec/mongoid/{matchers → matchable}/or_spec.rb +6 -6
  337. data/spec/mongoid/{matchers → matchable}/size_spec.rb +3 -3
  338. data/spec/mongoid/{matchers_spec.rb → matchable_spec.rb} +41 -41
  339. data/spec/mongoid/persistable/creatable_spec.rb +512 -0
  340. data/spec/mongoid/persistable/deletable_spec.rb +205 -0
  341. data/spec/mongoid/persistable/destroyable_spec.rb +148 -0
  342. data/spec/mongoid/persistable/incrementable_spec.rb +173 -0
  343. data/spec/mongoid/persistable/logical_spec.rb +143 -0
  344. data/spec/mongoid/persistable/poppable_spec.rb +115 -0
  345. data/spec/mongoid/persistable/pullable_spec.rb +228 -0
  346. data/spec/mongoid/persistable/pushable_spec.rb +258 -0
  347. data/spec/mongoid/persistable/renamable_spec.rb +135 -0
  348. data/spec/mongoid/persistable/savable_spec.rb +432 -0
  349. data/spec/mongoid/persistable/settable_spec.rb +139 -0
  350. data/spec/mongoid/persistable/unsettable_spec.rb +155 -0
  351. data/spec/mongoid/persistable/updatable_spec.rb +558 -0
  352. data/spec/mongoid/persistable/upsertable_spec.rb +106 -0
  353. data/spec/mongoid/persistable_spec.rb +206 -0
  354. data/spec/mongoid/{atomic/positionable_spec.rb → positional_spec.rb} +19 -14
  355. data/spec/mongoid/railties/document_spec.rb +2 -2
  356. data/spec/mongoid/relations/accessors_spec.rb +53 -145
  357. data/spec/mongoid/relations/auto_save_spec.rb +36 -16
  358. data/spec/mongoid/relations/bindings/embedded/in_spec.rb +6 -6
  359. data/spec/mongoid/relations/bindings/embedded/many_spec.rb +2 -2
  360. data/spec/mongoid/relations/bindings/embedded/one_spec.rb +3 -3
  361. data/spec/mongoid/relations/bindings/referenced/in_spec.rb +12 -12
  362. data/spec/mongoid/relations/bindings/referenced/many_spec.rb +6 -6
  363. data/spec/mongoid/relations/bindings/referenced/many_to_many_spec.rb +9 -9
  364. data/spec/mongoid/relations/bindings/referenced/one_spec.rb +6 -6
  365. data/spec/mongoid/relations/builders/embedded/in_spec.rb +4 -4
  366. data/spec/mongoid/relations/builders/embedded/many_spec.rb +18 -18
  367. data/spec/mongoid/relations/builders/embedded/one_spec.rb +11 -11
  368. data/spec/mongoid/relations/builders/nested_attributes/many_spec.rb +12 -13
  369. data/spec/mongoid/relations/builders/nested_attributes/one_spec.rb +14 -14
  370. data/spec/mongoid/relations/builders/referenced/in_spec.rb +22 -33
  371. data/spec/mongoid/relations/builders/referenced/many_spec.rb +15 -15
  372. data/spec/mongoid/relations/builders/referenced/many_to_many_spec.rb +18 -18
  373. data/spec/mongoid/relations/builders/referenced/one_spec.rb +11 -24
  374. data/spec/mongoid/relations/builders_spec.rb +21 -21
  375. data/spec/mongoid/relations/cascading/delete_spec.rb +7 -7
  376. data/spec/mongoid/relations/cascading/destroy_spec.rb +2 -2
  377. data/spec/mongoid/relations/cascading/nullify_spec.rb +2 -2
  378. data/spec/mongoid/relations/cascading/restrict_spec.rb +3 -3
  379. data/spec/mongoid/relations/cascading_spec.rb +16 -16
  380. data/spec/mongoid/relations/constraint_spec.rb +8 -7
  381. data/spec/mongoid/relations/conversions_spec.rb +16 -14
  382. data/spec/mongoid/relations/counter_cache_spec.rb +85 -0
  383. data/spec/mongoid/relations/cyclic_spec.rb +18 -18
  384. data/spec/mongoid/relations/eager/belongs_to_spec.rb +154 -0
  385. data/spec/mongoid/relations/eager/has_and_belongs_to_many_spec.rb +143 -0
  386. data/spec/mongoid/relations/eager/has_many_spec.rb +207 -0
  387. data/spec/mongoid/relations/eager/has_one_spec.rb +163 -0
  388. data/spec/mongoid/relations/eager_spec.rb +228 -0
  389. data/spec/mongoid/relations/embedded/dirty_spec.rb +8 -8
  390. data/spec/mongoid/relations/embedded/in_spec.rb +55 -56
  391. data/spec/mongoid/relations/embedded/many_spec.rb +357 -367
  392. data/spec/mongoid/relations/embedded/one_spec.rb +98 -139
  393. data/spec/mongoid/relations/macros_spec.rb +108 -102
  394. data/spec/mongoid/relations/metadata_spec.rb +147 -241
  395. data/spec/mongoid/relations/options_spec.rb +1 -1
  396. data/spec/mongoid/relations/polymorphic_spec.rb +13 -17
  397. data/spec/mongoid/relations/proxy_spec.rb +2 -2
  398. data/spec/mongoid/relations/referenced/in_spec.rb +128 -303
  399. data/spec/mongoid/relations/referenced/many_spec.rb +379 -522
  400. data/spec/mongoid/relations/referenced/many_to_many_spec.rb +345 -417
  401. data/spec/mongoid/relations/referenced/one_spec.rb +148 -263
  402. data/spec/mongoid/relations/reflections_spec.rb +6 -6
  403. data/spec/mongoid/relations/synchronization_spec.rb +46 -50
  404. data/spec/mongoid/relations/targets/enumerable_spec.rb +116 -116
  405. data/spec/mongoid/relations/touchable_spec.rb +296 -0
  406. data/spec/mongoid/relations_spec.rb +16 -15
  407. data/spec/mongoid/{reloading_spec.rb → reloadable_spec.rb} +20 -60
  408. data/spec/mongoid/{scoping_spec.rb → scopable_spec.rb} +74 -126
  409. data/spec/mongoid/selectable_spec.rb +134 -0
  410. data/spec/mongoid/{serialization_spec.rb → serializable_spec.rb} +111 -82
  411. data/spec/mongoid/sessions/factory_spec.rb +49 -28
  412. data/spec/mongoid/sessions/mongo_uri_spec.rb +7 -7
  413. data/spec/mongoid/sessions/options_spec.rb +92 -0
  414. data/spec/mongoid/sessions_spec.rb +288 -177
  415. data/spec/mongoid/{sharding_spec.rb → shardable_spec.rb} +8 -8
  416. data/spec/mongoid/state_spec.rb +10 -10
  417. data/spec/mongoid/threaded_spec.rb +17 -70
  418. data/spec/mongoid/timestamps/created/short_spec.rb +6 -6
  419. data/spec/mongoid/timestamps/created_spec.rb +5 -5
  420. data/spec/mongoid/timestamps/updated/short_spec.rb +10 -10
  421. data/spec/mongoid/timestamps/updated_spec.rb +8 -12
  422. data/spec/mongoid/timestamps_spec.rb +7 -11
  423. data/spec/mongoid/{hierarchy_spec.rb → traversable_spec.rb} +19 -19
  424. data/spec/mongoid/{validations → validatable}/associated_spec.rb +18 -18
  425. data/spec/mongoid/{validations → validatable}/format_spec.rb +6 -6
  426. data/spec/mongoid/{validations → validatable}/length_spec.rb +7 -7
  427. data/spec/mongoid/{validations → validatable}/numericality_spec.rb +1 -1
  428. data/spec/mongoid/{validations → validatable}/presence_spec.rb +31 -38
  429. data/spec/mongoid/{validations → validatable}/uniqueness_spec.rb +126 -183
  430. data/spec/mongoid/{validations_spec.rb → validatable_spec.rb} +28 -28
  431. data/spec/mongoid_spec.rb +8 -8
  432. data/spec/rails/mongoid_spec.rb +72 -87
  433. data/spec/spec_helper.rb +19 -17
  434. metadata +261 -283
  435. data/lib/mongoid/atomic/positionable.rb +0 -73
  436. data/lib/mongoid/components.rb +0 -92
  437. data/lib/mongoid/config/inflections.rb +0 -6
  438. data/lib/mongoid/contextual/eager.rb +0 -158
  439. data/lib/mongoid/criterion/findable.rb +0 -179
  440. data/lib/mongoid/errors/versioning_not_on_root.rb +0 -23
  441. data/lib/mongoid/identity_map.rb +0 -163
  442. data/lib/mongoid/json.rb +0 -16
  443. data/lib/mongoid/matchers.rb +0 -32
  444. data/lib/mongoid/matchers/strategies.rb +0 -97
  445. data/lib/mongoid/multi_parameter_attributes.rb +0 -105
  446. data/lib/mongoid/nested_attributes.rb +0 -78
  447. data/lib/mongoid/observer.rb +0 -192
  448. data/lib/mongoid/paranoia.rb +0 -136
  449. data/lib/mongoid/persistence.rb +0 -357
  450. data/lib/mongoid/persistence/atomic.rb +0 -231
  451. data/lib/mongoid/persistence/atomic/add_to_set.rb +0 -47
  452. data/lib/mongoid/persistence/atomic/bit.rb +0 -35
  453. data/lib/mongoid/persistence/atomic/inc.rb +0 -45
  454. data/lib/mongoid/persistence/atomic/operation.rb +0 -154
  455. data/lib/mongoid/persistence/atomic/pop.rb +0 -32
  456. data/lib/mongoid/persistence/atomic/pull.rb +0 -32
  457. data/lib/mongoid/persistence/atomic/pull_all.rb +0 -32
  458. data/lib/mongoid/persistence/atomic/push.rb +0 -25
  459. data/lib/mongoid/persistence/atomic/push_all.rb +0 -25
  460. data/lib/mongoid/persistence/atomic/rename.rb +0 -30
  461. data/lib/mongoid/persistence/atomic/sets.rb +0 -28
  462. data/lib/mongoid/persistence/atomic/unset.rb +0 -27
  463. data/lib/mongoid/persistence/deletion.rb +0 -31
  464. data/lib/mongoid/persistence/insertion.rb +0 -38
  465. data/lib/mongoid/persistence/modification.rb +0 -35
  466. data/lib/mongoid/persistence/operations.rb +0 -214
  467. data/lib/mongoid/persistence/operations/embedded/insert.rb +0 -46
  468. data/lib/mongoid/persistence/operations/embedded/remove.rb +0 -43
  469. data/lib/mongoid/persistence/operations/insert.rb +0 -34
  470. data/lib/mongoid/persistence/operations/remove.rb +0 -33
  471. data/lib/mongoid/persistence/operations/update.rb +0 -59
  472. data/lib/mongoid/persistence/operations/upsert.rb +0 -28
  473. data/lib/mongoid/persistence/upsertion.rb +0 -31
  474. data/lib/mongoid/unit_of_work.rb +0 -61
  475. data/lib/mongoid/versioning.rb +0 -217
  476. data/lib/rack/mongoid.rb +0 -2
  477. data/lib/rack/mongoid/middleware/identity_map.rb +0 -39
  478. data/lib/rails/generators/mongoid/observer/observer_generator.rb +0 -17
  479. data/lib/rails/generators/mongoid/observer/templates/observer.rb.tt +0 -4
  480. data/spec/app/models/actor_observer.rb +0 -15
  481. data/spec/app/models/callback_recorder.rb +0 -25
  482. data/spec/app/models/draft.rb +0 -9
  483. data/spec/app/models/paranoid_phone.rb +0 -25
  484. data/spec/app/models/paranoid_post.rb +0 -36
  485. data/spec/app/models/phone_observer.rb +0 -6
  486. data/spec/mongoid/#atomic_spec.rb# +0 -365
  487. data/spec/mongoid/attributes/processing_spec.rb +0 -149
  488. data/spec/mongoid/criterion/destructive_spec.rb +0 -101
  489. data/spec/mongoid/criterion/modifiable_spec.rb +0 -409
  490. data/spec/mongoid/criterion/modification_spec.rb +0 -402
  491. data/spec/mongoid/errors/versioning_not_on_root_spec.rb +0 -29
  492. data/spec/mongoid/identity_map_spec.rb +0 -564
  493. data/spec/mongoid/json_spec.rb +0 -33
  494. data/spec/mongoid/matchers/in_spec.rb +0 -25
  495. data/spec/mongoid/matchers/nin_spec.rb +0 -25
  496. data/spec/mongoid/multi_parameter_attributes_spec.rb +0 -128
  497. data/spec/mongoid/observer_spec.rb +0 -290
  498. data/spec/mongoid/paranoia_spec.rb +0 -759
  499. data/spec/mongoid/persistence/atomic/add_to_set_spec.rb +0 -262
  500. data/spec/mongoid/persistence/atomic/bit_spec.rb +0 -88
  501. data/spec/mongoid/persistence/atomic/inc_spec.rb +0 -133
  502. data/spec/mongoid/persistence/atomic/pop_spec.rb +0 -111
  503. data/spec/mongoid/persistence/atomic/pull_all_spec.rb +0 -77
  504. data/spec/mongoid/persistence/atomic/pull_spec.rb +0 -80
  505. data/spec/mongoid/persistence/atomic/push_all_spec.rb +0 -77
  506. data/spec/mongoid/persistence/atomic/push_spec.rb +0 -77
  507. data/spec/mongoid/persistence/atomic/rename_spec.rb +0 -42
  508. data/spec/mongoid/persistence/atomic/sets_spec.rb +0 -154
  509. data/spec/mongoid/persistence/atomic/unset_spec.rb +0 -65
  510. data/spec/mongoid/persistence/atomic_spec.rb +0 -216
  511. data/spec/mongoid/persistence/operations/embedded/insert_spec.rb +0 -191
  512. data/spec/mongoid/persistence/operations/embedded/remove_spec.rb +0 -8
  513. data/spec/mongoid/persistence/operations/insert_spec.rb +0 -149
  514. data/spec/mongoid/persistence/operations/remove_spec.rb +0 -113
  515. data/spec/mongoid/persistence/operations/update_spec.rb +0 -141
  516. data/spec/mongoid/persistence/operations/upsert_spec.rb +0 -59
  517. data/spec/mongoid/persistence/operations_spec.rb +0 -313
  518. data/spec/mongoid/persistence_spec.rb +0 -2279
  519. data/spec/mongoid/unit_of_work_spec.rb +0 -196
  520. data/spec/mongoid/versioning_spec.rb +0 -540
  521. data/spec/rack/mongoid/middleware/identity_map_spec.rb +0 -72
@@ -31,7 +31,7 @@ describe Mongoid::Contextual::GeoNear do
31
31
  end
32
32
 
33
33
  it "returns the average distance" do
34
- geo_near.average_distance.should_not be_nil
34
+ expect(geo_near.average_distance).to_not be_nil
35
35
  end
36
36
  end
37
37
 
@@ -46,7 +46,7 @@ describe Mongoid::Contextual::GeoNear do
46
46
  end
47
47
 
48
48
  it "returns 0.0" do
49
- geo_near.average_distance.should be_nil
49
+ expect(geo_near.average_distance).to be_nil
50
50
  end
51
51
  end
52
52
  end
@@ -84,7 +84,7 @@ describe Mongoid::Contextual::GeoNear do
84
84
  end
85
85
 
86
86
  it "returns all the documents" do
87
- results.should eq([ bar_one, bar_two ])
87
+ expect(results).to eq([ bar_one, bar_two ])
88
88
  end
89
89
  end
90
90
 
@@ -103,7 +103,7 @@ describe Mongoid::Contextual::GeoNear do
103
103
  end
104
104
 
105
105
  it "returns the limited documents" do
106
- results.should eq([ bar_one ])
106
+ expect(results).to eq([ bar_one ])
107
107
  end
108
108
  end
109
109
 
@@ -122,7 +122,7 @@ describe Mongoid::Contextual::GeoNear do
122
122
  end
123
123
 
124
124
  it "returns the limited documents" do
125
- results.should eq([ bar_one ])
125
+ expect(results).to eq([ bar_one ])
126
126
  end
127
127
  end
128
128
 
@@ -141,7 +141,7 @@ describe Mongoid::Contextual::GeoNear do
141
141
  end
142
142
 
143
143
  it "returns the documents" do
144
- results.should eq([ bar_one, bar_two ])
144
+ expect(results).to eq([ bar_one, bar_two ])
145
145
  end
146
146
  end
147
147
 
@@ -160,11 +160,11 @@ describe Mongoid::Contextual::GeoNear do
160
160
  end
161
161
 
162
162
  it "returns the documents" do
163
- results.should eq([ bar_one, bar_two ])
163
+ expect(results).to eq([ bar_one, bar_two ])
164
164
  end
165
165
 
166
166
  it "multiplies the distance factor" do
167
- results.first.geo_near_distance.to_i.should eq(2490)
167
+ expect(results.first.geo_near_distance.to_i).to eq(2490)
168
168
  end
169
169
  end
170
170
 
@@ -183,7 +183,7 @@ describe Mongoid::Contextual::GeoNear do
183
183
  end
184
184
 
185
185
  it "returns the documents" do
186
- results.should eq([ bar_one, bar_two ])
186
+ expect(results).to eq([ bar_one, bar_two ])
187
187
  end
188
188
  end
189
189
  end
@@ -217,7 +217,7 @@ describe Mongoid::Contextual::GeoNear do
217
217
  end
218
218
 
219
219
  it "returns false" do
220
- geo_near.should_not be_empty
220
+ expect(geo_near).to_not be_empty
221
221
  end
222
222
  end
223
223
 
@@ -228,7 +228,7 @@ describe Mongoid::Contextual::GeoNear do
228
228
  end
229
229
 
230
230
  it "returns true" do
231
- geo_near.should be_empty
231
+ expect(geo_near).to be_empty
232
232
  end
233
233
  end
234
234
  end
@@ -264,7 +264,7 @@ describe Mongoid::Contextual::GeoNear do
264
264
  end
265
265
 
266
266
  it "returns a hash" do
267
- execution_results.should be_a_kind_of(Hash)
267
+ expect(execution_results).to be_a_kind_of(Hash)
268
268
  end
269
269
  end
270
270
 
@@ -297,7 +297,7 @@ describe Mongoid::Contextual::GeoNear do
297
297
  end
298
298
 
299
299
  it "returns the max distance" do
300
- geo_near.max_distance.should_not be_nil
300
+ expect(geo_near.max_distance).to_not be_nil
301
301
  end
302
302
  end
303
303
 
@@ -312,7 +312,7 @@ describe Mongoid::Contextual::GeoNear do
312
312
  end
313
313
 
314
314
  it "returns 0.0" do
315
- geo_near.max_distance.should eq(0.0)
315
+ expect(geo_near.max_distance).to eq(0.0)
316
316
  end
317
317
  end
318
318
  end
@@ -344,31 +344,31 @@ describe Mongoid::Contextual::GeoNear do
344
344
  end
345
345
 
346
346
  it "contains the selector" do
347
- geo_near.inspect.should include("selector")
347
+ expect(geo_near.inspect).to include("selector")
348
348
  end
349
349
 
350
350
  it "contains the class" do
351
- geo_near.inspect.should include("class")
351
+ expect(geo_near.inspect).to include("class")
352
352
  end
353
353
 
354
354
  it "contains the near" do
355
- geo_near.inspect.should include("near")
355
+ expect(geo_near.inspect).to include("near")
356
356
  end
357
357
 
358
358
  it "contains the multiplier" do
359
- geo_near.inspect.should include("multiplier")
359
+ expect(geo_near.inspect).to include("multiplier")
360
360
  end
361
361
 
362
362
  it "contains the max" do
363
- geo_near.inspect.should include("max")
363
+ expect(geo_near.inspect).to include("max")
364
364
  end
365
365
 
366
366
  it "contains the unique" do
367
- geo_near.inspect.should include("unique")
367
+ expect(geo_near.inspect).to include("unique")
368
368
  end
369
369
 
370
370
  it "contains the spherical" do
371
- geo_near.inspect.should include("spherical")
371
+ expect(geo_near.inspect).to include("spherical")
372
372
  end
373
373
  end
374
374
 
@@ -399,7 +399,7 @@ describe Mongoid::Contextual::GeoNear do
399
399
  end
400
400
 
401
401
  it "returns the execution time" do
402
- geo_near.time.should_not be_nil
402
+ expect(geo_near.time).to_not be_nil
403
403
  end
404
404
  end
405
405
  end
@@ -52,7 +52,7 @@ describe Mongoid::Contextual::MapReduce do
52
52
  end
53
53
 
54
54
  it "returns the db command" do
55
- map_reduce.command.should eq(base_command)
55
+ expect(map_reduce.command).to eq(base_command)
56
56
  end
57
57
 
58
58
  context "with sort" do
@@ -61,7 +61,7 @@ describe Mongoid::Contextual::MapReduce do
61
61
  end
62
62
 
63
63
  it "returns the db command with a sort option" do
64
- map_reduce.command.should eq(base_command.merge(sort: {'name' => -1}))
64
+ expect(map_reduce.command).to eq(base_command.merge(sort: {'name' => -1}))
65
65
  end
66
66
  end
67
67
 
@@ -71,7 +71,7 @@ describe Mongoid::Contextual::MapReduce do
71
71
  end
72
72
 
73
73
  it "returns the db command with a limit option" do
74
- map_reduce.command.should eq(base_command.merge(limit: 10))
74
+ expect(map_reduce.command).to eq(base_command.merge(limit: 10))
75
75
  end
76
76
  end
77
77
  end
@@ -91,7 +91,7 @@ describe Mongoid::Contextual::MapReduce do
91
91
  end
92
92
 
93
93
  it "returns the map/reduce counts" do
94
- counts.should eq({
94
+ expect(counts).to eq({
95
95
  "input" => 2,
96
96
  "emit" => 2,
97
97
  "reduce" => 0,
@@ -117,7 +117,7 @@ describe Mongoid::Contextual::MapReduce do
117
117
  end
118
118
 
119
119
  it "iterates over the results" do
120
- results.entries.should eq([
120
+ expect(results.entries).to eq([
121
121
  { "_id" => "Depeche Mode", "value" => { "likes" => 200 }},
122
122
  { "_id" => "Tool", "value" => { "likes" => 100 }}
123
123
  ])
@@ -131,7 +131,7 @@ describe Mongoid::Contextual::MapReduce do
131
131
  end
132
132
 
133
133
  it "iterates over the results" do
134
- results.entries.should eq([
134
+ expect(results.entries).to eq([
135
135
  { "_id" => "Depeche Mode", "value" => { "likes" => 200 }},
136
136
  { "_id" => "Tool", "value" => { "likes" => 100 }}
137
137
  ])
@@ -158,7 +158,7 @@ describe Mongoid::Contextual::MapReduce do
158
158
  end
159
159
 
160
160
  it "does not raise an error" do
161
- results.entries.should be_empty
161
+ expect(results.entries).to be_empty
162
162
  end
163
163
  end
164
164
  end
@@ -178,7 +178,7 @@ describe Mongoid::Contextual::MapReduce do
178
178
  end
179
179
 
180
180
  it "returns the emitted counts" do
181
- emitted.should eq(2)
181
+ expect(emitted).to eq(2)
182
182
  end
183
183
  end
184
184
 
@@ -199,7 +199,7 @@ describe Mongoid::Contextual::MapReduce do
199
199
  end
200
200
 
201
201
  it "returns false" do
202
- results.should_not be_empty
202
+ expect(results).to_not be_empty
203
203
  end
204
204
  end
205
205
 
@@ -214,7 +214,7 @@ describe Mongoid::Contextual::MapReduce do
214
214
  end
215
215
 
216
216
  it "returns true" do
217
- results.should be_empty
217
+ expect(results).to be_empty
218
218
  end
219
219
  end
220
220
  end
@@ -234,7 +234,7 @@ describe Mongoid::Contextual::MapReduce do
234
234
  end
235
235
 
236
236
  it "sets the finalize command" do
237
- finalized.command[:finalize].should eq("testing")
237
+ expect(finalized.command[:finalize]).to eq("testing")
238
238
  end
239
239
  end
240
240
 
@@ -253,7 +253,7 @@ describe Mongoid::Contextual::MapReduce do
253
253
  end
254
254
 
255
255
  it "returns the input counts" do
256
- input.should eq(2)
256
+ expect(input).to eq(2)
257
257
  end
258
258
  end
259
259
 
@@ -272,7 +272,7 @@ describe Mongoid::Contextual::MapReduce do
272
272
  end
273
273
 
274
274
  it "adds the jsMode flag to the command" do
275
- results.command[:jsMode].should be_true
275
+ expect(results.command[:jsMode]).to be true
276
276
  end
277
277
  end
278
278
 
@@ -293,7 +293,7 @@ describe Mongoid::Contextual::MapReduce do
293
293
  end
294
294
 
295
295
  it "sets the out command" do
296
- out.command[:out].should eq(inline: 1)
296
+ expect(out.command[:out]).to eq(inline: 1)
297
297
  end
298
298
  end
299
299
 
@@ -306,7 +306,7 @@ describe Mongoid::Contextual::MapReduce do
306
306
  end
307
307
 
308
308
  it "sets the out command value to a string" do
309
- out.command[:out].should eq(replace: "test")
309
+ expect(out.command[:out]).to eq(replace: "test")
310
310
  end
311
311
  end
312
312
  end
@@ -327,7 +327,7 @@ describe Mongoid::Contextual::MapReduce do
327
327
  end
328
328
 
329
329
  it "returns the output counts" do
330
- output.should eq(2)
330
+ expect(output).to eq(2)
331
331
  end
332
332
  end
333
333
 
@@ -346,7 +346,7 @@ describe Mongoid::Contextual::MapReduce do
346
346
  end
347
347
 
348
348
  it "returns the reduce counts" do
349
- reduced.should eq(0)
349
+ expect(reduced).to eq(0)
350
350
  end
351
351
  end
352
352
 
@@ -373,7 +373,7 @@ describe Mongoid::Contextual::MapReduce do
373
373
  end
374
374
 
375
375
  it "adds the variables to the global js scope" do
376
- results.first["value"]["global"].should eq(5)
376
+ expect(results.first["value"]["global"]).to eq(5)
377
377
  end
378
378
  end
379
379
 
@@ -392,7 +392,7 @@ describe Mongoid::Contextual::MapReduce do
392
392
  end
393
393
 
394
394
  it "returns the execution time" do
395
- time.should_not be_nil
395
+ expect(time).to_not be_nil
396
396
  end
397
397
  end
398
398
 
@@ -411,7 +411,7 @@ describe Mongoid::Contextual::MapReduce do
411
411
  end
412
412
 
413
413
  it "returns a hash" do
414
- execution_results.should be_a_kind_of Hash
414
+ expect(execution_results).to be_a_kind_of Hash
415
415
  end
416
416
  end
417
417
 
@@ -434,31 +434,31 @@ describe Mongoid::Contextual::MapReduce do
434
434
  end
435
435
 
436
436
  it "returns a string" do
437
- inspection.should be_a_kind_of String
437
+ expect(inspection).to be_a_kind_of String
438
438
  end
439
439
 
440
440
  it "includes the criteria selector" do
441
- inspection.should include("selector:")
441
+ expect(inspection).to include("selector:")
442
442
  end
443
443
 
444
444
  it "includes the class" do
445
- inspection.should include("class:")
445
+ expect(inspection).to include("class:")
446
446
  end
447
447
 
448
448
  it "includes the map function" do
449
- inspection.should include("map:")
449
+ expect(inspection).to include("map:")
450
450
  end
451
451
 
452
452
  it "includes the reduce function" do
453
- inspection.should include("reduce:")
453
+ expect(inspection).to include("reduce:")
454
454
  end
455
455
 
456
456
  it "includes the finalize function" do
457
- inspection.should include("finalize:")
457
+ expect(inspection).to include("finalize:")
458
458
  end
459
459
 
460
460
  it "includes the out option" do
461
- inspection.should include("out:")
461
+ expect(inspection).to include("out:")
462
462
  end
463
463
  end
464
464
  end
@@ -27,7 +27,7 @@ describe Mongoid::Contextual::Memory do
27
27
  end
28
28
 
29
29
  it "returns false" do
30
- context.send(method).should be_false
30
+ expect(context.send(method)).to be false
31
31
  end
32
32
  end
33
33
 
@@ -44,7 +44,7 @@ describe Mongoid::Contextual::Memory do
44
44
  end
45
45
 
46
46
  it "returns true" do
47
- context.send(method).should be_true
47
+ expect(context.send(method)).to be true
48
48
  end
49
49
  end
50
50
  end
@@ -73,7 +73,7 @@ describe Mongoid::Contextual::Memory do
73
73
  context "context when no arguments are provided" do
74
74
 
75
75
  it "returns the number of matches" do
76
- context.count.should eq(1)
76
+ expect(context.count).to eq(1)
77
77
  end
78
78
  end
79
79
 
@@ -86,7 +86,7 @@ describe Mongoid::Contextual::Memory do
86
86
  end
87
87
 
88
88
  it "returns 1" do
89
- count.should eq(1)
89
+ expect(count).to eq(1)
90
90
  end
91
91
  end
92
92
 
@@ -97,7 +97,7 @@ describe Mongoid::Contextual::Memory do
97
97
  end
98
98
 
99
99
  it "returns 0" do
100
- count.should eq(0)
100
+ expect(count).to eq(0)
101
101
  end
102
102
  end
103
103
  end
@@ -113,7 +113,7 @@ describe Mongoid::Contextual::Memory do
113
113
  end
114
114
 
115
115
  it "returns 1" do
116
- count.should eq(1)
116
+ expect(count).to eq(1)
117
117
  end
118
118
  end
119
119
 
@@ -126,7 +126,7 @@ describe Mongoid::Contextual::Memory do
126
126
  end
127
127
 
128
128
  it "returns 0" do
129
- count.should eq(0)
129
+ expect(count).to eq(0)
130
130
  end
131
131
  end
132
132
  end
@@ -169,31 +169,31 @@ describe Mongoid::Contextual::Memory do
169
169
  end
170
170
 
171
171
  it "deletes the first matching document" do
172
- hobrecht.should be_destroyed
172
+ expect(hobrecht).to be_destroyed
173
173
  end
174
174
 
175
175
  it "deletes the last matching document" do
176
- friedel.should be_destroyed
176
+ expect(friedel).to be_destroyed
177
177
  end
178
178
 
179
179
  it "does not delete non matching docs" do
180
- pfluger.should_not be_destroyed
180
+ expect(pfluger).to_not be_destroyed
181
181
  end
182
182
 
183
183
  it "removes the docs from the relation" do
184
- person.addresses.should eq([ pfluger ])
184
+ expect(person.addresses).to eq([ pfluger ])
185
185
  end
186
186
 
187
187
  it "removes the docs from the context" do
188
- context.entries.should be_empty
188
+ expect(context.entries).to be_empty
189
189
  end
190
190
 
191
191
  it "persists the changes to the database" do
192
- person.reload.addresses.should eq([ pfluger ])
192
+ expect(person.reload.addresses).to eq([ pfluger ])
193
193
  end
194
194
 
195
195
  it "returns the number of deleted documents" do
196
- deleted.should eq(2)
196
+ expect(deleted).to eq(2)
197
197
  end
198
198
  end
199
199
 
@@ -222,27 +222,27 @@ describe Mongoid::Contextual::Memory do
222
222
  end
223
223
 
224
224
  it "deletes the first matching document" do
225
- work.should be_destroyed
225
+ expect(work).to be_destroyed
226
226
  end
227
227
 
228
228
  it "does not delete non matching docs" do
229
- home.should_not be_destroyed
229
+ expect(home).to_not be_destroyed
230
230
  end
231
231
 
232
232
  it "removes the docs from the relation" do
233
- person.addresses.first.locations.should eq([ home ])
233
+ expect(person.addresses.first.locations).to eq([ home ])
234
234
  end
235
235
 
236
236
  it "removes the docs from the context" do
237
- context.entries.should be_empty
237
+ expect(context.entries).to be_empty
238
238
  end
239
239
 
240
240
  it "persists the changes to the database" do
241
- person.reload.addresses.first.locations.should eq([ home ])
241
+ expect(person.reload.addresses.first.locations).to eq([ home ])
242
242
  end
243
243
 
244
244
  it "returns the number of deleted documents" do
245
- deleted.should eq(1)
245
+ expect(deleted).to eq(1)
246
246
  end
247
247
  end
248
248
  end
@@ -283,31 +283,31 @@ describe Mongoid::Contextual::Memory do
283
283
  end
284
284
 
285
285
  it "deletes the first matching document" do
286
- hobrecht.should be_destroyed
286
+ expect(hobrecht).to be_destroyed
287
287
  end
288
288
 
289
289
  it "deletes the last matching document" do
290
- friedel.should be_destroyed
290
+ expect(friedel).to be_destroyed
291
291
  end
292
292
 
293
293
  it "does not delete non matching docs" do
294
- pfluger.should_not be_destroyed
294
+ expect(pfluger).to_not be_destroyed
295
295
  end
296
296
 
297
297
  it "removes the docs from the relation" do
298
- person.addresses.should eq([ pfluger ])
298
+ expect(person.addresses).to eq([ pfluger ])
299
299
  end
300
300
 
301
301
  it "removes the docs from the context" do
302
- context.entries.should be_empty
302
+ expect(context.entries).to be_empty
303
303
  end
304
304
 
305
305
  it "persists the changes to the database" do
306
- person.reload.addresses.should eq([ pfluger ])
306
+ expect(person.reload.addresses).to eq([ pfluger ])
307
307
  end
308
308
 
309
309
  it "returns the number of destroyed documents" do
310
- destroyed.should eq(2)
310
+ expect(destroyed).to eq(2)
311
311
  end
312
312
  end
313
313
  end
@@ -335,7 +335,7 @@ describe Mongoid::Contextual::Memory do
335
335
  end
336
336
 
337
337
  it "returns the distinct field values" do
338
- context.distinct(:street).should eq([ "hobrecht" ])
338
+ expect(context.distinct(:street)).to eq([ "hobrecht" ])
339
339
  end
340
340
  end
341
341
 
@@ -352,7 +352,7 @@ describe Mongoid::Contextual::Memory do
352
352
  end
353
353
 
354
354
  it "returns the distinct field values" do
355
- context.distinct(:street).should eq([ "hobrecht", "friedel" ])
355
+ expect(context.distinct(:street)).to eq([ "hobrecht", "friedel" ])
356
356
  end
357
357
  end
358
358
  end
@@ -384,7 +384,7 @@ describe Mongoid::Contextual::Memory do
384
384
  end
385
385
 
386
386
  it "contains no documents" do
387
- context.map(&:street).should be_empty
387
+ expect(context.map(&:street)).to be_empty
388
388
  end
389
389
 
390
390
  context "when calling next on the enumerator" do
@@ -401,13 +401,13 @@ describe Mongoid::Contextual::Memory do
401
401
 
402
402
  it "yields mongoid documents to the block" do
403
403
  context.each do |doc|
404
- doc.should be_a(Mongoid::Document)
404
+ expect(doc).to be_a(Mongoid::Document)
405
405
  end
406
406
  end
407
407
 
408
408
  it "iterates over the matching documents" do
409
409
  context.each do |doc|
410
- doc.should eq(hobrecht)
410
+ expect(doc).to eq(hobrecht)
411
411
  end
412
412
  end
413
413
  end
@@ -419,7 +419,7 @@ describe Mongoid::Contextual::Memory do
419
419
  end
420
420
 
421
421
  it "returns an enumerator" do
422
- enum.should be_a(Enumerator)
422
+ expect(enum).to be_a(Enumerator)
423
423
  end
424
424
 
425
425
  context "when iterating over the enumerator" do
@@ -428,7 +428,7 @@ describe Mongoid::Contextual::Memory do
428
428
 
429
429
  it "yields mongoid documents to the block" do
430
430
  enum.each do |doc|
431
- doc.should be_a(Mongoid::Document)
431
+ expect(doc).to be_a(Mongoid::Document)
432
432
  end
433
433
  end
434
434
  end
@@ -436,7 +436,7 @@ describe Mongoid::Contextual::Memory do
436
436
  context "when iterating with next" do
437
437
 
438
438
  it "yields mongoid documents" do
439
- enum.next.should be_a(Mongoid::Document)
439
+ expect(enum.next).to be_a(Mongoid::Document)
440
440
  end
441
441
  end
442
442
  end
@@ -466,7 +466,7 @@ describe Mongoid::Contextual::Memory do
466
466
  end
467
467
 
468
468
  it "returns true" do
469
- context.should be_exists
469
+ expect(context).to be_exists
470
470
  end
471
471
  end
472
472
 
@@ -483,7 +483,7 @@ describe Mongoid::Contextual::Memory do
483
483
  end
484
484
 
485
485
  it "returns false" do
486
- context.should_not be_exists
486
+ expect(context).to_not be_exists
487
487
  end
488
488
  end
489
489
  end
@@ -511,7 +511,7 @@ describe Mongoid::Contextual::Memory do
511
511
  end
512
512
 
513
513
  it "returns the first matching document" do
514
- context.send(method).should eq(hobrecht)
514
+ expect(context.send(method)).to eq(hobrecht)
515
515
  end
516
516
  end
517
517
  end
@@ -539,15 +539,15 @@ describe Mongoid::Contextual::Memory do
539
539
  end
540
540
 
541
541
  it "sets the criteria" do
542
- context.criteria.should eq(criteria)
542
+ expect(context.criteria).to eq(criteria)
543
543
  end
544
544
 
545
545
  it "sets the klass" do
546
- context.klass.should eq(Address)
546
+ expect(context.klass).to eq(Address)
547
547
  end
548
548
 
549
549
  it "sets the matching documents" do
550
- context.documents.should eq([ hobrecht ])
550
+ expect(context.documents).to eq([ hobrecht ])
551
551
  end
552
552
  end
553
553
 
@@ -572,7 +572,7 @@ describe Mongoid::Contextual::Memory do
572
572
  end
573
573
 
574
574
  it "limits the matching documents" do
575
- context.should eq([ friedel ])
575
+ expect(context).to eq([ friedel ])
576
576
  end
577
577
  end
578
578
 
@@ -597,7 +597,7 @@ describe Mongoid::Contextual::Memory do
597
597
  end
598
598
 
599
599
  it "limits the matching documents" do
600
- context.should eq([ hobrecht ])
600
+ expect(context).to eq([ hobrecht ])
601
601
  end
602
602
  end
603
603
  end
@@ -623,7 +623,7 @@ describe Mongoid::Contextual::Memory do
623
623
  end
624
624
 
625
625
  it "returns the last matching document" do
626
- context.last.should eq(friedel)
626
+ expect(context.last).to eq(friedel)
627
627
  end
628
628
  end
629
629
 
@@ -652,7 +652,7 @@ describe Mongoid::Contextual::Memory do
652
652
  end
653
653
 
654
654
  it "returns the number of matches" do
655
- context.send(method).should eq(1)
655
+ expect(context.send(method)).to eq(1)
656
656
  end
657
657
  end
658
658
 
@@ -669,7 +669,7 @@ describe Mongoid::Contextual::Memory do
669
669
  end
670
670
 
671
671
  it "returns zero" do
672
- context.send(method).should eq(0)
672
+ expect(context.send(method)).to eq(0)
673
673
  end
674
674
  end
675
675
  end
@@ -704,7 +704,7 @@ describe Mongoid::Contextual::Memory do
704
704
  end
705
705
 
706
706
  it "returns the context" do
707
- limit.should eq(context)
707
+ expect(limit).to eq(context)
708
708
  end
709
709
 
710
710
  context "when asking for all documents" do
@@ -712,7 +712,7 @@ describe Mongoid::Contextual::Memory do
712
712
  context "when only a limit exists" do
713
713
 
714
714
  it "only returns the limited documents" do
715
- context.entries.should eq([ hobrecht, friedel ])
715
+ expect(context.entries).to eq([ hobrecht, friedel ])
716
716
  end
717
717
  end
718
718
 
@@ -723,7 +723,7 @@ describe Mongoid::Contextual::Memory do
723
723
  end
724
724
 
725
725
  it "applies the skip before the limit" do
726
- context.entries.should eq([ friedel, pfluger ])
726
+ expect(context.entries).to eq([ friedel, pfluger ])
727
727
  end
728
728
  end
729
729
  end
@@ -758,7 +758,7 @@ describe Mongoid::Contextual::Memory do
758
758
  end
759
759
 
760
760
  it "returns the context" do
761
- skip.should eq(context)
761
+ expect(skip).to eq(context)
762
762
  end
763
763
 
764
764
  context "when asking for all documents" do
@@ -766,7 +766,7 @@ describe Mongoid::Contextual::Memory do
766
766
  context "when only a skip exists" do
767
767
 
768
768
  it "skips the correct number" do
769
- context.entries.should eq([ friedel, pfluger ])
769
+ expect(context.entries).to eq([ friedel, pfluger ])
770
770
  end
771
771
  end
772
772
 
@@ -777,7 +777,7 @@ describe Mongoid::Contextual::Memory do
777
777
  end
778
778
 
779
779
  it "applies the skip before the limit" do
780
- context.entries.should eq([ friedel ])
780
+ expect(context.entries).to eq([ friedel ])
781
781
  end
782
782
  end
783
783
  end
@@ -816,11 +816,11 @@ describe Mongoid::Contextual::Memory do
816
816
  end
817
817
 
818
818
  it "sorts the documents" do
819
- context.entries.should eq([ friedel, hobrecht, pfluger ])
819
+ expect(context.entries).to eq([ friedel, hobrecht, pfluger ])
820
820
  end
821
821
 
822
822
  it "returns the context" do
823
- sorted.should eq(context)
823
+ expect(sorted).to eq(context)
824
824
  end
825
825
  end
826
826
 
@@ -833,11 +833,11 @@ describe Mongoid::Contextual::Memory do
833
833
  end
834
834
 
835
835
  it "sorts the documents" do
836
- context.entries.should eq([ pfluger, hobrecht, friedel ])
836
+ expect(context.entries).to eq([ pfluger, hobrecht, friedel ])
837
837
  end
838
838
 
839
839
  it "returns the context" do
840
- sorted.should eq(context)
840
+ expect(sorted).to eq(context)
841
841
  end
842
842
  end
843
843
 
@@ -853,11 +853,11 @@ describe Mongoid::Contextual::Memory do
853
853
  end
854
854
 
855
855
  it "sorts the documents" do
856
- context.entries.should eq([ friedel, hobrecht, pfluger ])
856
+ expect(context.entries).to eq([ friedel, hobrecht, pfluger ])
857
857
  end
858
858
 
859
859
  it "returns the context" do
860
- sorted.should eq(context)
860
+ expect(sorted).to eq(context)
861
861
  end
862
862
  end
863
863
  end
@@ -880,11 +880,11 @@ describe Mongoid::Contextual::Memory do
880
880
  end
881
881
 
882
882
  it "sorts the documents" do
883
- context.entries.should eq([ friedel, lenau, pfluger, hobrecht ])
883
+ expect(context.entries).to eq([ friedel, lenau, pfluger, hobrecht ])
884
884
  end
885
885
 
886
886
  it "returns the context" do
887
- sorted.should eq(context)
887
+ expect(sorted).to eq(context)
888
888
  end
889
889
  end
890
890
 
@@ -895,11 +895,11 @@ describe Mongoid::Contextual::Memory do
895
895
  end
896
896
 
897
897
  it "sorts the documents" do
898
- context.entries.should eq([ hobrecht, pfluger, lenau, friedel ])
898
+ expect(context.entries).to eq([ hobrecht, pfluger, lenau, friedel ])
899
899
  end
900
900
 
901
901
  it "returns the context" do
902
- sorted.should eq(context)
902
+ expect(sorted).to eq(context)
903
903
  end
904
904
  end
905
905
  end
@@ -911,11 +911,11 @@ describe Mongoid::Contextual::Memory do
911
911
  end
912
912
 
913
913
  it "does not sort the documents" do
914
- context.entries.should eq([ hobrecht, friedel, pfluger ])
914
+ expect(context.entries).to eq([ hobrecht, friedel, pfluger ])
915
915
  end
916
916
 
917
917
  it "returns the context" do
918
- sorted.should eq(context)
918
+ expect(sorted).to eq(context)
919
919
  end
920
920
  end
921
921
 
@@ -926,7 +926,7 @@ describe Mongoid::Contextual::Memory do
926
926
  end
927
927
 
928
928
  it "sorts the documents" do
929
- context.entries.should eq([ friedel, hobrecht, pfluger ])
929
+ expect(context.entries).to eq([ friedel, hobrecht, pfluger ])
930
930
  end
931
931
  end
932
932
  end
@@ -968,29 +968,29 @@ describe Mongoid::Contextual::Memory do
968
968
  end
969
969
 
970
970
  it "updates the first matching document" do
971
- hobrecht.number.should eq(5)
971
+ expect(hobrecht.number).to eq(5)
972
972
  end
973
973
 
974
974
  it "does not update the last matching document" do
975
- friedel.number.should be_nil
975
+ expect(friedel.number).to be_nil
976
976
  end
977
977
 
978
978
  it "does not update non matching docs" do
979
- pfluger.number.should be_nil
979
+ expect(pfluger.number).to be_nil
980
980
  end
981
981
 
982
982
  context "when reloading the embedded documents" do
983
983
 
984
984
  it "updates the first matching document" do
985
- hobrecht.reload.number.should eq(5)
985
+ expect(hobrecht.reload.number).to eq(5)
986
986
  end
987
987
 
988
988
  it "updates the last matching document" do
989
- friedel.reload.number.should be_nil
989
+ expect(friedel.reload.number).to be_nil
990
990
  end
991
991
 
992
992
  it "does not update non matching docs" do
993
- pfluger.reload.number.should be_nil
993
+ expect(pfluger.reload.number).to be_nil
994
994
  end
995
995
  end
996
996
  end
@@ -998,7 +998,7 @@ describe Mongoid::Contextual::Memory do
998
998
  context "when no attributes are provided" do
999
999
 
1000
1000
  it "returns false" do
1001
- context.update.should be_false
1001
+ expect(context.update).to be false
1002
1002
  end
1003
1003
  end
1004
1004
  end
@@ -1030,21 +1030,21 @@ describe Mongoid::Contextual::Memory do
1030
1030
  end
1031
1031
 
1032
1032
  it "updates the first matching document" do
1033
- work.number.should eq(5)
1033
+ expect(work.number).to eq(5)
1034
1034
  end
1035
1035
 
1036
1036
  it "does not update non matching docs" do
1037
- home.number.should be_nil
1037
+ expect(home.number).to be_nil
1038
1038
  end
1039
1039
 
1040
1040
  context "when reloading the embedded documents" do
1041
1041
 
1042
1042
  it "updates the first matching document" do
1043
- work.reload.number.should eq(5)
1043
+ expect(work.reload.number).to eq(5)
1044
1044
  end
1045
1045
 
1046
1046
  it "does not update non matching docs" do
1047
- home.reload.number.should be_nil
1047
+ expect(home.reload.number).to be_nil
1048
1048
  end
1049
1049
  end
1050
1050
  end
@@ -1052,7 +1052,7 @@ describe Mongoid::Contextual::Memory do
1052
1052
  context "when no attributes are provided" do
1053
1053
 
1054
1054
  it "returns false" do
1055
- context.update.should be_false
1055
+ expect(context.update).to be false
1056
1056
  end
1057
1057
  end
1058
1058
  end
@@ -1091,7 +1091,7 @@ describe Mongoid::Contextual::Memory do
1091
1091
  end
1092
1092
 
1093
1093
  it "returns false" do
1094
- context.update_all({}).should be_false
1094
+ expect(context.update_all({})).to be false
1095
1095
  end
1096
1096
  end
1097
1097
 
@@ -1114,15 +1114,15 @@ describe Mongoid::Contextual::Memory do
1114
1114
  end
1115
1115
 
1116
1116
  it "updates the first matching document" do
1117
- hobrecht.suite.should eq("10B")
1117
+ expect(hobrecht.suite).to eq("10B")
1118
1118
  end
1119
1119
 
1120
1120
  it "updates the last matching document" do
1121
- friedel.suite.should eq("10B")
1121
+ expect(friedel.suite).to eq("10B")
1122
1122
  end
1123
1123
 
1124
1124
  it "does not update non matching docs" do
1125
- pfluger.suite.should be_nil
1125
+ expect(pfluger.suite).to be_nil
1126
1126
  end
1127
1127
  end
1128
1128
 
@@ -1133,29 +1133,29 @@ describe Mongoid::Contextual::Memory do
1133
1133
  end
1134
1134
 
1135
1135
  it "updates the first matching document" do
1136
- hobrecht.number.should eq(5)
1136
+ expect(hobrecht.number).to eq(5)
1137
1137
  end
1138
1138
 
1139
1139
  it "updates the last matching document" do
1140
- friedel.number.should eq(5)
1140
+ expect(friedel.number).to eq(5)
1141
1141
  end
1142
1142
 
1143
1143
  it "does not update non matching docs" do
1144
- pfluger.number.should be_nil
1144
+ expect(pfluger.number).to be_nil
1145
1145
  end
1146
1146
 
1147
1147
  context "when reloading the embedded documents" do
1148
1148
 
1149
1149
  it "updates the first matching document" do
1150
- hobrecht.reload.number.should eq(5)
1150
+ expect(hobrecht.reload.number).to eq(5)
1151
1151
  end
1152
1152
 
1153
1153
  it "updates the last matching document" do
1154
- friedel.reload.number.should eq(5)
1154
+ expect(friedel.reload.number).to eq(5)
1155
1155
  end
1156
1156
 
1157
1157
  it "does not update non matching docs" do
1158
- pfluger.reload.number.should be_nil
1158
+ expect(pfluger.reload.number).to be_nil
1159
1159
  end
1160
1160
  end
1161
1161
 
@@ -1166,7 +1166,7 @@ describe Mongoid::Contextual::Memory do
1166
1166
  end
1167
1167
 
1168
1168
  it "does not error on the update" do
1169
- hobrecht.number.should eq(5)
1169
+ expect(hobrecht.number).to eq(5)
1170
1170
  end
1171
1171
  end
1172
1172
  end
@@ -1174,7 +1174,7 @@ describe Mongoid::Contextual::Memory do
1174
1174
  context "when no attributes are provided" do
1175
1175
 
1176
1176
  it "returns false" do
1177
- context.update_all.should be_false
1177
+ expect(context.update_all).to be false
1178
1178
  end
1179
1179
  end
1180
1180
  end
@@ -1206,21 +1206,21 @@ describe Mongoid::Contextual::Memory do
1206
1206
  end
1207
1207
 
1208
1208
  it "updates the first matching document" do
1209
- work.number.should eq(5)
1209
+ expect(work.number).to eq(5)
1210
1210
  end
1211
1211
 
1212
1212
  it "does not update non matching docs" do
1213
- home.number.should be_nil
1213
+ expect(home.number).to be_nil
1214
1214
  end
1215
1215
 
1216
1216
  context "when reloading the embedded documents" do
1217
1217
 
1218
1218
  it "updates the first matching document" do
1219
- work.reload.number.should eq(5)
1219
+ expect(work.reload.number).to eq(5)
1220
1220
  end
1221
1221
 
1222
1222
  it "does not update non matching docs" do
1223
- home.reload.number.should be_nil
1223
+ expect(home.reload.number).to be_nil
1224
1224
  end
1225
1225
  end
1226
1226
  end
@@ -1228,7 +1228,7 @@ describe Mongoid::Contextual::Memory do
1228
1228
  context "when no attributes are provided" do
1229
1229
 
1230
1230
  it "returns false" do
1231
- context.update_all.should be_false
1231
+ expect(context.update_all).to be false
1232
1232
  end
1233
1233
  end
1234
1234
  end