mongoid 7.3.4 → 7.4.1

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 (899) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/CHANGELOG.md +17 -17
  4. data/README.md +3 -3
  5. data/lib/config/locales/en.yml +21 -20
  6. data/lib/mongoid/association/accessors.rb +0 -27
  7. data/lib/mongoid/association/bindable.rb +0 -21
  8. data/lib/mongoid/association/builders.rb +0 -9
  9. data/lib/mongoid/association/constrainable.rb +0 -3
  10. data/lib/mongoid/association/depending.rb +0 -7
  11. data/lib/mongoid/association/eager_loadable.rb +0 -3
  12. data/lib/mongoid/association/embedded/batchable.rb +29 -42
  13. data/lib/mongoid/association/embedded/cyclic.rb +2 -11
  14. data/lib/mongoid/association/embedded/embedded_in/binding.rb +0 -7
  15. data/lib/mongoid/association/embedded/embedded_in/buildable.rb +0 -3
  16. data/lib/mongoid/association/embedded/embedded_in/proxy.rb +0 -13
  17. data/lib/mongoid/association/embedded/embedded_in.rb +0 -23
  18. data/lib/mongoid/association/embedded/embeds_many/binding.rb +0 -7
  19. data/lib/mongoid/association/embedded/embeds_many/buildable.rb +0 -3
  20. data/lib/mongoid/association/embedded/embeds_many/proxy.rb +31 -44
  21. data/lib/mongoid/association/embedded/embeds_many.rb +0 -31
  22. data/lib/mongoid/association/embedded/embeds_one/binding.rb +0 -7
  23. data/lib/mongoid/association/embedded/embeds_one/buildable.rb +0 -3
  24. data/lib/mongoid/association/embedded/embeds_one/proxy.rb +26 -14
  25. data/lib/mongoid/association/embedded/embeds_one.rb +0 -27
  26. data/lib/mongoid/association/embedded.rb +0 -1
  27. data/lib/mongoid/association/macros.rb +6 -5
  28. data/lib/mongoid/association/many.rb +0 -17
  29. data/lib/mongoid/association/marshalable.rb +0 -5
  30. data/lib/mongoid/association/nested/many.rb +0 -11
  31. data/lib/mongoid/association/nested/nested_buildable.rb +0 -9
  32. data/lib/mongoid/association/nested/one.rb +1 -16
  33. data/lib/mongoid/association/nested.rb +0 -3
  34. data/lib/mongoid/association/one.rb +1 -10
  35. data/lib/mongoid/association/options.rb +0 -33
  36. data/lib/mongoid/association/proxy.rb +0 -21
  37. data/lib/mongoid/association/referenced/auto_save.rb +0 -9
  38. data/lib/mongoid/association/referenced/belongs_to/binding.rb +0 -7
  39. data/lib/mongoid/association/referenced/belongs_to/buildable.rb +4 -5
  40. data/lib/mongoid/association/referenced/belongs_to/eager.rb +0 -1
  41. data/lib/mongoid/association/referenced/belongs_to/proxy.rb +0 -13
  42. data/lib/mongoid/association/referenced/belongs_to.rb +9 -34
  43. data/lib/mongoid/association/referenced/counter_cache.rb +2 -15
  44. data/lib/mongoid/association/referenced/eager.rb +3 -24
  45. data/lib/mongoid/association/referenced/has_and_belongs_to_many/binding.rb +0 -5
  46. data/lib/mongoid/association/referenced/has_and_belongs_to_many/buildable.rb +0 -3
  47. data/lib/mongoid/association/referenced/has_and_belongs_to_many/eager.rb +0 -1
  48. data/lib/mongoid/association/referenced/has_and_belongs_to_many/proxy.rb +12 -39
  49. data/lib/mongoid/association/referenced/has_and_belongs_to_many.rb +11 -38
  50. data/lib/mongoid/association/referenced/has_many/binding.rb +0 -5
  51. data/lib/mongoid/association/referenced/has_many/buildable.rb +0 -3
  52. data/lib/mongoid/association/referenced/has_many/eager.rb +0 -1
  53. data/lib/mongoid/association/referenced/has_many/enumerable.rb +8 -56
  54. data/lib/mongoid/association/referenced/has_many/proxy.rb +20 -63
  55. data/lib/mongoid/association/referenced/has_many.rb +12 -39
  56. data/lib/mongoid/association/referenced/has_one/binding.rb +0 -7
  57. data/lib/mongoid/association/referenced/has_one/buildable.rb +3 -4
  58. data/lib/mongoid/association/referenced/has_one/eager.rb +0 -1
  59. data/lib/mongoid/association/referenced/has_one/nested_builder.rb +0 -15
  60. data/lib/mongoid/association/referenced/has_one/proxy.rb +0 -9
  61. data/lib/mongoid/association/referenced/has_one.rb +9 -32
  62. data/lib/mongoid/association/referenced/syncable.rb +0 -17
  63. data/lib/mongoid/association/referenced.rb +0 -1
  64. data/lib/mongoid/association/reflections.rb +0 -1
  65. data/lib/mongoid/association/relatable.rb +0 -61
  66. data/lib/mongoid/association.rb +0 -17
  67. data/lib/mongoid/atomic/modifiers.rb +4 -51
  68. data/lib/mongoid/atomic/paths/embedded/many.rb +19 -5
  69. data/lib/mongoid/atomic/paths/embedded/one.rb +0 -5
  70. data/lib/mongoid/atomic/paths/embedded.rb +0 -3
  71. data/lib/mongoid/atomic/paths/root.rb +0 -5
  72. data/lib/mongoid/atomic/paths.rb +0 -1
  73. data/lib/mongoid/atomic.rb +1 -42
  74. data/lib/mongoid/attributes/dynamic.rb +0 -17
  75. data/lib/mongoid/attributes/nested.rb +0 -5
  76. data/lib/mongoid/attributes/processing.rb +1 -18
  77. data/lib/mongoid/attributes/projector.rb +0 -1
  78. data/lib/mongoid/attributes/readonly.rb +0 -5
  79. data/lib/mongoid/attributes.rb +0 -33
  80. data/lib/mongoid/cacheable.rb +1 -6
  81. data/lib/mongoid/changeable.rb +3 -59
  82. data/lib/mongoid/clients/factory.rb +0 -7
  83. data/lib/mongoid/clients/options.rb +0 -5
  84. data/lib/mongoid/clients/sessions.rb +0 -7
  85. data/lib/mongoid/clients/storage_options.rb +0 -7
  86. data/lib/mongoid/clients/validators/storage.rb +0 -9
  87. data/lib/mongoid/clients/validators.rb +0 -1
  88. data/lib/mongoid/clients.rb +0 -9
  89. data/lib/mongoid/composable.rb +0 -7
  90. data/lib/mongoid/config/environment.rb +21 -6
  91. data/lib/mongoid/config/options.rb +0 -11
  92. data/lib/mongoid/config/validators/client.rb +0 -17
  93. data/lib/mongoid/config/validators/option.rb +0 -3
  94. data/lib/mongoid/config/validators.rb +0 -1
  95. data/lib/mongoid/config.rb +37 -29
  96. data/lib/mongoid/contextual/aggregable/memory.rb +14 -11
  97. data/lib/mongoid/contextual/aggregable/mongo.rb +15 -20
  98. data/lib/mongoid/contextual/aggregable/none.rb +65 -0
  99. data/lib/mongoid/contextual/aggregable.rb +17 -0
  100. data/lib/mongoid/contextual/atomic.rb +0 -25
  101. data/lib/mongoid/contextual/command.rb +0 -5
  102. data/lib/mongoid/contextual/geo_near.rb +1 -34
  103. data/lib/mongoid/contextual/map_reduce.rb +0 -31
  104. data/lib/mongoid/contextual/memory.rb +4 -59
  105. data/lib/mongoid/contextual/mongo.rb +132 -78
  106. data/lib/mongoid/contextual/none.rb +39 -28
  107. data/lib/mongoid/contextual/queryable.rb +0 -3
  108. data/lib/mongoid/contextual.rb +0 -5
  109. data/lib/mongoid/copyable.rb +0 -5
  110. data/lib/mongoid/criteria/findable.rb +0 -13
  111. data/lib/mongoid/criteria/includable.rb +0 -9
  112. data/lib/mongoid/criteria/inspectable.rb +0 -3
  113. data/lib/mongoid/criteria/marshalable.rb +0 -5
  114. data/lib/mongoid/criteria/modifiable.rb +0 -19
  115. data/lib/mongoid/criteria/options.rb +0 -3
  116. data/lib/mongoid/criteria/permission.rb +0 -1
  117. data/lib/mongoid/criteria/queryable/aggregable.rb +0 -13
  118. data/lib/mongoid/criteria/queryable/expandable.rb +0 -1
  119. data/lib/mongoid/criteria/queryable/extensions/array.rb +1 -26
  120. data/lib/mongoid/criteria/queryable/extensions/big_decimal.rb +0 -3
  121. data/lib/mongoid/criteria/queryable/extensions/boolean.rb +0 -3
  122. data/lib/mongoid/criteria/queryable/extensions/date.rb +0 -7
  123. data/lib/mongoid/criteria/queryable/extensions/date_time.rb +0 -5
  124. data/lib/mongoid/criteria/queryable/extensions/hash.rb +0 -25
  125. data/lib/mongoid/criteria/queryable/extensions/nil_class.rb +0 -13
  126. data/lib/mongoid/criteria/queryable/extensions/numeric.rb +0 -11
  127. data/lib/mongoid/criteria/queryable/extensions/object.rb +1 -28
  128. data/lib/mongoid/criteria/queryable/extensions/range.rb +38 -16
  129. data/lib/mongoid/criteria/queryable/extensions/regexp.rb +0 -9
  130. data/lib/mongoid/criteria/queryable/extensions/set.rb +0 -3
  131. data/lib/mongoid/criteria/queryable/extensions/string.rb +0 -17
  132. data/lib/mongoid/criteria/queryable/extensions/symbol.rb +0 -9
  133. data/lib/mongoid/criteria/queryable/extensions/time.rb +0 -7
  134. data/lib/mongoid/criteria/queryable/extensions/time_with_zone.rb +0 -7
  135. data/lib/mongoid/criteria/queryable/extensions.rb +0 -1
  136. data/lib/mongoid/criteria/queryable/key.rb +1 -14
  137. data/lib/mongoid/criteria/queryable/macroable.rb +0 -3
  138. data/lib/mongoid/criteria/queryable/mergeable.rb +1 -30
  139. data/lib/mongoid/criteria/queryable/optional.rb +0 -45
  140. data/lib/mongoid/criteria/queryable/options.rb +0 -19
  141. data/lib/mongoid/criteria/queryable/pipeline.rb +0 -13
  142. data/lib/mongoid/criteria/queryable/selectable.rb +20 -67
  143. data/lib/mongoid/criteria/queryable/selector.rb +0 -17
  144. data/lib/mongoid/criteria/queryable/smash.rb +0 -11
  145. data/lib/mongoid/criteria/queryable/storable.rb +7 -3
  146. data/lib/mongoid/criteria/queryable.rb +0 -7
  147. data/lib/mongoid/criteria/scopable.rb +25 -19
  148. data/lib/mongoid/criteria.rb +0 -57
  149. data/lib/mongoid/document.rb +0 -51
  150. data/lib/mongoid/equality.rb +26 -10
  151. data/lib/mongoid/errors/ambiguous_relationship.rb +2 -5
  152. data/lib/mongoid/errors/callback.rb +0 -3
  153. data/lib/mongoid/errors/criteria_argument_required.rb +0 -1
  154. data/lib/mongoid/errors/delete_restriction.rb +0 -3
  155. data/lib/mongoid/errors/document_not_destroyed.rb +2 -7
  156. data/lib/mongoid/errors/document_not_found.rb +0 -9
  157. data/lib/mongoid/errors/eager_load.rb +0 -3
  158. data/lib/mongoid/errors/empty_config_file.rb +0 -1
  159. data/lib/mongoid/errors/in_memory_collation_not_supported.rb +0 -3
  160. data/lib/mongoid/errors/invalid_collection.rb +0 -1
  161. data/lib/mongoid/errors/invalid_config_file.rb +0 -1
  162. data/lib/mongoid/errors/invalid_config_option.rb +0 -3
  163. data/lib/mongoid/errors/invalid_dependent_strategy.rb +0 -3
  164. data/lib/mongoid/errors/invalid_discriminator_key_target.rb +0 -1
  165. data/lib/mongoid/errors/invalid_elem_match_operator.rb +0 -1
  166. data/lib/mongoid/errors/invalid_estimated_count_criteria.rb +0 -1
  167. data/lib/mongoid/errors/invalid_expression_operator.rb +0 -1
  168. data/lib/mongoid/errors/invalid_field.rb +0 -5
  169. data/lib/mongoid/errors/invalid_field_operator.rb +0 -1
  170. data/lib/mongoid/errors/invalid_field_option.rb +0 -3
  171. data/lib/mongoid/errors/invalid_find.rb +0 -3
  172. data/lib/mongoid/errors/invalid_includes.rb +0 -3
  173. data/lib/mongoid/errors/invalid_index.rb +0 -3
  174. data/lib/mongoid/errors/invalid_options.rb +0 -3
  175. data/lib/mongoid/errors/invalid_path.rb +0 -3
  176. data/lib/mongoid/errors/invalid_persistence_option.rb +0 -5
  177. data/lib/mongoid/errors/invalid_query.rb +0 -1
  178. data/lib/mongoid/errors/invalid_relation.rb +0 -7
  179. data/lib/mongoid/errors/invalid_relation_option.rb +0 -3
  180. data/lib/mongoid/errors/invalid_scope.rb +0 -3
  181. data/lib/mongoid/errors/invalid_session_use.rb +1 -6
  182. data/lib/mongoid/errors/invalid_set_polymorphic_relation.rb +0 -1
  183. data/lib/mongoid/errors/invalid_storage_options.rb +0 -3
  184. data/lib/mongoid/errors/invalid_storage_parent.rb +0 -3
  185. data/lib/mongoid/errors/invalid_time.rb +0 -3
  186. data/lib/mongoid/errors/invalid_value.rb +0 -1
  187. data/lib/mongoid/errors/inverse_not_found.rb +0 -3
  188. data/lib/mongoid/errors/mixed_client_configuration.rb +0 -3
  189. data/lib/mongoid/errors/mixed_relations.rb +0 -3
  190. data/lib/mongoid/errors/mongoid_error.rb +0 -9
  191. data/lib/mongoid/errors/nested_attributes_metadata_not_found.rb +0 -3
  192. data/lib/mongoid/errors/no_client_config.rb +0 -3
  193. data/lib/mongoid/errors/no_client_database.rb +0 -3
  194. data/lib/mongoid/errors/no_client_hosts.rb +0 -3
  195. data/lib/mongoid/errors/no_clients_config.rb +0 -3
  196. data/lib/mongoid/errors/no_default_client.rb +0 -3
  197. data/lib/mongoid/errors/no_environment.rb +0 -3
  198. data/lib/mongoid/errors/no_map_reduce_output.rb +0 -3
  199. data/lib/mongoid/errors/no_metadata.rb +0 -3
  200. data/lib/mongoid/errors/no_parent.rb +0 -3
  201. data/lib/mongoid/errors/readonly_attribute.rb +0 -3
  202. data/lib/mongoid/errors/readonly_document.rb +1 -6
  203. data/lib/mongoid/errors/scope_overwrite.rb +0 -1
  204. data/lib/mongoid/errors/too_many_nested_attribute_records.rb +0 -1
  205. data/lib/mongoid/errors/unknown_attribute.rb +0 -3
  206. data/lib/mongoid/errors/unknown_model.rb +0 -3
  207. data/lib/mongoid/errors/unsaved_document.rb +1 -2
  208. data/lib/mongoid/errors/unsupported_javascript.rb +0 -3
  209. data/lib/mongoid/errors/validations.rb +0 -1
  210. data/lib/mongoid/errors.rb +0 -1
  211. data/lib/mongoid/evolvable.rb +0 -3
  212. data/lib/mongoid/extensions/array.rb +3 -29
  213. data/lib/mongoid/extensions/big_decimal.rb +0 -11
  214. data/lib/mongoid/extensions/boolean.rb +0 -3
  215. data/lib/mongoid/extensions/date.rb +0 -9
  216. data/lib/mongoid/extensions/date_time.rb +0 -9
  217. data/lib/mongoid/extensions/decimal128.rb +0 -5
  218. data/lib/mongoid/extensions/false_class.rb +1 -6
  219. data/lib/mongoid/extensions/float.rb +0 -7
  220. data/lib/mongoid/extensions/hash.rb +0 -27
  221. data/lib/mongoid/extensions/integer.rb +0 -9
  222. data/lib/mongoid/extensions/module.rb +0 -3
  223. data/lib/mongoid/extensions/nil_class.rb +0 -5
  224. data/lib/mongoid/extensions/object.rb +1 -40
  225. data/lib/mongoid/extensions/object_id.rb +0 -7
  226. data/lib/mongoid/extensions/range.rb +0 -11
  227. data/lib/mongoid/extensions/regexp.rb +0 -3
  228. data/lib/mongoid/extensions/set.rb +0 -7
  229. data/lib/mongoid/extensions/string.rb +1 -30
  230. data/lib/mongoid/extensions/symbol.rb +0 -7
  231. data/lib/mongoid/extensions/time.rb +0 -11
  232. data/lib/mongoid/extensions/time_with_zone.rb +13 -9
  233. data/lib/mongoid/extensions/true_class.rb +1 -6
  234. data/lib/mongoid/extensions.rb +15 -3
  235. data/lib/mongoid/factory.rb +1 -2
  236. data/lib/mongoid/fields/foreign_key.rb +0 -21
  237. data/lib/mongoid/fields/localized.rb +0 -11
  238. data/lib/mongoid/fields/standard.rb +0 -33
  239. data/lib/mongoid/fields/validators/macro.rb +0 -9
  240. data/lib/mongoid/fields/validators.rb +0 -1
  241. data/lib/mongoid/fields.rb +64 -57
  242. data/lib/mongoid/findable.rb +0 -5
  243. data/lib/mongoid/indexable/specification.rb +0 -15
  244. data/lib/mongoid/indexable/validators/options.rb +0 -7
  245. data/lib/mongoid/indexable.rb +1 -18
  246. data/lib/mongoid/inspectable.rb +1 -10
  247. data/lib/mongoid/interceptable.rb +0 -25
  248. data/lib/mongoid/loggable.rb +0 -9
  249. data/lib/mongoid/matchable.rb +0 -5
  250. data/lib/mongoid/matcher/eq_impl.rb +37 -2
  251. data/lib/mongoid/matcher/eq_impl_with_regexp.rb +6 -1
  252. data/lib/mongoid/persistable/creatable.rb +1 -20
  253. data/lib/mongoid/persistable/deletable.rb +0 -17
  254. data/lib/mongoid/persistable/destroyable.rb +0 -7
  255. data/lib/mongoid/persistable/incrementable.rb +0 -5
  256. data/lib/mongoid/persistable/logical.rb +0 -5
  257. data/lib/mongoid/persistable/poppable.rb +0 -5
  258. data/lib/mongoid/persistable/pullable.rb +0 -7
  259. data/lib/mongoid/persistable/pushable.rb +0 -7
  260. data/lib/mongoid/persistable/renamable.rb +0 -5
  261. data/lib/mongoid/persistable/savable.rb +0 -7
  262. data/lib/mongoid/persistable/settable.rb +0 -5
  263. data/lib/mongoid/persistable/unsettable.rb +0 -5
  264. data/lib/mongoid/persistable/updatable.rb +2 -17
  265. data/lib/mongoid/persistable/upsertable.rb +1 -8
  266. data/lib/mongoid/persistable.rb +0 -23
  267. data/lib/mongoid/persistence_context.rb +0 -27
  268. data/lib/mongoid/positional.rb +0 -5
  269. data/lib/mongoid/query_cache.rb +0 -33
  270. data/lib/mongoid/railtie.rb +0 -15
  271. data/lib/mongoid/railties/controller_runtime.rb +0 -1
  272. data/lib/mongoid/reloadable.rb +4 -16
  273. data/lib/mongoid/scopable.rb +6 -34
  274. data/lib/mongoid/selectable.rb +0 -9
  275. data/lib/mongoid/serializable.rb +0 -15
  276. data/lib/mongoid/shardable.rb +0 -7
  277. data/lib/mongoid/stateful.rb +0 -9
  278. data/lib/mongoid/stringified_symbol.rb +2 -3
  279. data/lib/mongoid/tasks/database.rb +0 -5
  280. data/lib/mongoid/threaded/lifecycle.rb +0 -21
  281. data/lib/mongoid/threaded.rb +0 -55
  282. data/lib/mongoid/timestamps/created/short.rb +0 -1
  283. data/lib/mongoid/timestamps/created.rb +0 -1
  284. data/lib/mongoid/timestamps/short.rb +0 -1
  285. data/lib/mongoid/timestamps/timeless.rb +0 -7
  286. data/lib/mongoid/timestamps/updated/short.rb +0 -1
  287. data/lib/mongoid/timestamps/updated.rb +0 -3
  288. data/lib/mongoid/timestamps.rb +0 -1
  289. data/lib/mongoid/touchable.rb +0 -7
  290. data/lib/mongoid/traversable.rb +67 -53
  291. data/lib/mongoid/validatable/associated.rb +0 -3
  292. data/lib/mongoid/validatable/format.rb +0 -1
  293. data/lib/mongoid/validatable/length.rb +0 -1
  294. data/lib/mongoid/validatable/localizable.rb +0 -3
  295. data/lib/mongoid/validatable/macros.rb +0 -7
  296. data/lib/mongoid/validatable/presence.rb +1 -8
  297. data/lib/mongoid/validatable/queryable.rb +0 -3
  298. data/lib/mongoid/validatable/uniqueness.rb +15 -30
  299. data/lib/mongoid/validatable.rb +1 -22
  300. data/lib/mongoid/version.rb +1 -2
  301. data/lib/mongoid.rb +0 -15
  302. data/lib/rails/generators/mongoid/config/config_generator.rb +0 -1
  303. data/lib/rails/generators/mongoid/config/templates/mongoid.yml +7 -2
  304. data/lib/rails/generators/mongoid/model/model_generator.rb +0 -1
  305. data/lib/rails/generators/mongoid_generator.rb +0 -1
  306. data/lib/rails/mongoid.rb +0 -3
  307. data/spec/config/mongoid_with_schema_map_uuid.yml +27 -0
  308. data/spec/integration/app_spec.rb +20 -15
  309. data/spec/integration/associations/belongs_to_spec.rb +0 -1
  310. data/spec/integration/associations/embedded_dirty_spec.rb +57 -0
  311. data/spec/integration/associations/embedded_spec.rb +0 -1
  312. data/spec/integration/associations/embeds_many_spec.rb +0 -1
  313. data/spec/integration/associations/embeds_one_spec.rb +0 -1
  314. data/spec/integration/associations/foreign_key_spec.rb +0 -1
  315. data/spec/integration/associations/foreign_key_spec_models.rb +0 -1
  316. data/spec/integration/associations/has_many_spec.rb +0 -1
  317. data/spec/integration/associations/has_one_spec.rb +0 -1
  318. data/spec/integration/associations/nested_attributes_assignment_spec.rb +0 -1
  319. data/spec/integration/associations/reverse_population_spec.rb +0 -1
  320. data/spec/integration/associations/reverse_population_spec_models.rb +0 -1
  321. data/spec/integration/associations/scope_option_spec.rb +101 -0
  322. data/spec/integration/atomic/modifiers_spec.rb +0 -1
  323. data/spec/integration/bson_regexp_raw_spec.rb +0 -1
  324. data/spec/integration/callbacks_models.rb +12 -0
  325. data/spec/integration/callbacks_spec.rb +18 -6
  326. data/spec/integration/contextual/empty_spec.rb +0 -1
  327. data/spec/integration/criteria/alias_query_spec.rb +161 -0
  328. data/spec/integration/criteria/date_field_spec.rb +0 -1
  329. data/spec/integration/criteria/default_scope_spec.rb +51 -0
  330. data/spec/integration/criteria/logical_spec.rb +30 -0
  331. data/spec/integration/criteria/range_spec.rb +265 -0
  332. data/spec/integration/criteria/time_with_zone_spec.rb +125 -15
  333. data/spec/integration/discriminator_key_spec.rb +0 -1
  334. data/spec/integration/discriminator_value_spec.rb +0 -1
  335. data/spec/integration/document_spec.rb +0 -1
  336. data/spec/integration/i18n_fallbacks_spec.rb +0 -1
  337. data/spec/integration/matcher_examples_spec.rb +0 -1
  338. data/spec/integration/matcher_operator_spec.rb +27 -3
  339. data/spec/integration/matcher_spec.rb +95 -1
  340. data/spec/integration/server_query_spec.rb +0 -1
  341. data/spec/integration/shardable_spec.rb +0 -1
  342. data/spec/integration/stringified_symbol_field_spec.rb +14 -1
  343. data/spec/lite_spec_helper.rb +9 -3
  344. data/spec/mongoid/association/accessors_spec.rb +44 -15
  345. data/spec/mongoid/association/auto_save_spec.rb +72 -34
  346. data/spec/mongoid/association/builders_spec.rb +1 -2
  347. data/spec/mongoid/association/constrainable_spec.rb +0 -1
  348. data/spec/mongoid/association/counter_cache_spec.rb +32 -33
  349. data/spec/mongoid/association/depending_spec.rb +12 -13
  350. data/spec/mongoid/association/eager_spec.rb +4 -5
  351. data/spec/mongoid/association/embedded/cyclic_spec.rb +2 -3
  352. data/spec/mongoid/association/embedded/dirty_spec.rb +2 -3
  353. data/spec/mongoid/association/embedded/embedded_in/binding_spec.rb +0 -1
  354. data/spec/mongoid/association/embedded/embedded_in/buildable_spec.rb +0 -1
  355. data/spec/mongoid/association/embedded/embedded_in/proxy_spec.rb +13 -14
  356. data/spec/mongoid/association/embedded/embedded_in_spec.rb +0 -1
  357. data/spec/mongoid/association/embedded/embeds_many/binding_spec.rb +0 -1
  358. data/spec/mongoid/association/embedded/embeds_many/buildable_spec.rb +0 -1
  359. data/spec/mongoid/association/embedded/embeds_many/proxy_spec.rb +405 -135
  360. data/spec/mongoid/association/embedded/embeds_many_models.rb +137 -1
  361. data/spec/mongoid/association/embedded/embeds_many_query_spec.rb +0 -1
  362. data/spec/mongoid/association/embedded/embeds_many_spec.rb +0 -1
  363. data/spec/mongoid/association/embedded/embeds_one/binding_spec.rb +0 -1
  364. data/spec/mongoid/association/embedded/embeds_one/buildable_spec.rb +0 -1
  365. data/spec/mongoid/association/embedded/embeds_one/proxy_spec.rb +21 -22
  366. data/spec/mongoid/association/embedded/embeds_one_dnl_models.rb +0 -1
  367. data/spec/mongoid/association/embedded/embeds_one_models.rb +0 -1
  368. data/spec/mongoid/association/embedded/embeds_one_query_spec.rb +0 -1
  369. data/spec/mongoid/association/embedded/embeds_one_spec.rb +0 -1
  370. data/spec/mongoid/association/macros_spec.rb +9 -10
  371. data/spec/mongoid/association/nested/many_spec.rb +0 -1
  372. data/spec/mongoid/association/nested/one_spec.rb +0 -1
  373. data/spec/mongoid/association/options_spec.rb +0 -1
  374. data/spec/mongoid/association/polymorphic_spec.rb +0 -1
  375. data/spec/mongoid/association/referenced/belongs_to/binding_spec.rb +0 -1
  376. data/spec/mongoid/association/referenced/belongs_to/buildable_spec.rb +55 -17
  377. data/spec/mongoid/association/referenced/belongs_to/eager_spec.rb +50 -15
  378. data/spec/mongoid/association/referenced/belongs_to/proxy_spec.rb +57 -53
  379. data/spec/mongoid/association/referenced/belongs_to_query_spec.rb +0 -1
  380. data/spec/mongoid/association/referenced/belongs_to_spec.rb +22 -2
  381. data/spec/mongoid/association/referenced/has_and_belongs_to_many/binding_spec.rb +0 -1
  382. data/spec/mongoid/association/referenced/has_and_belongs_to_many/buildable_spec.rb +26 -2
  383. data/spec/mongoid/association/referenced/has_and_belongs_to_many/eager_spec.rb +31 -3
  384. data/spec/mongoid/association/referenced/has_and_belongs_to_many/proxy_persistence_spec.rb +0 -1
  385. data/spec/mongoid/association/referenced/has_and_belongs_to_many/proxy_spec.rb +187 -154
  386. data/spec/mongoid/association/referenced/has_and_belongs_to_many_models.rb +18 -1
  387. data/spec/mongoid/association/referenced/has_and_belongs_to_many_query_spec.rb +0 -1
  388. data/spec/mongoid/association/referenced/has_and_belongs_to_many_spec.rb +21 -1
  389. data/spec/mongoid/association/referenced/has_many/binding_spec.rb +0 -1
  390. data/spec/mongoid/association/referenced/has_many/buildable_spec.rb +21 -1
  391. data/spec/mongoid/association/referenced/has_many/eager_spec.rb +23 -7
  392. data/spec/mongoid/association/referenced/has_many/enumerable_spec.rb +59 -33
  393. data/spec/mongoid/association/referenced/has_many/proxy_query_spec.rb +0 -1
  394. data/spec/mongoid/association/referenced/has_many/proxy_spec.rb +241 -162
  395. data/spec/mongoid/association/referenced/has_many_models.rb +18 -1
  396. data/spec/mongoid/association/referenced/has_many_query_spec.rb +0 -1
  397. data/spec/mongoid/association/referenced/has_many_spec.rb +21 -1
  398. data/spec/mongoid/association/referenced/has_one/binding_spec.rb +0 -1
  399. data/spec/mongoid/association/referenced/has_one/buildable_spec.rb +51 -8
  400. data/spec/mongoid/association/referenced/has_one/eager_spec.rb +17 -2
  401. data/spec/mongoid/association/referenced/has_one/proxy_spec.rb +26 -27
  402. data/spec/mongoid/association/referenced/has_one_models.rb +18 -1
  403. data/spec/mongoid/association/referenced/has_one_query_spec.rb +0 -1
  404. data/spec/mongoid/association/referenced/has_one_spec.rb +21 -1
  405. data/spec/mongoid/association/reflections_spec.rb +0 -1
  406. data/spec/mongoid/association/syncable_spec.rb +31 -32
  407. data/spec/mongoid/association_spec.rb +0 -1
  408. data/spec/mongoid/atomic/modifiers_spec.rb +0 -1
  409. data/spec/mongoid/atomic/paths/embedded/many_spec.rb +0 -1
  410. data/spec/mongoid/atomic/paths/embedded/one_spec.rb +0 -1
  411. data/spec/mongoid/atomic/paths/root_spec.rb +0 -1
  412. data/spec/mongoid/atomic/paths_spec.rb +0 -1
  413. data/spec/mongoid/atomic_spec.rb +28 -7
  414. data/spec/mongoid/attributes/dynamic_spec.rb +0 -1
  415. data/spec/mongoid/attributes/nested_spec.rb +66 -67
  416. data/spec/mongoid/attributes/projector_spec.rb +5 -2
  417. data/spec/mongoid/attributes/readonly_spec.rb +22 -23
  418. data/spec/mongoid/attributes_spec.rb +32 -33
  419. data/spec/mongoid/cacheable_spec.rb +1 -2
  420. data/spec/mongoid/changeable_spec.rb +35 -36
  421. data/spec/mongoid/clients/factory_spec.rb +11 -13
  422. data/spec/mongoid/clients/options_spec.rb +4 -5
  423. data/spec/mongoid/clients/sessions_spec.rb +22 -23
  424. data/spec/mongoid/clients/transactions_spec.rb +49 -27
  425. data/spec/mongoid/clients_spec.rb +6 -7
  426. data/spec/mongoid/composable_spec.rb +0 -1
  427. data/spec/mongoid/config/environment_spec.rb +39 -2
  428. data/spec/mongoid/config/options_spec.rb +0 -1
  429. data/spec/mongoid/config_spec.rb +145 -1
  430. data/spec/mongoid/contextual/aggregable/memory_spec.rb +51 -12
  431. data/spec/mongoid/contextual/aggregable/mongo_spec.rb +120 -21
  432. data/spec/mongoid/contextual/aggregable/none_spec.rb +60 -0
  433. data/spec/mongoid/contextual/atomic_spec.rb +46 -47
  434. data/spec/mongoid/contextual/geo_near_spec.rb +17 -18
  435. data/spec/mongoid/contextual/map_reduce_spec.rb +2 -3
  436. data/spec/mongoid/contextual/memory_spec.rb +23 -24
  437. data/spec/mongoid/contextual/mongo_spec.rb +339 -77
  438. data/spec/mongoid/contextual/none_spec.rb +7 -82
  439. data/spec/mongoid/copyable_spec.rb +12 -13
  440. data/spec/mongoid/copyable_spec_models.rb +0 -1
  441. data/spec/mongoid/criteria/findable_spec.rb +23 -24
  442. data/spec/mongoid/criteria/inspectable_spec.rb +0 -1
  443. data/spec/mongoid/criteria/marshalable_spec.rb +0 -1
  444. data/spec/mongoid/criteria/modifiable_spec.rb +36 -37
  445. data/spec/mongoid/criteria/options_spec.rb +0 -1
  446. data/spec/mongoid/criteria/queryable/aggregable_spec.rb +1 -2
  447. data/spec/mongoid/criteria/queryable/expandable_spec.rb +0 -1
  448. data/spec/mongoid/criteria/queryable/extensions/array_spec.rb +0 -1
  449. data/spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb +0 -1
  450. data/spec/mongoid/criteria/queryable/extensions/bignum_spec.rb +0 -1
  451. data/spec/mongoid/criteria/queryable/extensions/boolean_spec.rb +0 -1
  452. data/spec/mongoid/criteria/queryable/extensions/date_spec.rb +0 -1
  453. data/spec/mongoid/criteria/queryable/extensions/date_time_spec.rb +0 -1
  454. data/spec/mongoid/criteria/queryable/extensions/fixnum_spec.rb +0 -1
  455. data/spec/mongoid/criteria/queryable/extensions/float_spec.rb +0 -1
  456. data/spec/mongoid/criteria/queryable/extensions/hash_spec.rb +0 -1
  457. data/spec/mongoid/criteria/queryable/extensions/integer_spec.rb +0 -1
  458. data/spec/mongoid/criteria/queryable/extensions/nil_class_spec.rb +0 -1
  459. data/spec/mongoid/criteria/queryable/extensions/numeric_spec.rb +0 -1
  460. data/spec/mongoid/criteria/queryable/extensions/object_spec.rb +0 -1
  461. data/spec/mongoid/criteria/queryable/extensions/range_spec.rb +237 -179
  462. data/spec/mongoid/criteria/queryable/extensions/regexp_raw_spec.rb +0 -1
  463. data/spec/mongoid/criteria/queryable/extensions/regexp_spec.rb +0 -1
  464. data/spec/mongoid/criteria/queryable/extensions/set_spec.rb +0 -1
  465. data/spec/mongoid/criteria/queryable/extensions/string_spec.rb +0 -1
  466. data/spec/mongoid/criteria/queryable/extensions/symbol_spec.rb +0 -1
  467. data/spec/mongoid/criteria/queryable/extensions/time_spec.rb +0 -1
  468. data/spec/mongoid/criteria/queryable/extensions/time_with_zone_spec.rb +0 -1
  469. data/spec/mongoid/criteria/queryable/key_spec.rb +0 -1
  470. data/spec/mongoid/criteria/queryable/mergeable_spec.rb +0 -1
  471. data/spec/mongoid/criteria/queryable/optional_spec.rb +1 -2
  472. data/spec/mongoid/criteria/queryable/options_spec.rb +0 -1
  473. data/spec/mongoid/criteria/queryable/pipeline_spec.rb +0 -1
  474. data/spec/mongoid/criteria/queryable/queryable_spec.rb +1 -2
  475. data/spec/mongoid/criteria/queryable/selectable_logical_spec.rb +0 -1
  476. data/spec/mongoid/criteria/queryable/selectable_shared_examples.rb +0 -1
  477. data/spec/mongoid/criteria/queryable/selectable_spec.rb +15 -16
  478. data/spec/mongoid/criteria/queryable/selectable_where_spec.rb +0 -1
  479. data/spec/mongoid/criteria/queryable/selector_spec.rb +0 -1
  480. data/spec/mongoid/criteria/queryable/smash_spec.rb +0 -1
  481. data/spec/mongoid/criteria/queryable/storable_spec.rb +37 -1
  482. data/spec/mongoid/criteria/scopable_spec.rb +127 -1
  483. data/spec/mongoid/criteria_projection_spec.rb +3 -4
  484. data/spec/mongoid/criteria_spec.rb +546 -186
  485. data/spec/mongoid/document_fields_spec.rb +0 -1
  486. data/spec/mongoid/document_persistence_context_spec.rb +0 -1
  487. data/spec/mongoid/document_query_spec.rb +0 -1
  488. data/spec/mongoid/document_spec.rb +11 -33
  489. data/spec/mongoid/equality_spec.rb +142 -41
  490. data/spec/mongoid/errors/ambiguous_relationship_spec.rb +0 -1
  491. data/spec/mongoid/errors/callback_spec.rb +0 -1
  492. data/spec/mongoid/errors/delete_restriction_spec.rb +0 -1
  493. data/spec/mongoid/errors/document_not_destroyed_spec.rb +0 -1
  494. data/spec/mongoid/errors/document_not_found_spec.rb +0 -1
  495. data/spec/mongoid/errors/eager_load_spec.rb +0 -1
  496. data/spec/mongoid/errors/invalid_collection_spec.rb +0 -1
  497. data/spec/mongoid/errors/invalid_config_file_spec.rb +0 -1
  498. data/spec/mongoid/errors/invalid_config_option_spec.rb +0 -1
  499. data/spec/mongoid/errors/invalid_field_option_spec.rb +0 -1
  500. data/spec/mongoid/errors/invalid_field_spec.rb +0 -1
  501. data/spec/mongoid/errors/invalid_find_spec.rb +0 -1
  502. data/spec/mongoid/errors/invalid_includes_spec.rb +0 -1
  503. data/spec/mongoid/errors/invalid_index_spec.rb +0 -1
  504. data/spec/mongoid/errors/invalid_options_spec.rb +0 -1
  505. data/spec/mongoid/errors/invalid_path_spec.rb +0 -1
  506. data/spec/mongoid/errors/invalid_relation_spec.rb +0 -1
  507. data/spec/mongoid/errors/invalid_scope_spec.rb +1 -2
  508. data/spec/mongoid/errors/invalid_set_polymorphic_relation_spec.rb +0 -1
  509. data/spec/mongoid/errors/invalid_storage_options_spec.rb +0 -1
  510. data/spec/mongoid/errors/invalid_time_spec.rb +0 -1
  511. data/spec/mongoid/errors/inverse_not_found_spec.rb +0 -1
  512. data/spec/mongoid/errors/mixed_client_configuration_spec.rb +0 -1
  513. data/spec/mongoid/errors/mixed_relations_spec.rb +0 -1
  514. data/spec/mongoid/errors/mongoid_error_spec.rb +1 -2
  515. data/spec/mongoid/errors/nested_attributes_metadata_not_found_spec.rb +0 -1
  516. data/spec/mongoid/errors/no_client_config_spec.rb +0 -1
  517. data/spec/mongoid/errors/no_client_database_spec.rb +0 -1
  518. data/spec/mongoid/errors/no_client_hosts_spec.rb +0 -1
  519. data/spec/mongoid/errors/no_clients_config_spec.rb +0 -1
  520. data/spec/mongoid/errors/no_environment_spec.rb +0 -1
  521. data/spec/mongoid/errors/no_map_reduce_output_spec.rb +0 -1
  522. data/spec/mongoid/errors/no_metadata_spec.rb +0 -1
  523. data/spec/mongoid/errors/no_parent_spec.rb +0 -1
  524. data/spec/mongoid/errors/readonly_attribute_spec.rb +0 -1
  525. data/spec/mongoid/errors/readonly_document_spec.rb +0 -1
  526. data/spec/mongoid/errors/scope_overwrite_spec.rb +0 -1
  527. data/spec/mongoid/errors/too_many_nested_attribute_records_spec.rb +0 -1
  528. data/spec/mongoid/errors/unknown_attribute_spec.rb +2 -3
  529. data/spec/mongoid/errors/unsaved_document_spec.rb +0 -1
  530. data/spec/mongoid/errors/unsupported_javascript_spec.rb +0 -1
  531. data/spec/mongoid/errors/validations_spec.rb +0 -1
  532. data/spec/mongoid/extensions/array_spec.rb +0 -1
  533. data/spec/mongoid/extensions/big_decimal_spec.rb +0 -1
  534. data/spec/mongoid/extensions/binary_spec.rb +0 -1
  535. data/spec/mongoid/extensions/boolean_spec.rb +0 -1
  536. data/spec/mongoid/extensions/date_class_mongoize_spec.rb +0 -1
  537. data/spec/mongoid/extensions/date_spec.rb +0 -1
  538. data/spec/mongoid/extensions/date_time_spec.rb +0 -1
  539. data/spec/mongoid/extensions/decimal128_spec.rb +0 -1
  540. data/spec/mongoid/extensions/false_class_spec.rb +0 -1
  541. data/spec/mongoid/extensions/float_spec.rb +0 -1
  542. data/spec/mongoid/extensions/hash_spec.rb +0 -1
  543. data/spec/mongoid/extensions/integer_spec.rb +0 -1
  544. data/spec/mongoid/extensions/module_spec.rb +0 -1
  545. data/spec/mongoid/extensions/nil_class_spec.rb +0 -1
  546. data/spec/mongoid/extensions/object_id_spec.rb +0 -1
  547. data/spec/mongoid/extensions/object_spec.rb +0 -1
  548. data/spec/mongoid/extensions/range_spec.rb +0 -1
  549. data/spec/mongoid/extensions/regexp_spec.rb +0 -1
  550. data/spec/mongoid/extensions/set_spec.rb +0 -1
  551. data/spec/mongoid/extensions/string_spec.rb +2 -3
  552. data/spec/mongoid/extensions/stringified_symbol_spec.rb +0 -1
  553. data/spec/mongoid/extensions/symbol_spec.rb +0 -1
  554. data/spec/mongoid/extensions/time_spec.rb +0 -1
  555. data/spec/mongoid/extensions/time_with_zone_spec.rb +0 -1
  556. data/spec/mongoid/extensions/true_class_spec.rb +0 -1
  557. data/spec/mongoid/extensions_spec.rb +14 -3
  558. data/spec/mongoid/factory_spec.rb +1 -1
  559. data/spec/mongoid/fields/foreign_key_spec.rb +0 -1
  560. data/spec/mongoid/fields/localized_spec.rb +0 -1
  561. data/spec/mongoid/fields/standard_spec.rb +0 -1
  562. data/spec/mongoid/fields_spec.rb +326 -31
  563. data/spec/mongoid/findable_spec.rb +21 -22
  564. data/spec/mongoid/indexable/specification_spec.rb +0 -1
  565. data/spec/mongoid/indexable_spec.rb +0 -1
  566. data/spec/mongoid/inspectable_spec.rb +0 -1
  567. data/spec/mongoid/interceptable_spec.rb +102 -95
  568. data/spec/mongoid/loggable_spec.rb +0 -1
  569. data/spec/mongoid/matcher/extract_attribute_spec.rb +5 -2
  570. data/spec/mongoid/persistable/creatable_spec.rb +2 -3
  571. data/spec/mongoid/persistable/deletable_spec.rb +18 -19
  572. data/spec/mongoid/persistable/destroyable_spec.rb +8 -9
  573. data/spec/mongoid/persistable/incrementable_spec.rb +8 -9
  574. data/spec/mongoid/persistable/logical_spec.rb +4 -5
  575. data/spec/mongoid/persistable/poppable_spec.rb +4 -5
  576. data/spec/mongoid/persistable/pullable_spec.rb +8 -9
  577. data/spec/mongoid/persistable/pushable_spec.rb +8 -9
  578. data/spec/mongoid/persistable/renamable_spec.rb +3 -4
  579. data/spec/mongoid/persistable/savable_spec.rb +15 -11
  580. data/spec/mongoid/persistable/settable_spec.rb +9 -10
  581. data/spec/mongoid/persistable/unsettable_spec.rb +4 -5
  582. data/spec/mongoid/persistable/updatable_spec.rb +41 -24
  583. data/spec/mongoid/persistable/upsertable_spec.rb +1 -2
  584. data/spec/mongoid/persistable_spec.rb +1 -2
  585. data/spec/mongoid/persistence_context_spec.rb +0 -1
  586. data/spec/mongoid/positional_spec.rb +0 -1
  587. data/spec/mongoid/query_cache_middleware_spec.rb +1 -2
  588. data/spec/mongoid/query_cache_spec.rb +32 -10
  589. data/spec/mongoid/relations/proxy_spec.rb +6 -7
  590. data/spec/mongoid/reloadable_spec.rb +209 -23
  591. data/spec/mongoid/scopable_spec.rb +65 -22
  592. data/spec/mongoid/selectable_spec.rb +6 -7
  593. data/spec/mongoid/serializable_spec.rb +9 -10
  594. data/spec/mongoid/shardable_spec.rb +2 -3
  595. data/spec/mongoid/stateful_spec.rb +1 -2
  596. data/spec/mongoid/tasks/database_rake_spec.rb +0 -1
  597. data/spec/mongoid/tasks/database_spec.rb +0 -1
  598. data/spec/mongoid/threaded_spec.rb +2 -3
  599. data/spec/mongoid/timestamps/created/short_spec.rb +1 -2
  600. data/spec/mongoid/timestamps/created_spec.rb +1 -2
  601. data/spec/mongoid/timestamps/timeless_spec.rb +2 -3
  602. data/spec/mongoid/timestamps/updated/short_spec.rb +3 -4
  603. data/spec/mongoid/timestamps/updated_spec.rb +3 -4
  604. data/spec/mongoid/timestamps_spec.rb +6 -7
  605. data/spec/mongoid/touchable_spec.rb +15 -20
  606. data/spec/mongoid/touchable_spec_models.rb +0 -1
  607. data/spec/mongoid/traversable_spec.rb +65 -2
  608. data/spec/mongoid/validatable/associated_spec.rb +0 -1
  609. data/spec/mongoid/validatable/format_spec.rb +0 -1
  610. data/spec/mongoid/validatable/length_spec.rb +0 -1
  611. data/spec/mongoid/validatable/numericality_spec.rb +0 -1
  612. data/spec/mongoid/validatable/presence_spec.rb +26 -23
  613. data/spec/mongoid/validatable/uniqueness_spec.rb +67 -68
  614. data/spec/mongoid/validatable_spec.rb +2 -3
  615. data/spec/mongoid_spec.rb +0 -1
  616. data/spec/rails/controller_extension/controller_runtime_spec.rb +0 -1
  617. data/spec/rails/mongoid_spec.rb +0 -1
  618. data/spec/shared/lib/mrss/cluster_config.rb +6 -1
  619. data/spec/shared/lib/mrss/constraints.rb +10 -17
  620. data/spec/shared/lib/mrss/docker_runner.rb +23 -3
  621. data/spec/shared/lib/mrss/eg_config_utils.rb +51 -0
  622. data/spec/shared/lib/mrss/event_subscriber.rb +15 -5
  623. data/spec/shared/lib/mrss/lite_constraints.rb +40 -1
  624. data/spec/shared/lib/mrss/session_registry.rb +69 -0
  625. data/spec/shared/lib/mrss/session_registry_legacy.rb +60 -0
  626. data/spec/shared/share/Dockerfile.erb +56 -54
  627. data/spec/shared/shlib/config.sh +27 -0
  628. data/spec/shared/shlib/distro.sh +2 -1
  629. data/spec/shared/shlib/server.sh +46 -21
  630. data/spec/shared/shlib/set_env.sh +43 -5
  631. data/spec/spec_helper.rb +12 -22
  632. data/spec/support/authorization.rb +0 -1
  633. data/spec/support/constraints.rb +0 -1
  634. data/spec/support/expectations.rb +0 -1
  635. data/spec/support/macros.rb +31 -1
  636. data/spec/support/models/account.rb +1 -2
  637. data/spec/support/models/acolyte.rb +0 -1
  638. data/spec/support/models/actor.rb +0 -1
  639. data/spec/support/models/actress.rb +0 -1
  640. data/spec/support/models/address.rb +0 -1
  641. data/spec/support/models/address_component.rb +0 -1
  642. data/spec/support/models/address_number.rb +0 -1
  643. data/spec/support/models/agency.rb +0 -1
  644. data/spec/support/models/agent.rb +0 -1
  645. data/spec/support/models/album.rb +0 -1
  646. data/spec/support/models/alert.rb +0 -1
  647. data/spec/support/models/animal.rb +0 -1
  648. data/spec/support/models/answer.rb +0 -1
  649. data/spec/support/models/appointment.rb +0 -1
  650. data/spec/support/models/armrest.rb +0 -1
  651. data/spec/support/models/array_field.rb +0 -1
  652. data/spec/support/models/article.rb +0 -1
  653. data/spec/support/models/artist.rb +2 -1
  654. data/spec/support/models/artwork.rb +0 -1
  655. data/spec/support/models/audible_sound.rb +3 -0
  656. data/spec/support/models/audio.rb +0 -1
  657. data/spec/support/models/augmentation.rb +0 -1
  658. data/spec/support/models/author.rb +0 -1
  659. data/spec/support/models/baby.rb +0 -1
  660. data/spec/support/models/band.rb +4 -1
  661. data/spec/support/models/bar.rb +0 -1
  662. data/spec/support/models/basic.rb +0 -1
  663. data/spec/support/models/bed.rb +0 -1
  664. data/spec/support/models/big_palette.rb +0 -1
  665. data/spec/support/models/birthday.rb +0 -1
  666. data/spec/support/models/bolt.rb +0 -1
  667. data/spec/support/models/bomb.rb +0 -1
  668. data/spec/support/models/book.rb +0 -1
  669. data/spec/support/models/breed.rb +0 -1
  670. data/spec/support/models/browser.rb +0 -1
  671. data/spec/support/models/building.rb +0 -1
  672. data/spec/support/models/building_address.rb +0 -1
  673. data/spec/support/models/bus.rb +0 -1
  674. data/spec/support/models/business.rb +0 -1
  675. data/spec/support/models/callback_test.rb +0 -1
  676. data/spec/support/models/canvas.rb +0 -1
  677. data/spec/support/models/car.rb +0 -1
  678. data/spec/support/models/cat.rb +0 -1
  679. data/spec/support/models/category.rb +0 -1
  680. data/spec/support/models/child.rb +0 -1
  681. data/spec/support/models/child_doc.rb +3 -4
  682. data/spec/support/models/church.rb +0 -1
  683. data/spec/support/models/circle.rb +0 -1
  684. data/spec/support/models/circuit.rb +0 -1
  685. data/spec/support/models/circus.rb +0 -1
  686. data/spec/support/models/code.rb +0 -1
  687. data/spec/support/models/coding/pull_request.rb +0 -1
  688. data/spec/support/models/coding.rb +0 -1
  689. data/spec/support/models/comment.rb +0 -1
  690. data/spec/support/models/company.rb +0 -1
  691. data/spec/support/models/consumption_period.rb +0 -1
  692. data/spec/support/models/contextable_item.rb +0 -1
  693. data/spec/support/models/contractor.rb +0 -1
  694. data/spec/support/models/cookie.rb +0 -1
  695. data/spec/support/models/country_code.rb +2 -1
  696. data/spec/support/models/courier_job.rb +0 -1
  697. data/spec/support/models/crate.rb +0 -1
  698. data/spec/support/models/customer.rb +0 -1
  699. data/spec/support/models/customer_address.rb +0 -1
  700. data/spec/support/models/deed.rb +0 -1
  701. data/spec/support/models/definition.rb +0 -1
  702. data/spec/support/models/delegating_patient.rb +0 -1
  703. data/spec/support/models/description.rb +0 -1
  704. data/spec/support/models/dictionary.rb +0 -1
  705. data/spec/support/models/division.rb +0 -1
  706. data/spec/support/models/doctor.rb +0 -1
  707. data/spec/support/models/dog.rb +0 -1
  708. data/spec/support/models/dokument.rb +0 -1
  709. data/spec/support/models/draft.rb +0 -1
  710. data/spec/support/models/dragon.rb +0 -1
  711. data/spec/support/models/driver.rb +0 -1
  712. data/spec/support/models/drug.rb +0 -1
  713. data/spec/support/models/dungeon.rb +0 -1
  714. data/spec/support/models/edit.rb +0 -1
  715. data/spec/support/models/email.rb +0 -1
  716. data/spec/support/models/employer.rb +0 -1
  717. data/spec/support/models/entry.rb +0 -1
  718. data/spec/support/models/eraser.rb +0 -1
  719. data/spec/support/models/even.rb +0 -1
  720. data/spec/support/models/event.rb +0 -1
  721. data/spec/support/models/exhibition.rb +0 -1
  722. data/spec/support/models/exhibitor.rb +0 -1
  723. data/spec/support/models/explosion.rb +0 -1
  724. data/spec/support/models/eye.rb +0 -1
  725. data/spec/support/models/eye_bowl.rb +0 -1
  726. data/spec/support/models/face.rb +0 -1
  727. data/spec/support/models/favorite.rb +0 -1
  728. data/spec/support/models/filesystem.rb +0 -1
  729. data/spec/support/models/fire_hydrant.rb +0 -1
  730. data/spec/support/models/firefox.rb +0 -1
  731. data/spec/support/models/fish.rb +0 -1
  732. data/spec/support/models/folder.rb +0 -1
  733. data/spec/support/models/folder_item.rb +0 -1
  734. data/spec/support/models/fruits.rb +0 -1
  735. data/spec/support/models/game.rb +0 -1
  736. data/spec/support/models/ghost.rb +0 -1
  737. data/spec/support/models/guitar.rb +0 -1
  738. data/spec/support/models/hole.rb +0 -1
  739. data/spec/support/models/home.rb +0 -1
  740. data/spec/support/models/house.rb +0 -1
  741. data/spec/support/models/html_writer.rb +0 -1
  742. data/spec/support/models/id_key.rb +0 -1
  743. data/spec/support/models/idnodef.rb +0 -1
  744. data/spec/support/models/image.rb +0 -1
  745. data/spec/support/models/implant.rb +0 -1
  746. data/spec/support/models/instrument.rb +0 -1
  747. data/spec/support/models/item.rb +0 -1
  748. data/spec/support/models/jar.rb +0 -1
  749. data/spec/support/models/kaleidoscope.rb +0 -1
  750. data/spec/support/models/kangaroo.rb +0 -1
  751. data/spec/support/models/label.rb +2 -2
  752. data/spec/support/models/language.rb +0 -1
  753. data/spec/support/models/lat_lng.rb +0 -1
  754. data/spec/support/models/league.rb +0 -1
  755. data/spec/support/models/learner.rb +0 -1
  756. data/spec/support/models/line_item.rb +0 -1
  757. data/spec/support/models/location.rb +0 -1
  758. data/spec/support/models/login.rb +0 -1
  759. data/spec/support/models/manufacturer.rb +0 -1
  760. data/spec/support/models/meat.rb +0 -1
  761. data/spec/support/models/membership.rb +1 -1
  762. data/spec/support/models/message.rb +0 -1
  763. data/spec/support/models/minim.rb +0 -1
  764. data/spec/support/models/mixed_drink.rb +0 -1
  765. data/spec/support/models/mop.rb +0 -1
  766. data/spec/support/models/movie.rb +0 -1
  767. data/spec/support/models/my_hash.rb +0 -1
  768. data/spec/support/models/name.rb +0 -1
  769. data/spec/support/models/name_only.rb +0 -1
  770. data/spec/support/models/node.rb +0 -1
  771. data/spec/support/models/note.rb +0 -1
  772. data/spec/support/models/nut.rb +0 -1
  773. data/spec/support/models/odd.rb +0 -1
  774. data/spec/support/models/order.rb +2 -1
  775. data/spec/support/models/ordered_post.rb +1 -2
  776. data/spec/support/models/ordered_preference.rb +0 -1
  777. data/spec/support/models/oscar.rb +0 -1
  778. data/spec/support/models/other_owner_object.rb +0 -1
  779. data/spec/support/models/override.rb +0 -1
  780. data/spec/support/models/ownable.rb +0 -1
  781. data/spec/support/models/owner.rb +0 -1
  782. data/spec/support/models/pack.rb +0 -1
  783. data/spec/support/models/page.rb +0 -1
  784. data/spec/support/models/page_question.rb +0 -1
  785. data/spec/support/models/palette.rb +0 -1
  786. data/spec/support/models/parent.rb +0 -1
  787. data/spec/support/models/parent_doc.rb +0 -1
  788. data/spec/support/models/passport.rb +5 -1
  789. data/spec/support/models/patient.rb +0 -1
  790. data/spec/support/models/pdf_writer.rb +0 -1
  791. data/spec/support/models/pencil.rb +0 -1
  792. data/spec/support/models/person.rb +1 -1
  793. data/spec/support/models/pet.rb +0 -1
  794. data/spec/support/models/pet_owner.rb +0 -1
  795. data/spec/support/models/phone.rb +2 -2
  796. data/spec/support/models/piano.rb +0 -1
  797. data/spec/support/models/pizza.rb +0 -1
  798. data/spec/support/models/player.rb +0 -1
  799. data/spec/support/models/post.rb +0 -1
  800. data/spec/support/models/post_genre.rb +0 -1
  801. data/spec/support/models/powerup.rb +0 -1
  802. data/spec/support/models/preference.rb +0 -1
  803. data/spec/support/models/princess.rb +0 -1
  804. data/spec/support/models/product.rb +0 -1
  805. data/spec/support/models/profile.rb +0 -1
  806. data/spec/support/models/pronunciation.rb +0 -1
  807. data/spec/support/models/pub.rb +0 -1
  808. data/spec/support/models/publication/encyclopedia.rb +0 -1
  809. data/spec/support/models/publication/review.rb +0 -1
  810. data/spec/support/models/publication.rb +0 -1
  811. data/spec/support/models/purchase.rb +0 -1
  812. data/spec/support/models/purchased_item.rb +10 -0
  813. data/spec/support/models/question.rb +0 -1
  814. data/spec/support/models/quiz.rb +0 -1
  815. data/spec/support/models/rating.rb +0 -1
  816. data/spec/support/models/record.rb +0 -1
  817. data/spec/support/models/registry.rb +0 -1
  818. data/spec/support/models/role.rb +0 -1
  819. data/spec/support/models/root_category.rb +0 -1
  820. data/spec/support/models/sandwich.rb +0 -1
  821. data/spec/support/models/scheduler.rb +0 -1
  822. data/spec/support/models/scribe.rb +0 -1
  823. data/spec/support/models/sealer.rb +0 -1
  824. data/spec/support/models/seat.rb +0 -1
  825. data/spec/support/models/seo.rb +0 -1
  826. data/spec/support/models/series.rb +0 -1
  827. data/spec/support/models/server.rb +0 -1
  828. data/spec/support/models/service.rb +0 -1
  829. data/spec/support/models/shape.rb +0 -1
  830. data/spec/support/models/shelf.rb +0 -1
  831. data/spec/support/models/shipment_address.rb +0 -1
  832. data/spec/support/models/shipping_container.rb +0 -1
  833. data/spec/support/models/shipping_pack.rb +0 -1
  834. data/spec/support/models/shirt.rb +0 -1
  835. data/spec/support/models/shop.rb +0 -1
  836. data/spec/support/models/short_agent.rb +0 -1
  837. data/spec/support/models/short_quiz.rb +0 -1
  838. data/spec/support/models/simple.rb +0 -1
  839. data/spec/support/models/slave.rb +0 -1
  840. data/spec/support/models/song.rb +0 -1
  841. data/spec/support/models/sound.rb +0 -1
  842. data/spec/support/models/spacer.rb +0 -1
  843. data/spec/support/models/square.rb +0 -1
  844. data/spec/support/models/staff.rb +0 -1
  845. data/spec/support/models/store_as_dup_test1.rb +0 -1
  846. data/spec/support/models/store_as_dup_test2.rb +0 -1
  847. data/spec/support/models/store_as_dup_test3.rb +0 -1
  848. data/spec/support/models/store_as_dup_test4.rb +0 -1
  849. data/spec/support/models/strategy.rb +0 -1
  850. data/spec/support/models/sub_item.rb +0 -1
  851. data/spec/support/models/subscription.rb +0 -1
  852. data/spec/support/models/survey.rb +0 -1
  853. data/spec/support/models/symptom.rb +0 -1
  854. data/spec/support/models/tag.rb +0 -1
  855. data/spec/support/models/target.rb +0 -1
  856. data/spec/support/models/template.rb +0 -1
  857. data/spec/support/models/thing.rb +0 -1
  858. data/spec/support/models/threadlocker.rb +0 -1
  859. data/spec/support/models/title.rb +0 -1
  860. data/spec/support/models/tool.rb +0 -1
  861. data/spec/support/models/topping.rb +0 -1
  862. data/spec/support/models/toy.rb +0 -1
  863. data/spec/support/models/track.rb +0 -1
  864. data/spec/support/models/translation.rb +0 -1
  865. data/spec/support/models/tree.rb +0 -1
  866. data/spec/support/models/truck.rb +0 -1
  867. data/spec/support/models/updatable.rb +0 -1
  868. data/spec/support/models/user.rb +0 -1
  869. data/spec/support/models/user_account.rb +0 -1
  870. data/spec/support/models/validation_callback.rb +0 -1
  871. data/spec/support/models/vehicle.rb +0 -1
  872. data/spec/support/models/version.rb +0 -1
  873. data/spec/support/models/vertex.rb +0 -1
  874. data/spec/support/models/vet_visit.rb +0 -1
  875. data/spec/support/models/video.rb +0 -1
  876. data/spec/support/models/video_game.rb +0 -1
  877. data/spec/support/models/washer.rb +0 -1
  878. data/spec/support/models/weapon.rb +0 -1
  879. data/spec/support/models/wiki_page.rb +0 -1
  880. data/spec/support/models/word.rb +0 -1
  881. data/spec/support/models/word_origin.rb +0 -1
  882. data/spec/support/models/writer.rb +0 -1
  883. data/spec/support/schema_maps/schema_map_aws.json +17 -0
  884. data/spec/support/schema_maps/schema_map_aws_key_alt_names.json +12 -0
  885. data/spec/support/schema_maps/schema_map_azure.json +17 -0
  886. data/spec/support/schema_maps/schema_map_azure_key_alt_names.json +12 -0
  887. data/spec/support/schema_maps/schema_map_gcp.json +17 -0
  888. data/spec/support/schema_maps/schema_map_gcp_key_alt_names.json +12 -0
  889. data/spec/support/schema_maps/schema_map_kmip.json +17 -0
  890. data/spec/support/schema_maps/schema_map_kmip_key_alt_names.json +12 -0
  891. data/spec/support/schema_maps/schema_map_local.json +18 -0
  892. data/spec/support/schema_maps/schema_map_local_key_alt_names.json +12 -0
  893. data/spec/support/shared/time.rb +0 -1
  894. data/spec/support/spec_config.rb +7 -1
  895. data.tar.gz.sig +0 -0
  896. metadata +630 -587
  897. metadata.gz.sig +0 -0
  898. data/lib/support/ruby_version.rb +0 -29
  899. data/spec/support/session_registry.rb +0 -50
