mongoid 3.1.7 → 4.0.0.alpha1

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 (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