@@ -1,5 +1,4 @@
1
1
  # frozen_string_literal: true
2
- # encoding: utf-8
3
2
 
4
3
  require "spec_helper"
5
4
 
@@ -8,15 +7,15 @@ describe Mongoid::Contextual::Atomic do
8
7
  describe "#add_to_set" do
9
8
 
10
9
  let!(:depeche_mode) do
11
- Band.create(members: [ "Dave" ])
10
+ Band.create!(members: [ "Dave" ])
12
11
  end
13
12
 
14
13
  let!(:new_order) do
15
- Band.create(members: [ "Peter" ])
14
+ Band.create!(members: [ "Peter" ])
16
15
  end
17
16
 
18
17
  let!(:smiths) do
19
- Band.create
18
+ Band.create!
20
19
  end
21
20
 
22
21
  context "when the criteria has no sorting" do
@@ -105,15 +104,15 @@ describe Mongoid::Contextual::Atomic do
105
104
  describe "#add_each_to_set" do
106
105
 
107
106
  let!(:depeche_mode) do
108
- Band.create(members: [ "Dave" ])
107
+ Band.create!(members: [ "Dave" ])
109
108
  end
110
109
 
111
110
  let!(:new_order) do
112
- Band.create(members: [ "Peter" ])
111
+ Band.create!(members: [ "Peter" ])
113
112
  end
114
113
 
115
114
  let!(:smiths) do
116
- Band.create
115
+ Band.create!
117
116
  end
118
117
 
119
118
  context "when the criteria has no sorting" do
@@ -202,7 +201,7 @@ describe Mongoid::Contextual::Atomic do
202
201
  describe "#bit" do
203
202
 
204
203
  let!(:depeche_mode) do
205
- Band.create(likes: 60)
204
+ Band.create!(likes: 60)
206
205
  end
207
206
 
208
207
  let(:criteria) do
@@ -250,7 +249,7 @@ describe Mongoid::Contextual::Atomic do
250
249
  min_server_version '3.4'
251
250
 
252
251
  let!(:depeche_mode) do
253
- Band.create(members: [ "Dave" ], likes: 60)
252
+ Band.create!(members: [ "Dave" ], likes: 60)
254
253
  end
255
254
 
256
255
  let(:criteria) do
@@ -274,15 +273,15 @@ describe Mongoid::Contextual::Atomic do
274
273
  describe "#inc" do
275
274
 
276
275
  let!(:depeche_mode) do
277
- Band.create(likes: 60)
276
+ Band.create!(likes: 60)
278
277
  end
279
278
 
280
279
  let!(:smiths) do
281
- Band.create
280
+ Band.create!
282
281
  end
283
282
 
284
283
  let!(:beatles) do
285
- Band.create(years: 2)
284
+ Band.create!(years: 2)
286
285
  end
287
286
 
288
287
  let(:criteria) do
@@ -330,7 +329,7 @@ describe Mongoid::Contextual::Atomic do
330
329
  min_server_version '3.4'
331
330
 
332
331
  let!(:depeche_mode) do
333
- Band.create(members: [ "Dave" ])
332
+ Band.create!(members: [ "Dave" ])
334
333
  end
335
334
 
336
335
  let(:criteria) do
@@ -354,11 +353,11 @@ describe Mongoid::Contextual::Atomic do
354
353
  describe "#pop" do
355
354
 
356
355
  let!(:depeche_mode) do
357
- Band.create(members: [ "Dave", "Martin" ])
356
+ Band.create!(members: [ "Dave", "Martin" ])
358
357
  end
359
358
 
360
359
  let!(:smiths) do
361
- Band.create
360
+ Band.create!
362
361
  end
363
362
 
364
363
  let(:criteria) do
@@ -403,7 +402,7 @@ describe Mongoid::Contextual::Atomic do
403
402
  min_server_version '3.4'
404
403
 
405
404
  let!(:depeche_mode) do
406
- Band.create(members: [ "Dave" ])
405
+ Band.create!(members: [ "Dave" ])
407
406
  end
408
407
 
409
408
  let(:criteria) do
@@ -427,11 +426,11 @@ describe Mongoid::Contextual::Atomic do
427
426
  describe "#pull" do
428
427
 
429
428
  let!(:depeche_mode) do
430
- Band.create(members: [ "Dave", "Alan" ])
429
+ Band.create!(members: [ "Dave", "Alan" ])
431
430
  end
432
431
 
433
432
  let!(:smiths) do
434
- Band.create
433
+ Band.create!
435
434
  end
436
435
 
437
436
  let(:criteria) do
@@ -458,7 +457,7 @@ describe Mongoid::Contextual::Atomic do
458
457
  min_server_version '3.4'
459
458
 
460
459
  let!(:depeche_mode) do
461
- Band.create(members: [ "Dave" ])
460
+ Band.create!(members: [ "Dave" ])
462
461
  end
463
462
 
464
463
  let(:criteria) do
@@ -484,11 +483,11 @@ describe Mongoid::Contextual::Atomic do
484
483
  context 'when the criteria does not have a collation' do
485
484
 
486
485
  let!(:depeche_mode) do
487
- Band.create(members: [ "Dave", "Alan", "Fletch" ])
486
+ Band.create!(members: [ "Dave", "Alan", "Fletch" ])
488
487
  end
489
488
 
490
489
  let!(:smiths) do
491
- Band.create
490
+ Band.create!
492
491
  end
493
492
 
494
493
  let(:criteria) do
@@ -516,7 +515,7 @@ describe Mongoid::Contextual::Atomic do
516
515
  min_server_version '3.4'
517
516
 
518
517
  let!(:depeche_mode) do
519
- Band.create(members: [ "Dave", "Alan", "Fletch" ])
518
+ Band.create!(members: [ "Dave", "Alan", "Fletch" ])
520
519
  end
521
520
 
522
521
  let(:criteria) do
@@ -542,11 +541,11 @@ describe Mongoid::Contextual::Atomic do
542
541
  context 'when the criteria does not have a collation' do
543
542
 
544
543
  let!(:depeche_mode) do
545
- Band.create(members: [ "Dave" ])
544
+ Band.create!(members: [ "Dave" ])
546
545
  end
547
546
 
548
547
  let!(:smiths) do
549
- Band.create
548
+ Band.create!
550
549
  end
551
550
 
552
551
  let(:criteria) do
@@ -574,11 +573,11 @@ describe Mongoid::Contextual::Atomic do
574
573
  min_server_version '3.4'
575
574
 
576
575
  let!(:depeche_mode) do
577
- Band.create(members: [ "Dave" ])
576
+ Band.create!(members: [ "Dave" ])
578
577
  end
579
578
 
580
579
  let!(:smiths) do
581
- Band.create
580
+ Band.create!
582
581
  end
583
582
 
584
583
  let(:criteria) do
@@ -608,11 +607,11 @@ describe Mongoid::Contextual::Atomic do
608
607
  context 'when the criteria does not have a collation' do
609
608
 
610
609
  let!(:depeche_mode) do
611
- Band.create(members: [ "Dave" ])
610
+ Band.create!(members: [ "Dave" ])
612
611
  end
613
612
 
614
613
  let!(:smiths) do
615
- Band.create
614
+ Band.create!
616
615
  end
617
616
 
618
617
  let(:criteria) do
@@ -640,11 +639,11 @@ describe Mongoid::Contextual::Atomic do
640
639
  min_server_version '3.4'
641
640
 
642
641
  let!(:depeche_mode) do
643
- Band.create(members: [ "Dave" ])
642
+ Band.create!(members: [ "Dave" ])
644
643
  end
645
644
 
646
645
  let!(:smiths) do
647
- Band.create
646
+ Band.create!
648
647
  end
649
648
 
650
649
  let(:criteria) do
@@ -670,11 +669,11 @@ describe Mongoid::Contextual::Atomic do
670
669
  context 'when the criteria does not have a collation' do
671
670
 
672
671
  let!(:depeche_mode) do
673
- Band.create(members: [ "Dave" ])
672
+ Band.create!(members: [ "Dave" ])
674
673
  end
675
674
 
676
675
  let!(:smiths) do
677
- Band.create
676
+ Band.create!
678
677
  end
679
678
 
680
679
  let(:criteria) do
@@ -686,15 +685,15 @@ describe Mongoid::Contextual::Atomic do
686
685
  end
687
686
 
688
687
  before do
689
- context.rename(members: :artists)
688
+ context.rename(members: :musicians)
690
689
  end
691
690
 
692
691
  it "renames existing fields" do
693
- expect(depeche_mode.reload.artists).to eq([ "Dave" ])
692
+ expect(depeche_mode.reload.musicians).to eq([ "Dave" ])
694
693
  end
695
694
 
696
695
  it "does not rename non existent fields" do
697
- expect(smiths.reload).to_not respond_to(:artists)
696
+ expect(smiths.reload).to_not respond_to(:musicians)
698
697
  end
699
698
  end
700
699
 
@@ -702,11 +701,11 @@ describe Mongoid::Contextual::Atomic do
702
701
  min_server_version '3.4'
703
702
 
704
703
  let!(:depeche_mode) do
705
- Band.create(members: [ "Dave" ])
704
+ Band.create!(members: [ "Dave" ])
706
705
  end
707
706
 
708
707
  let!(:smiths) do
709
- Band.create
708
+ Band.create!
710
709
  end
711
710
 
712
711
  let(:criteria) do
@@ -718,15 +717,15 @@ describe Mongoid::Contextual::Atomic do
718
717
  end
719
718
 
720
719
  before do
721
- context.rename(members: :artists)
720
+ context.rename(members: :musicians)
722
721
  end
723
722
 
724
723
  it "renames existing fields" do
725
- expect(depeche_mode.reload.artists).to eq([ "Dave" ])
724
+ expect(depeche_mode.reload.musicians).to eq([ "Dave" ])
726
725
  end
727
726
 
728
727
  it "does not rename non existent fields" do
729
- expect(smiths.reload).to_not respond_to(:artists)
728
+ expect(smiths.reload).to_not respond_to(:musicians)
730
729
  end
731
730
  end
732
731
  end
@@ -734,11 +733,11 @@ describe Mongoid::Contextual::Atomic do
734
733
  describe "#set" do
735
734
 
736
735
  let!(:depeche_mode) do
737
- Band.create(name: "Depeche Mode")
736
+ Band.create!(name: "Depeche Mode")
738
737
  end
739
738
 
740
739
  let!(:smiths) do
741
- Band.create
740
+ Band.create!
742
741
  end
743
742
 
744
743
  let(:criteria) do
@@ -780,11 +779,11 @@ describe Mongoid::Contextual::Atomic do
780
779
  context "when unsetting a single field" do
781
780
 
782
781
  let!(:depeche_mode) do
783
- Band.create(name: "Depeche Mode", years: 10)
782
+ Band.create!(name: "Depeche Mode", years: 10)
784
783
  end
785
784
 
786
785
  let!(:new_order) do
787
- Band.create(name: "New Order", years: 10)
786
+ Band.create!(name: "New Order", years: 10)
788
787
  end
789
788
 
790
789
  let(:criteria) do
@@ -830,7 +829,7 @@ describe Mongoid::Contextual::Atomic do
830
829
  context "when unsetting multiple fields" do
831
830
 
832
831
  let!(:new_order) do
833
- Band.create(name: "New Order", genres: %w[electro dub], years: 10,
832
+ Band.create!(name: "New Order", genres: %w[electro dub], years: 10,
834
833
  likes: 200, rating: 4.3, origin: 'Space')
835
834
  end
836
835
 
@@ -912,11 +911,11 @@ describe Mongoid::Contextual::Atomic do
912
911
  min_server_version '3.4'
913
912
 
914
913
  let!(:depeche_mode) do
915
- Band.create(name: "Depeche Mode", years: 10)
914
+ Band.create!(name: "Depeche Mode", years: 10)
916
915
  end
917
916
 
918
917
  let!(:new_order) do
919
- Band.create(name: "New Order", years: 10)
918
+ Band.create!(name: "New Order", years: 10)
920
919
  end
921
920
 
922
921
  let(:criteria) do
@@ -1,5 +1,4 @@
1
1
  # frozen_string_literal: true
2
- # encoding: utf-8
3
2
 
4
3
  require "spec_helper"
5
4
 
@@ -17,11 +16,11 @@ describe Mongoid::Contextual::GeoNear do
17
16
  end
18
17
 
19
18
  let!(:bar_one) do
20
- Bar.create(location: [ 52.30, 13.25 ])
19
+ Bar.create!(location: [ 52.30, 13.25 ])
21
20
  end
22
21
 
23
22
  let!(:bar_two) do
24
- Bar.create(location: [ 52.30, 13.35 ])
23
+ Bar.create!(location: [ 52.30, 13.35 ])
25
24
  end
26
25
 
27
26
  context "when results are returned" do
@@ -75,11 +74,11 @@ describe Mongoid::Contextual::GeoNear do
75
74
  end
76
75
 
77
76
  let!(:bar_one) do
78
- Bar.create(location: [ 52.30, 13.25 ])
77
+ Bar.create!(location: [ 52.30, 13.25 ])
79
78
  end
80
79
 
81
80
  let!(:bar_two) do
82
- Bar.create(location: [ 52.30, 13.35 ])
81
+ Bar.create!(location: [ 52.30, 13.35 ])
83
82
  end
84
83
 
85
84
  context "when no options are provided" do
@@ -139,7 +138,7 @@ describe Mongoid::Contextual::GeoNear do
139
138
  end
140
139
  end
141
140
 
142
- context "when spcifying spherical" do
141
+ context "when specifying spherical" do
143
142
 
144
143
  let(:criteria) do
145
144
  Bar.all
@@ -212,11 +211,11 @@ describe Mongoid::Contextual::GeoNear do
212
211
  end
213
212
 
214
213
  let!(:bar_one) do
215
- Bar.create(location: [ 52.30, 13.25 ])
214
+ Bar.create!(location: [ 52.30, 13.25 ])
216
215
  end
217
216
 
218
217
  let!(:bar_two) do
219
- Bar.create(location: [ 52.30, 13.35 ])
218
+ Bar.create!(location: [ 52.30, 13.35 ])
220
219
  end
221
220
 
222
221
  let(:geo_near) do
@@ -257,11 +256,11 @@ describe Mongoid::Contextual::GeoNear do
257
256
  end
258
257
 
259
258
  let!(:bar_one) do
260
- Bar.create(location: [ 52.30, 13.25 ])
259
+ Bar.create!(location: [ 52.30, 13.25 ])
261
260
  end
262
261
 
263
262
  let!(:bar_two) do
264
- Bar.create(location: [ 52.30, 13.35 ])
263
+ Bar.create!(location: [ 52.30, 13.35 ])
265
264
  end
266
265
 
267
266
  let(:criteria) do
@@ -292,11 +291,11 @@ describe Mongoid::Contextual::GeoNear do
292
291
  end
293
292
 
294
293
  let!(:bar_one) do
295
- Bar.create(location: [ 52.30, 13.25 ])
294
+ Bar.create!(location: [ 52.30, 13.25 ])
296
295
  end
297
296
 
298
297
  let!(:bar_two) do
299
- Bar.create(location: [ 52.30, 13.35 ])
298
+ Bar.create!(location: [ 52.30, 13.35 ])
300
299
  end
301
300
 
302
301
  context "when results are returned" do
@@ -341,11 +340,11 @@ describe Mongoid::Contextual::GeoNear do
341
340
  end
342
341
 
343
342
  let!(:bar_one) do
344
- Pub.create(location: [ 52.30, 13.25 ])
343
+ Pub.create!(location: [ 52.30, 13.25 ])
345
344
  end
346
345
 
347
346
  let!(:bar_two) do
348
- Pub.create(location: [ 52.30, 13.35 ])
347
+ Pub.create!(location: [ 52.30, 13.35 ])
349
348
  end
350
349
 
351
350
  context "when results are returned" do
@@ -376,11 +375,11 @@ describe Mongoid::Contextual::GeoNear do
376
375
  end
377
376
 
378
377
  let!(:bar_one) do
379
- Bar.create(location: [ 52.30, 13.25 ])
378
+ Bar.create!(location: [ 52.30, 13.25 ])
380
379
  end
381
380
 
382
381
  let!(:bar_two) do
383
- Bar.create(location: [ 52.30, 13.35 ])
382
+ Bar.create!(location: [ 52.30, 13.35 ])
384
383
  end
385
384
 
386
385
  let(:criteria) do
@@ -431,11 +430,11 @@ describe Mongoid::Contextual::GeoNear do
431
430
  end
432
431
 
433
432
  let!(:bar_one) do
434
- Bar.create(location: [ 52.30, 13.25 ])
433
+ Bar.create!(location: [ 52.30, 13.25 ])
435
434
  end
436
435
 
437
436
  let!(:bar_two) do
438
- Bar.create(location: [ 52.30, 13.35 ])
437
+ Bar.create!(location: [ 52.30, 13.35 ])
439
438
  end
440
439
 
441
440
  let(:criteria) do
@@ -1,5 +1,4 @@
1
1
  # frozen_string_literal: true
2
- # encoding: utf-8
3
2
 
4
3
  require "spec_helper"
5
4
 
@@ -24,11 +23,11 @@ describe Mongoid::Contextual::MapReduce do
24
23
  end
25
24
 
26
25
  let!(:depeche_mode) do
27
- Band.create(name: "Depeche Mode", likes: 200)
26
+ Band.create!(name: "Depeche Mode", likes: 200)
28
27
  end
29
28
 
30
29
  let!(:tool) do
31
- Band.create(name: "Tool", likes: 100)
30
+ Band.create!(name: "Tool", likes: 100)
32
31
  end
33
32
 
34
33
  let!(:collection) do
@@ -1,5 +1,4 @@
1
1
  # frozen_string_literal: true
2
- # encoding: utf-8
3
2
 
4
3
  require "spec_helper"
5
4
 
@@ -168,19 +167,19 @@ describe Mongoid::Contextual::Memory do
168
167
  [ :delete, :delete_all ].each do |method|
169
168
 
170
169
  let(:person) do
171
- Person.create
170
+ Person.create!
172
171
  end
173
172
 
174
173
  let(:hobrecht) do
175
- person.addresses.create(street: "hobrecht")
174
+ person.addresses.create!(street: "hobrecht")
176
175
  end
177
176
 
178
177
  let(:friedel) do
179
- person.addresses.create(street: "friedel")
178
+ person.addresses.create!(street: "friedel")
180
179
  end
181
180
 
182
181
  let(:pfluger) do
183
- person.addresses.create(street: "pfluger")
182
+ person.addresses.create!(street: "pfluger")
184
183
  end
185
184
 
186
185
  describe "##{method}" do
@@ -233,11 +232,11 @@ describe Mongoid::Contextual::Memory do
233
232
  context "when embedded multiple levels" do
234
233
 
235
234
  let!(:home) do
236
- hobrecht.locations.create(name: "home")
235
+ hobrecht.locations.create!(name: "home")
237
236
  end
238
237
 
239
238
  let!(:work) do
240
- hobrecht.locations.create(name: "work")
239
+ hobrecht.locations.create!(name: "work")
241
240
  end
242
241
 
243
242
  let(:criteria) do
@@ -299,19 +298,19 @@ describe Mongoid::Contextual::Memory do
299
298
  [ :destroy, :destroy_all ].each do |method|
300
299
 
301
300
  let(:person) do
302
- Person.create
301
+ Person.create!
303
302
  end
304
303
 
305
304
  let(:hobrecht) do
306
- person.addresses.create(street: "hobrecht")
305
+ person.addresses.create!(street: "hobrecht")
307
306
  end
308
307
 
309
308
  let(:friedel) do
310
- person.addresses.create(street: "friedel")
309
+ person.addresses.create!(street: "friedel")
311
310
  end
312
311
 
313
312
  let(:pfluger) do
314
- person.addresses.create(street: "pfluger")
313
+ person.addresses.create!(street: "pfluger")
315
314
  end
316
315
 
317
316
  let(:criteria) do
@@ -1252,19 +1251,19 @@ describe Mongoid::Contextual::Memory do
1252
1251
  describe "#update" do
1253
1252
 
1254
1253
  let(:person) do
1255
- Person.create
1254
+ Person.create!
1256
1255
  end
1257
1256
 
1258
1257
  let(:hobrecht) do
1259
- person.addresses.create(street: "hobrecht")
1258
+ person.addresses.create!(street: "hobrecht")
1260
1259
  end
1261
1260
 
1262
1261
  let(:friedel) do
1263
- person.addresses.create(street: "friedel")
1262
+ person.addresses.create!(street: "friedel")
1264
1263
  end
1265
1264
 
1266
1265
  let(:pfluger) do
1267
- person.addresses.create(street: "pfluger")
1266
+ person.addresses.create!(street: "pfluger")
1268
1267
  end
1269
1268
 
1270
1269
  context "when the documents are embedded one level" do
@@ -1324,11 +1323,11 @@ describe Mongoid::Contextual::Memory do
1324
1323
  context "when the documents are embedded multiple levels" do
1325
1324
 
1326
1325
  let!(:home) do
1327
- hobrecht.locations.create(name: "home")
1326
+ hobrecht.locations.create!(name: "home")
1328
1327
  end
1329
1328
 
1330
1329
  let!(:work) do
1331
- hobrecht.locations.create(name: "work")
1330
+ hobrecht.locations.create!(name: "work")
1332
1331
  end
1333
1332
 
1334
1333
  let(:criteria) do
@@ -1392,19 +1391,19 @@ describe Mongoid::Contextual::Memory do
1392
1391
  describe "#update_all" do
1393
1392
 
1394
1393
  let(:person) do
1395
- Person.create
1394
+ Person.create!
1396
1395
  end
1397
1396
 
1398
1397
  let(:hobrecht) do
1399
- person.addresses.create(street: "hobrecht")
1398
+ person.addresses.create!(street: "hobrecht")
1400
1399
  end
1401
1400
 
1402
1401
  let(:friedel) do
1403
- person.addresses.create(street: "friedel")
1402
+ person.addresses.create!(street: "friedel")
1404
1403
  end
1405
1404
 
1406
1405
  let(:pfluger) do
1407
- person.addresses.create(street: "pfluger")
1406
+ person.addresses.create!(street: "pfluger")
1408
1407
  end
1409
1408
 
1410
1409
  context 'when there is a collation on the criteria' do
@@ -1423,7 +1422,7 @@ describe Mongoid::Contextual::Memory do
1423
1422
  context "when the documents are empty" do
1424
1423
 
1425
1424
  let(:person_two) do
1426
- Person.create
1425
+ Person.create!
1427
1426
  end
1428
1427
 
1429
1428
  let(:criteria) do
@@ -1526,11 +1525,11 @@ describe Mongoid::Contextual::Memory do
1526
1525
  context "when the documents are embedded multiple levels" do
1527
1526
 
1528
1527
  let!(:home) do
1529
- hobrecht.locations.create(name: "home")
1528
+ hobrecht.locations.create!(name: "home")
1530
1529
  end
1531
1530
 
1532
1531
  let!(:work) do
1533
- hobrecht.locations.create(name: "work")
1532
+ hobrecht.locations.create!(name: "work")
1534
1533
  end
1535
1534
 
1536
1535
  let(:criteria) do