mongo 2.21.0 → 2.21.2

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 (1430) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -2
  3. data/lib/mongo/auth/aws/conversation.rb +1 -1
  4. data/lib/mongo/auth/credential_cache.rb +13 -6
  5. data/lib/mongo/client.rb +75 -28
  6. data/lib/mongo/client_encryption.rb +1 -1
  7. data/lib/mongo/cluster/sdam_flow.rb +1 -1
  8. data/lib/mongo/collection/view/aggregation.rb +1 -1
  9. data/lib/mongo/crypt/binary.rb +5 -5
  10. data/lib/mongo/crypt/binding.rb +65 -1
  11. data/lib/mongo/crypt/context.rb +55 -27
  12. data/lib/mongo/crypt/encryption_io.rb +4 -2
  13. data/lib/mongo/crypt/handle.rb +1 -1
  14. data/lib/mongo/cursor.rb +1 -1
  15. data/lib/mongo/error/kms_error.rb +9 -0
  16. data/lib/mongo/error/pool_cleared_error.rb +1 -0
  17. data/lib/mongo/error/sdam_error_detection.rb +3 -3
  18. data/lib/mongo/lint.rb +1 -1
  19. data/lib/mongo/monitoring/event/secure.rb +1 -1
  20. data/lib/mongo/monitoring.rb +1 -1
  21. data/lib/mongo/operation/shared/read_preference_supported.rb +2 -2
  22. data/lib/mongo/operation/shared/sessions_supported.rb +2 -2
  23. data/lib/mongo/protocol/compressed.rb +1 -1
  24. data/lib/mongo/protocol/msg.rb +1 -1
  25. data/lib/mongo/search_index/view.rb +4 -4
  26. data/lib/mongo/server/connection_pool/generation_manager.rb +26 -1
  27. data/lib/mongo/server/connection_pool.rb +1 -0
  28. data/lib/mongo/server/push_monitor.rb +1 -1
  29. data/lib/mongo/session/server_session/dirtyable.rb +1 -1
  30. data/lib/mongo/socket.rb +40 -24
  31. data/lib/mongo/uri/srv_protocol.rb +3 -1
  32. data/lib/mongo/version.rb +4 -15
  33. data/mongo.gemspec +4 -4
  34. metadata +19 -2799
  35. data/Rakefile +0 -196
  36. data/spec/NOTES.aws-auth.md +0 -296
  37. data/spec/README.aws-auth.md +0 -318
  38. data/spec/README.md +0 -733
  39. data/spec/USERS.md +0 -72
  40. data/spec/atlas/atlas_connectivity_spec.rb +0 -27
  41. data/spec/atlas/operations_spec.rb +0 -23
  42. data/spec/faas/ruby-sam-app/Gemfile +0 -9
  43. data/spec/faas/ruby-sam-app/mongodb/Gemfile +0 -4
  44. data/spec/faas/ruby-sam-app/mongodb/app.rb +0 -149
  45. data/spec/faas/ruby-sam-app/template.yaml +0 -48
  46. data/spec/integration/auth_spec.rb +0 -309
  47. data/spec/integration/awaited_ismaster_spec.rb +0 -31
  48. data/spec/integration/aws_auth_credentials_cache_spec.rb +0 -51
  49. data/spec/integration/aws_auth_request_spec.rb +0 -77
  50. data/spec/integration/aws_credentials_retriever_spec.rb +0 -136
  51. data/spec/integration/aws_lambda_examples_spec.rb +0 -68
  52. data/spec/integration/bson_symbol_spec.rb +0 -39
  53. data/spec/integration/bulk_insert_spec.rb +0 -83
  54. data/spec/integration/bulk_write_error_message_spec.rb +0 -74
  55. data/spec/integration/bulk_write_spec.rb +0 -86
  56. data/spec/integration/change_stream_examples_spec.rb +0 -208
  57. data/spec/integration/change_stream_spec.rb +0 -814
  58. data/spec/integration/check_clean_slate_spec.rb +0 -19
  59. data/spec/integration/client_authentication_options_spec.rb +0 -514
  60. data/spec/integration/client_connectivity_spec.rb +0 -41
  61. data/spec/integration/client_construction_aws_auth_spec.rb +0 -203
  62. data/spec/integration/client_construction_spec.rb +0 -381
  63. data/spec/integration/client_side_encryption/auto_encryption_bulk_writes_spec.rb +0 -360
  64. data/spec/integration/client_side_encryption/auto_encryption_command_monitoring_spec.rb +0 -306
  65. data/spec/integration/client_side_encryption/auto_encryption_mongocryptd_spawn_spec.rb +0 -75
  66. data/spec/integration/client_side_encryption/auto_encryption_old_wire_version_spec.rb +0 -82
  67. data/spec/integration/client_side_encryption/auto_encryption_reconnect_spec.rb +0 -260
  68. data/spec/integration/client_side_encryption/auto_encryption_spec.rb +0 -754
  69. data/spec/integration/client_side_encryption/automatic_data_encryption_keys_prose_spec.rb +0 -153
  70. data/spec/integration/client_side_encryption/bson_size_limit_spec.rb +0 -190
  71. data/spec/integration/client_side_encryption/bypass_mongocryptd_spawn_spec.rb +0 -81
  72. data/spec/integration/client_side_encryption/client_close_spec.rb +0 -66
  73. data/spec/integration/client_side_encryption/corpus_spec.rb +0 -273
  74. data/spec/integration/client_side_encryption/custom_endpoint_spec.rb +0 -132
  75. data/spec/integration/client_side_encryption/data_key_spec.rb +0 -258
  76. data/spec/integration/client_side_encryption/decryption_events_prose_spec.rb +0 -159
  77. data/spec/integration/client_side_encryption/explicit_encryption_spec.rb +0 -176
  78. data/spec/integration/client_side_encryption/explicit_queryable_encryption_spec.rb +0 -150
  79. data/spec/integration/client_side_encryption/external_key_vault_spec.rb +0 -144
  80. data/spec/integration/client_side_encryption/kms_tls_options_spec.rb +0 -436
  81. data/spec/integration/client_side_encryption/kms_tls_spec.rb +0 -92
  82. data/spec/integration/client_side_encryption/mongocryptd_prose_spec.rb +0 -105
  83. data/spec/integration/client_side_encryption/on_demand_aws_credentials_spec.rb +0 -49
  84. data/spec/integration/client_side_encryption/on_demand_azure_credentials_spec.rb +0 -46
  85. data/spec/integration/client_side_encryption/on_demand_gcp_credentials_spec.rb +0 -47
  86. data/spec/integration/client_side_encryption/queryable_encryption_examples_spec.rb +0 -114
  87. data/spec/integration/client_side_encryption/range_explicit_encryption_prose_spec.rb +0 -583
  88. data/spec/integration/client_side_encryption/rewrap_prose_spec.rb +0 -114
  89. data/spec/integration/client_side_encryption/unique_index_on_key_alt_names_prose_spec.rb +0 -89
  90. data/spec/integration/client_side_encryption/views_spec.rb +0 -47
  91. data/spec/integration/client_side_operations_timeout/encryption_prose_spec.rb +0 -131
  92. data/spec/integration/client_spec.rb +0 -54
  93. data/spec/integration/client_update_spec.rb +0 -161
  94. data/spec/integration/collection_indexes_prose_spec.rb +0 -58
  95. data/spec/integration/command_monitoring_spec.rb +0 -184
  96. data/spec/integration/command_spec.rb +0 -157
  97. data/spec/integration/connect_single_rs_name_spec.rb +0 -75
  98. data/spec/integration/connection/faas_env_spec.rb +0 -62
  99. data/spec/integration/connection_pool_populator_spec.rb +0 -327
  100. data/spec/integration/connection_spec.rb +0 -353
  101. data/spec/integration/crud_spec.rb +0 -378
  102. data/spec/integration/cursor_pinning_spec.rb +0 -80
  103. data/spec/integration/cursor_reaping_spec.rb +0 -143
  104. data/spec/integration/docs_examples_spec.rb +0 -207
  105. data/spec/integration/error_detection_spec.rb +0 -42
  106. data/spec/integration/find_options_spec.rb +0 -227
  107. data/spec/integration/fork_reconnect_spec.rb +0 -207
  108. data/spec/integration/get_more_spec.rb +0 -42
  109. data/spec/integration/grid_fs_bucket_spec.rb +0 -51
  110. data/spec/integration/heartbeat_events_spec.rb +0 -102
  111. data/spec/integration/map_reduce_spec.rb +0 -81
  112. data/spec/integration/mmapv1_spec.rb +0 -31
  113. data/spec/integration/mongos_pinning_spec.rb +0 -37
  114. data/spec/integration/ocsp_connectivity_spec.rb +0 -29
  115. data/spec/integration/ocsp_verifier_cache_spec.rb +0 -191
  116. data/spec/integration/ocsp_verifier_spec.rb +0 -358
  117. data/spec/integration/operation_failure_code_spec.rb +0 -29
  118. data/spec/integration/operation_failure_message_spec.rb +0 -91
  119. data/spec/integration/query_cache_spec.rb +0 -1343
  120. data/spec/integration/query_cache_transactions_spec.rb +0 -193
  121. data/spec/integration/read_concern_spec.rb +0 -92
  122. data/spec/integration/read_preference_spec.rb +0 -548
  123. data/spec/integration/reconnect_spec.rb +0 -200
  124. data/spec/integration/retryable_errors_spec.rb +0 -286
  125. data/spec/integration/retryable_reads_errors_spec.rb +0 -275
  126. data/spec/integration/retryable_writes/retryable_writes_36_and_older_spec.rb +0 -764
  127. data/spec/integration/retryable_writes/retryable_writes_40_and_newer_spec.rb +0 -405
  128. data/spec/integration/retryable_writes/shared/adds_diagnostics.rb +0 -18
  129. data/spec/integration/retryable_writes/shared/does_not_support_retries.rb +0 -27
  130. data/spec/integration/retryable_writes/shared/only_supports_legacy_retries.rb +0 -28
  131. data/spec/integration/retryable_writes/shared/performs_legacy_retries.rb +0 -220
  132. data/spec/integration/retryable_writes/shared/performs_modern_retries.rb +0 -235
  133. data/spec/integration/retryable_writes/shared/performs_no_retries.rb +0 -113
  134. data/spec/integration/retryable_writes/shared/supports_legacy_retries.rb +0 -22
  135. data/spec/integration/retryable_writes/shared/supports_modern_retries.rb +0 -28
  136. data/spec/integration/retryable_writes/shared/supports_retries.rb +0 -19
  137. data/spec/integration/retryable_writes_errors_spec.rb +0 -348
  138. data/spec/integration/sdam_error_handling_spec.rb +0 -490
  139. data/spec/integration/sdam_events_spec.rb +0 -178
  140. data/spec/integration/sdam_prose_spec.rb +0 -67
  141. data/spec/integration/search_indexes_prose_spec.rb +0 -172
  142. data/spec/integration/secondary_reads_spec.rb +0 -103
  143. data/spec/integration/server_description_spec.rb +0 -48
  144. data/spec/integration/server_monitor_spec.rb +0 -57
  145. data/spec/integration/server_selection_spec.rb +0 -39
  146. data/spec/integration/server_selector_spec.rb +0 -107
  147. data/spec/integration/server_spec.rb +0 -67
  148. data/spec/integration/shell_examples_spec.rb +0 -984
  149. data/spec/integration/size_limit_spec.rb +0 -118
  150. data/spec/integration/snappy_compression_spec.rb +0 -28
  151. data/spec/integration/snapshot_query_examples_spec.rb +0 -129
  152. data/spec/integration/srv_monitoring_spec.rb +0 -445
  153. data/spec/integration/srv_spec.rb +0 -60
  154. data/spec/integration/ssl_uri_options_spec.rb +0 -28
  155. data/spec/integration/step_down_spec.rb +0 -225
  156. data/spec/integration/time_zone_querying_spec.rb +0 -55
  157. data/spec/integration/transaction_pinning_spec.rb +0 -134
  158. data/spec/integration/transactions_api_examples_spec.rb +0 -64
  159. data/spec/integration/transactions_examples_spec.rb +0 -235
  160. data/spec/integration/truncated_utf8_spec.rb +0 -26
  161. data/spec/integration/versioned_api_examples_spec.rb +0 -120
  162. data/spec/integration/x509_auth_spec.rb +0 -112
  163. data/spec/integration/zlib_compression_spec.rb +0 -28
  164. data/spec/integration/zstd_compression_spec.rb +0 -29
  165. data/spec/kerberos/kerberos_spec.rb +0 -98
  166. data/spec/lite_spec_helper.rb +0 -211
  167. data/spec/mongo/address/ipv4_spec.rb +0 -102
  168. data/spec/mongo/address/ipv6_spec.rb +0 -137
  169. data/spec/mongo/address/unix_spec.rb +0 -45
  170. data/spec/mongo/address/validator_spec.rb +0 -54
  171. data/spec/mongo/address_spec.rb +0 -357
  172. data/spec/mongo/auth/aws/credential_cache_spec.rb +0 -63
  173. data/spec/mongo/auth/aws/credentials_retriever_spec.rb +0 -90
  174. data/spec/mongo/auth/aws/credentials_spec.rb +0 -46
  175. data/spec/mongo/auth/aws/request_region_spec.rb +0 -45
  176. data/spec/mongo/auth/aws/request_spec.rb +0 -79
  177. data/spec/mongo/auth/cr_spec.rb +0 -58
  178. data/spec/mongo/auth/gssapi/conversation_spec.rb +0 -124
  179. data/spec/mongo/auth/invalid_mechanism_spec.rb +0 -14
  180. data/spec/mongo/auth/ldap/conversation_spec.rb +0 -46
  181. data/spec/mongo/auth/ldap_spec.rb +0 -46
  182. data/spec/mongo/auth/scram/conversation_spec.rb +0 -205
  183. data/spec/mongo/auth/scram256/conversation_spec.rb +0 -174
  184. data/spec/mongo/auth/scram_negotiation_spec.rb +0 -532
  185. data/spec/mongo/auth/scram_spec.rb +0 -121
  186. data/spec/mongo/auth/stringprep/profiles/sasl_spec.rb +0 -116
  187. data/spec/mongo/auth/stringprep_spec.rb +0 -191
  188. data/spec/mongo/auth/user/view_spec.rb +0 -584
  189. data/spec/mongo/auth/user_spec.rb +0 -343
  190. data/spec/mongo/auth/x509/conversation_spec.rb +0 -72
  191. data/spec/mongo/auth/x509_spec.rb +0 -72
  192. data/spec/mongo/auth_spec.rb +0 -68
  193. data/spec/mongo/bson_spec.rb +0 -14
  194. data/spec/mongo/bulk_write/ordered_combiner_spec.rb +0 -287
  195. data/spec/mongo/bulk_write/result_spec.rb +0 -141
  196. data/spec/mongo/bulk_write/unordered_combiner_spec.rb +0 -242
  197. data/spec/mongo/bulk_write_spec.rb +0 -2514
  198. data/spec/mongo/caching_cursor_spec.rb +0 -73
  199. data/spec/mongo/client_construction_spec.rb +0 -2723
  200. data/spec/mongo/client_encryption_spec.rb +0 -403
  201. data/spec/mongo/client_spec.rb +0 -1357
  202. data/spec/mongo/cluster/cursor_reaper_spec.rb +0 -230
  203. data/spec/mongo/cluster/periodic_executor_spec.rb +0 -21
  204. data/spec/mongo/cluster/socket_reaper_spec.rb +0 -46
  205. data/spec/mongo/cluster/topology/replica_set_spec.rb +0 -601
  206. data/spec/mongo/cluster/topology/sharded_spec.rb +0 -158
  207. data/spec/mongo/cluster/topology/single_spec.rb +0 -192
  208. data/spec/mongo/cluster/topology/unknown_spec.rb +0 -103
  209. data/spec/mongo/cluster/topology_spec.rb +0 -211
  210. data/spec/mongo/cluster_spec.rb +0 -825
  211. data/spec/mongo/cluster_time_spec.rb +0 -151
  212. data/spec/mongo/collection/view/aggregation_spec.rb +0 -753
  213. data/spec/mongo/collection/view/builder/find_command_spec.rb +0 -528
  214. data/spec/mongo/collection/view/builder/op_query_spec.rb +0 -161
  215. data/spec/mongo/collection/view/change_stream_resume_spec.rb +0 -397
  216. data/spec/mongo/collection/view/change_stream_spec.rb +0 -547
  217. data/spec/mongo/collection/view/explainable_spec.rb +0 -119
  218. data/spec/mongo/collection/view/immutable_spec.rb +0 -57
  219. data/spec/mongo/collection/view/iterable_spec.rb +0 -41
  220. data/spec/mongo/collection/view/map_reduce_spec.rb +0 -907
  221. data/spec/mongo/collection/view/readable_spec.rb +0 -2283
  222. data/spec/mongo/collection/view/writable_spec.rb +0 -1976
  223. data/spec/mongo/collection/view_spec.rb +0 -424
  224. data/spec/mongo/collection_crud_spec.rb +0 -4472
  225. data/spec/mongo/collection_ddl_spec.rb +0 -587
  226. data/spec/mongo/collection_spec.rb +0 -849
  227. data/spec/mongo/condition_variable_spec.rb +0 -104
  228. data/spec/mongo/config/options_spec.rb +0 -76
  229. data/spec/mongo/config_spec.rb +0 -74
  230. data/spec/mongo/crypt/auto_decryption_context_spec.rb +0 -109
  231. data/spec/mongo/crypt/auto_encrypter_spec.rb +0 -450
  232. data/spec/mongo/crypt/auto_encryption_context_spec.rb +0 -126
  233. data/spec/mongo/crypt/binary_spec.rb +0 -113
  234. data/spec/mongo/crypt/binding/binary_spec.rb +0 -54
  235. data/spec/mongo/crypt/binding/context_spec.rb +0 -305
  236. data/spec/mongo/crypt/binding/helpers_spec.rb +0 -44
  237. data/spec/mongo/crypt/binding/mongocrypt_spec.rb +0 -113
  238. data/spec/mongo/crypt/binding/status_spec.rb +0 -97
  239. data/spec/mongo/crypt/binding/version_spec.rb +0 -67
  240. data/spec/mongo/crypt/binding_unloaded_spec.rb +0 -37
  241. data/spec/mongo/crypt/data_key_context_spec.rb +0 -146
  242. data/spec/mongo/crypt/encryption_io_spec.rb +0 -141
  243. data/spec/mongo/crypt/explicit_decryption_context_spec.rb +0 -106
  244. data/spec/mongo/crypt/explicit_encryption_context_spec.rb +0 -266
  245. data/spec/mongo/crypt/handle_spec.rb +0 -266
  246. data/spec/mongo/crypt/helpers/mongo_crypt_spec_helper.rb +0 -111
  247. data/spec/mongo/crypt/hooks_spec.rb +0 -30
  248. data/spec/mongo/crypt/kms/azure/credentials_retriever_spec.rb +0 -86
  249. data/spec/mongo/crypt/kms/credentials_spec.rb +0 -373
  250. data/spec/mongo/crypt/kms_spec.rb +0 -62
  251. data/spec/mongo/crypt/status_spec.rb +0 -150
  252. data/spec/mongo/crypt_spec.rb +0 -21
  253. data/spec/mongo/cursor/builder/get_more_command_spec.rb +0 -195
  254. data/spec/mongo/cursor/builder/op_get_more_spec.rb +0 -68
  255. data/spec/mongo/cursor_spec.rb +0 -851
  256. data/spec/mongo/database_spec.rb +0 -1365
  257. data/spec/mongo/distinguishing_semaphore_spec.rb +0 -66
  258. data/spec/mongo/error/bulk_write_error_spec.rb +0 -52
  259. data/spec/mongo/error/crypt_error_spec.rb +0 -29
  260. data/spec/mongo/error/max_bson_size_spec.rb +0 -38
  261. data/spec/mongo/error/no_server_available_spec.rb +0 -35
  262. data/spec/mongo/error/notable_spec.rb +0 -62
  263. data/spec/mongo/error/operation_failure_heavy_spec.rb +0 -110
  264. data/spec/mongo/error/operation_failure_spec.rb +0 -553
  265. data/spec/mongo/error/parser_spec.rb +0 -519
  266. data/spec/mongo/error/unsupported_option_spec.rb +0 -57
  267. data/spec/mongo/event/publisher_spec.rb +0 -53
  268. data/spec/mongo/event/subscriber_spec.rb +0 -37
  269. data/spec/mongo/grid/file/chunk_spec.rb +0 -230
  270. data/spec/mongo/grid/file/info_spec.rb +0 -107
  271. data/spec/mongo/grid/file_spec.rb +0 -194
  272. data/spec/mongo/grid/fs_bucket_spec.rb +0 -1269
  273. data/spec/mongo/grid/stream/read_spec.rb +0 -292
  274. data/spec/mongo/grid/stream/write_spec.rb +0 -559
  275. data/spec/mongo/grid/stream_spec.rb +0 -51
  276. data/spec/mongo/id_spec.rb +0 -38
  277. data/spec/mongo/index/view_spec.rb +0 -1296
  278. data/spec/mongo/lint_spec.rb +0 -231
  279. data/spec/mongo/logger_spec.rb +0 -62
  280. data/spec/mongo/monitoring/command_log_subscriber_spec.rb +0 -79
  281. data/spec/mongo/monitoring/event/cmap/connection_check_out_failed_spec.rb +0 -26
  282. data/spec/mongo/monitoring/event/cmap/connection_check_out_started_spec.rb +0 -22
  283. data/spec/mongo/monitoring/event/cmap/connection_checked_in_spec.rb +0 -33
  284. data/spec/mongo/monitoring/event/cmap/connection_checked_out_spec.rb +0 -33
  285. data/spec/mongo/monitoring/event/cmap/connection_closed_spec.rb +0 -30
  286. data/spec/mongo/monitoring/event/cmap/connection_created_spec.rb +0 -27
  287. data/spec/mongo/monitoring/event/cmap/connection_ready_spec.rb +0 -27
  288. data/spec/mongo/monitoring/event/cmap/pool_cleared_spec.rb +0 -22
  289. data/spec/mongo/monitoring/event/cmap/pool_closed_spec.rb +0 -29
  290. data/spec/mongo/monitoring/event/cmap/pool_created_spec.rb +0 -36
  291. data/spec/mongo/monitoring/event/command_failed_spec.rb +0 -87
  292. data/spec/mongo/monitoring/event/command_started_spec.rb +0 -51
  293. data/spec/mongo/monitoring/event/command_succeeded_spec.rb +0 -88
  294. data/spec/mongo/monitoring/event/secure_spec.rb +0 -123
  295. data/spec/mongo/monitoring/event/server_closed_spec.rb +0 -38
  296. data/spec/mongo/monitoring/event/server_description_changed_spec.rb +0 -38
  297. data/spec/mongo/monitoring/event/server_heartbeat_failed_spec.rb +0 -34
  298. data/spec/mongo/monitoring/event/server_heartbeat_started_spec.rb +0 -34
  299. data/spec/mongo/monitoring/event/server_heartbeat_succeeded_spec.rb +0 -34
  300. data/spec/mongo/monitoring/event/server_opening_spec.rb +0 -38
  301. data/spec/mongo/monitoring/event/topology_changed_spec.rb +0 -44
  302. data/spec/mongo/monitoring/event/topology_closed_spec.rb +0 -38
  303. data/spec/mongo/monitoring/event/topology_opening_spec.rb +0 -38
  304. data/spec/mongo/monitoring_spec.rb +0 -196
  305. data/spec/mongo/operation/aggregate/result_spec.rb +0 -90
  306. data/spec/mongo/operation/aggregate_spec.rb +0 -76
  307. data/spec/mongo/operation/collections_info_spec.rb +0 -48
  308. data/spec/mongo/operation/command_spec.rb +0 -86
  309. data/spec/mongo/operation/context_spec.rb +0 -79
  310. data/spec/mongo/operation/create/op_msg_spec.rb +0 -240
  311. data/spec/mongo/operation/create_index_spec.rb +0 -62
  312. data/spec/mongo/operation/create_user_spec.rb +0 -53
  313. data/spec/mongo/operation/delete/bulk_spec.rb +0 -245
  314. data/spec/mongo/operation/delete/op_msg_spec.rb +0 -267
  315. data/spec/mongo/operation/delete_spec.rb +0 -203
  316. data/spec/mongo/operation/drop_index_spec.rb +0 -61
  317. data/spec/mongo/operation/find/builder/flags_spec.rb +0 -109
  318. data/spec/mongo/operation/find/builder/modifiers_spec.rb +0 -213
  319. data/spec/mongo/operation/find/op_msg_spec.rb +0 -66
  320. data/spec/mongo/operation/get_more/op_msg_spec.rb +0 -65
  321. data/spec/mongo/operation/indexes_spec.rb +0 -41
  322. data/spec/mongo/operation/insert/bulk_spec.rb +0 -273
  323. data/spec/mongo/operation/insert/op_msg_spec.rb +0 -293
  324. data/spec/mongo/operation/insert_spec.rb +0 -258
  325. data/spec/mongo/operation/limited_spec.rb +0 -55
  326. data/spec/mongo/operation/map_reduce_spec.rb +0 -131
  327. data/spec/mongo/operation/read_preference_legacy_spec.rb +0 -360
  328. data/spec/mongo/operation/read_preference_op_msg_spec.rb +0 -332
  329. data/spec/mongo/operation/remove_user_spec.rb +0 -52
  330. data/spec/mongo/operation/result_spec.rb +0 -369
  331. data/spec/mongo/operation/shared/csot/examples.rb +0 -113
  332. data/spec/mongo/operation/specifiable_spec.rb +0 -87
  333. data/spec/mongo/operation/update/bulk_spec.rb +0 -239
  334. data/spec/mongo/operation/update/op_msg_spec.rb +0 -272
  335. data/spec/mongo/operation/update_spec.rb +0 -235
  336. data/spec/mongo/operation/update_user_spec.rb +0 -52
  337. data/spec/mongo/options/redacted_spec.rb +0 -353
  338. data/spec/mongo/protocol/caching_hash_spec.rb +0 -37
  339. data/spec/mongo/protocol/compressed_spec.rb +0 -83
  340. data/spec/mongo/protocol/get_more_spec.rb +0 -164
  341. data/spec/mongo/protocol/kill_cursors_spec.rb +0 -121
  342. data/spec/mongo/protocol/msg_spec.rb +0 -507
  343. data/spec/mongo/protocol/query_spec.rb +0 -347
  344. data/spec/mongo/protocol/registry_spec.rb +0 -34
  345. data/spec/mongo/protocol/reply_spec.rb +0 -198
  346. data/spec/mongo/query_cache_middleware_spec.rb +0 -55
  347. data/spec/mongo/query_cache_spec.rb +0 -471
  348. data/spec/mongo/retryable/write_worker_spec.rb +0 -39
  349. data/spec/mongo/retryable_spec.rb +0 -624
  350. data/spec/mongo/semaphore_spec.rb +0 -54
  351. data/spec/mongo/server/app_metadata/environment_spec.rb +0 -344
  352. data/spec/mongo/server/app_metadata/truncator_spec.rb +0 -158
  353. data/spec/mongo/server/app_metadata_spec.rb +0 -158
  354. data/spec/mongo/server/connection_auth_spec.rb +0 -138
  355. data/spec/mongo/server/connection_common_spec.rb +0 -87
  356. data/spec/mongo/server/connection_pool/populator_spec.rb +0 -120
  357. data/spec/mongo/server/connection_pool_spec.rb +0 -1609
  358. data/spec/mongo/server/connection_spec.rb +0 -1310
  359. data/spec/mongo/server/description/features_spec.rb +0 -274
  360. data/spec/mongo/server/description_query_methods_spec.rb +0 -291
  361. data/spec/mongo/server/description_spec.rb +0 -846
  362. data/spec/mongo/server/monitor/app_metadata_spec.rb +0 -25
  363. data/spec/mongo/server/monitor/connection_spec.rb +0 -197
  364. data/spec/mongo/server/monitor_spec.rb +0 -326
  365. data/spec/mongo/server/push_monitor_spec.rb +0 -95
  366. data/spec/mongo/server/round_trip_time_calculator_spec.rb +0 -120
  367. data/spec/mongo/server_selector/nearest_spec.rb +0 -338
  368. data/spec/mongo/server_selector/primary_preferred_spec.rb +0 -372
  369. data/spec/mongo/server_selector/primary_spec.rb +0 -181
  370. data/spec/mongo/server_selector/secondary_preferred_spec.rb +0 -350
  371. data/spec/mongo/server_selector/secondary_spec.rb +0 -278
  372. data/spec/mongo/server_selector_spec.rb +0 -736
  373. data/spec/mongo/server_spec.rb +0 -463
  374. data/spec/mongo/session/server_session_spec.rb +0 -62
  375. data/spec/mongo/session/session_pool_spec.rb +0 -257
  376. data/spec/mongo/session_spec.rb +0 -368
  377. data/spec/mongo/session_transaction_spec.rb +0 -222
  378. data/spec/mongo/socket/ssl_spec.rb +0 -830
  379. data/spec/mongo/socket/tcp_spec.rb +0 -17
  380. data/spec/mongo/socket/unix_spec.rb +0 -56
  381. data/spec/mongo/socket_spec.rb +0 -119
  382. data/spec/mongo/srv/monitor_spec.rb +0 -233
  383. data/spec/mongo/srv/result_spec.rb +0 -57
  384. data/spec/mongo/timeout_spec.rb +0 -42
  385. data/spec/mongo/tls_context_hooks_spec.rb +0 -40
  386. data/spec/mongo/uri/options_mapper_spec.rb +0 -1605
  387. data/spec/mongo/uri/srv_protocol_spec.rb +0 -1367
  388. data/spec/mongo/uri_option_parsing_spec.rb +0 -625
  389. data/spec/mongo/uri_spec.rb +0 -1443
  390. data/spec/mongo/utils_spec.rb +0 -42
  391. data/spec/mongo/write_concern/acknowledged_spec.rb +0 -58
  392. data/spec/mongo/write_concern/unacknowledged_spec.rb +0 -29
  393. data/spec/mongo/write_concern_spec.rb +0 -227
  394. data/spec/runners/auth.rb +0 -140
  395. data/spec/runners/change_streams/outcome.rb +0 -45
  396. data/spec/runners/change_streams/spec.rb +0 -60
  397. data/spec/runners/change_streams/test.rb +0 -232
  398. data/spec/runners/cmap/verifier.rb +0 -48
  399. data/spec/runners/cmap.rb +0 -516
  400. data/spec/runners/command_monitoring.rb +0 -346
  401. data/spec/runners/connection_string.rb +0 -393
  402. data/spec/runners/crud/context.rb +0 -30
  403. data/spec/runners/crud/operation.rb +0 -480
  404. data/spec/runners/crud/outcome.rb +0 -56
  405. data/spec/runners/crud/requirement.rb +0 -139
  406. data/spec/runners/crud/spec.rb +0 -76
  407. data/spec/runners/crud/test.rb +0 -115
  408. data/spec/runners/crud/test_base.rb +0 -53
  409. data/spec/runners/crud/verifier.rb +0 -224
  410. data/spec/runners/crud.rb +0 -257
  411. data/spec/runners/gridfs.rb +0 -641
  412. data/spec/runners/read_write_concern_document.rb +0 -70
  413. data/spec/runners/sdam/verifier.rb +0 -112
  414. data/spec/runners/sdam.rb +0 -279
  415. data/spec/runners/server_selection.rb +0 -365
  416. data/spec/runners/server_selection_rtt.rb +0 -41
  417. data/spec/runners/transactions/operation.rb +0 -332
  418. data/spec/runners/transactions/spec.rb +0 -29
  419. data/spec/runners/transactions/test.rb +0 -379
  420. data/spec/runners/transactions.rb +0 -107
  421. data/spec/runners/unified/ambiguous_operations.rb +0 -13
  422. data/spec/runners/unified/assertions.rb +0 -396
  423. data/spec/runners/unified/change_stream_operations.rb +0 -42
  424. data/spec/runners/unified/client_side_encryption_operations.rb +0 -83
  425. data/spec/runners/unified/crud_operations.rb +0 -367
  426. data/spec/runners/unified/ddl_operations.rb +0 -286
  427. data/spec/runners/unified/entity_map.rb +0 -42
  428. data/spec/runners/unified/error.rb +0 -29
  429. data/spec/runners/unified/event_subscriber.rb +0 -110
  430. data/spec/runners/unified/exceptions.rb +0 -24
  431. data/spec/runners/unified/grid_fs_operations.rb +0 -114
  432. data/spec/runners/unified/search_index_operations.rb +0 -63
  433. data/spec/runners/unified/support_operations.rb +0 -370
  434. data/spec/runners/unified/test.rb +0 -606
  435. data/spec/runners/unified/test_group.rb +0 -31
  436. data/spec/runners/unified/thread_operations.rb +0 -73
  437. data/spec/runners/unified.rb +0 -109
  438. data/spec/solo/clean_exit_spec.rb +0 -24
  439. data/spec/spec_helper.rb +0 -35
  440. data/spec/spec_tests/auth_spec.rb +0 -58
  441. data/spec/spec_tests/change_streams_unified_spec.rb +0 -14
  442. data/spec/spec_tests/client_side_encryption_spec.rb +0 -37
  443. data/spec/spec_tests/client_side_encryption_unified_spec.rb +0 -26
  444. data/spec/spec_tests/client_side_operations_timeout_spec.rb +0 -15
  445. data/spec/spec_tests/cmap_spec.rb +0 -126
  446. data/spec/spec_tests/collection_management_spec.rb +0 -13
  447. data/spec/spec_tests/command_monitoring_unified_spec.rb +0 -13
  448. data/spec/spec_tests/connection_string_spec.rb +0 -10
  449. data/spec/spec_tests/crud_spec.rb +0 -12
  450. data/spec/spec_tests/crud_unified_spec.rb +0 -13
  451. data/spec/spec_tests/data/auth/connection-string.yml +0 -366
  452. data/spec/spec_tests/data/change_streams_unified/change-streams-clusterTime.yml +0 -43
  453. data/spec/spec_tests/data/change_streams_unified/change-streams-disambiguatedPaths.yml +0 -105
  454. data/spec/spec_tests/data/change_streams_unified/change-streams-errors.yml +0 -122
  455. data/spec/spec_tests/data/change_streams_unified/change-streams-pre_and_post_images.yml +0 -351
  456. data/spec/spec_tests/data/change_streams_unified/change-streams-resume-allowlist.yml +0 -1169
  457. data/spec/spec_tests/data/change_streams_unified/change-streams-resume-errorLabels.yml +0 -1069
  458. data/spec/spec_tests/data/change_streams_unified/change-streams-showExpandedEvents.yml +0 -307
  459. data/spec/spec_tests/data/change_streams_unified/change-streams.yml +0 -927
  460. data/spec/spec_tests/data/client_side_encryption/aggregate.yml +0 -120
  461. data/spec/spec_tests/data/client_side_encryption/awsTemporary.yml +0 -57
  462. data/spec/spec_tests/data/client_side_encryption/azureKMS.yml +0 -46
  463. data/spec/spec_tests/data/client_side_encryption/badQueries.yml +0 -537
  464. data/spec/spec_tests/data/client_side_encryption/badSchema.yml +0 -73
  465. data/spec/spec_tests/data/client_side_encryption/basic.yml +0 -102
  466. data/spec/spec_tests/data/client_side_encryption/bulk.yml +0 -81
  467. data/spec/spec_tests/data/client_side_encryption/bypassAutoEncryption.yml +0 -100
  468. data/spec/spec_tests/data/client_side_encryption/bypassedCommand.yml +0 -43
  469. data/spec/spec_tests/data/client_side_encryption/count.yml +0 -54
  470. data/spec/spec_tests/data/client_side_encryption/countDocuments.yml +0 -52
  471. data/spec/spec_tests/data/client_side_encryption/create-and-createIndexes.yml +0 -58
  472. data/spec/spec_tests/data/client_side_encryption/delete.yml +0 -91
  473. data/spec/spec_tests/data/client_side_encryption/distinct.yml +0 -66
  474. data/spec/spec_tests/data/client_side_encryption/explain.yml +0 -57
  475. data/spec/spec_tests/data/client_side_encryption/find.yml +0 -105
  476. data/spec/spec_tests/data/client_side_encryption/findOneAndDelete.yml +0 -50
  477. data/spec/spec_tests/data/client_side_encryption/findOneAndReplace.yml +0 -50
  478. data/spec/spec_tests/data/client_side_encryption/findOneAndUpdate.yml +0 -50
  479. data/spec/spec_tests/data/client_side_encryption/fle2v2-BypassQueryAnalysis.yml +0 -90
  480. data/spec/spec_tests/data/client_side_encryption/fle2v2-Compact.yml +0 -83
  481. data/spec/spec_tests/data/client_side_encryption/fle2v2-CreateCollection-OldServer.yml +0 -61
  482. data/spec/spec_tests/data/client_side_encryption/fle2v2-CreateCollection.yml +0 -938
  483. data/spec/spec_tests/data/client_side_encryption/fle2v2-DecryptExistingData.yml +0 -67
  484. data/spec/spec_tests/data/client_side_encryption/fle2v2-Delete.yml +0 -101
  485. data/spec/spec_tests/data/client_side_encryption/fle2v2-EncryptedFields-vs-EncryptedFieldsMap.yml +0 -80
  486. data/spec/spec_tests/data/client_side_encryption/fle2v2-EncryptedFields-vs-jsonSchema.yml +0 -103
  487. data/spec/spec_tests/data/client_side_encryption/fle2v2-EncryptedFieldsMap-defaults.yml +0 -59
  488. data/spec/spec_tests/data/client_side_encryption/fle2v2-FindOneAndUpdate.yml +0 -201
  489. data/spec/spec_tests/data/client_side_encryption/fle2v2-InsertFind-Indexed.yml +0 -97
  490. data/spec/spec_tests/data/client_side_encryption/fle2v2-InsertFind-Unindexed.yml +0 -90
  491. data/spec/spec_tests/data/client_side_encryption/fle2v2-MissingKey.yml +0 -44
  492. data/spec/spec_tests/data/client_side_encryption/fle2v2-NoEncryption.yml +0 -45
  493. data/spec/spec_tests/data/client_side_encryption/fle2v2-Update.yml +0 -211
  494. data/spec/spec_tests/data/client_side_encryption/fle2v2-validatorAndPartialFieldExpression.yml +0 -170
  495. data/spec/spec_tests/data/client_side_encryption/gcpKMS.yml +0 -46
  496. data/spec/spec_tests/data/client_side_encryption/getMore.yml +0 -61
  497. data/spec/spec_tests/data/client_side_encryption/insert.yml +0 -88
  498. data/spec/spec_tests/data/client_side_encryption/keyAltName.yml +0 -64
  499. data/spec/spec_tests/data/client_side_encryption/localKMS.yml +0 -47
  500. data/spec/spec_tests/data/client_side_encryption/localSchema.yml +0 -65
  501. data/spec/spec_tests/data/client_side_encryption/malformedCiphertext.yml +0 -69
  502. data/spec/spec_tests/data/client_side_encryption/maxWireVersion.yml +0 -22
  503. data/spec/spec_tests/data/client_side_encryption/missingKey.yml +0 -42
  504. data/spec/spec_tests/data/client_side_encryption/noSchema.yml +0 -39
  505. data/spec/spec_tests/data/client_side_encryption/replaceOne.yml +0 -57
  506. data/spec/spec_tests/data/client_side_encryption/timeoutMS.yml +0 -67
  507. data/spec/spec_tests/data/client_side_encryption/types.yml +0 -501
  508. data/spec/spec_tests/data/client_side_encryption/unified/addKeyAltName.yml +0 -194
  509. data/spec/spec_tests/data/client_side_encryption/unified/createDataKey-kms_providers-invalid.yml +0 -67
  510. data/spec/spec_tests/data/client_side_encryption/unified/createDataKey.yml +0 -309
  511. data/spec/spec_tests/data/client_side_encryption/unified/deleteKey.yml +0 -159
  512. data/spec/spec_tests/data/client_side_encryption/unified/getKey.yml +0 -105
  513. data/spec/spec_tests/data/client_side_encryption/unified/getKeyByAltName.yml +0 -104
  514. data/spec/spec_tests/data/client_side_encryption/unified/getKeys.yml +0 -122
  515. data/spec/spec_tests/data/client_side_encryption/unified/removeKeyAltName.yml +0 -157
  516. data/spec/spec_tests/data/client_side_encryption/unified/rewrapManyDataKey-decrypt_failure.yml +0 -69
  517. data/spec/spec_tests/data/client_side_encryption/unified/rewrapManyDataKey-encrypt_failure.yml +0 -122
  518. data/spec/spec_tests/data/client_side_encryption/unified/rewrapManyDataKey.yml +0 -432
  519. data/spec/spec_tests/data/client_side_encryption/unsupportedCommand.yml +0 -25
  520. data/spec/spec_tests/data/client_side_encryption/updateMany.yml +0 -70
  521. data/spec/spec_tests/data/client_side_encryption/updateOne.yml +0 -164
  522. data/spec/spec_tests/data/client_side_encryption/validatorAndPartialFieldExpression.yml +0 -166
  523. data/spec/spec_tests/data/client_side_operations_timeout/bulkWrite.yml +0 -87
  524. data/spec/spec_tests/data/client_side_operations_timeout/change-streams.yml +0 -358
  525. data/spec/spec_tests/data/client_side_operations_timeout/close-cursors.yml +0 -129
  526. data/spec/spec_tests/data/client_side_operations_timeout/command-execution.yml +0 -250
  527. data/spec/spec_tests/data/client_side_operations_timeout/convenient-transactions.yml +0 -113
  528. data/spec/spec_tests/data/client_side_operations_timeout/cursors.yml +0 -70
  529. data/spec/spec_tests/data/client_side_operations_timeout/deprecated-options.yml +0 -3982
  530. data/spec/spec_tests/data/client_side_operations_timeout/error-transformations.yml +0 -96
  531. data/spec/spec_tests/data/client_side_operations_timeout/global-timeoutMS.yml +0 -3236
  532. data/spec/spec_tests/data/client_side_operations_timeout/gridfs-advanced.yml +0 -207
  533. data/spec/spec_tests/data/client_side_operations_timeout/gridfs-delete.yml +0 -152
  534. data/spec/spec_tests/data/client_side_operations_timeout/gridfs-download.yml +0 -182
  535. data/spec/spec_tests/data/client_side_operations_timeout/gridfs-find.yml +0 -100
  536. data/spec/spec_tests/data/client_side_operations_timeout/gridfs-upload.yml +0 -249
  537. data/spec/spec_tests/data/client_side_operations_timeout/legacy-timeouts.yml +0 -204
  538. data/spec/spec_tests/data/client_side_operations_timeout/non-tailable-cursors.yml +0 -307
  539. data/spec/spec_tests/data/client_side_operations_timeout/override-collection-timeoutMS.yml +0 -1877
  540. data/spec/spec_tests/data/client_side_operations_timeout/override-operation-timeoutMS.yml +0 -1918
  541. data/spec/spec_tests/data/client_side_operations_timeout/retryability-legacy-timeouts.yml +0 -1676
  542. data/spec/spec_tests/data/client_side_operations_timeout/retryability-timeoutMS.yml +0 -2824
  543. data/spec/spec_tests/data/client_side_operations_timeout/sessions-inherit-timeoutMS.yml +0 -168
  544. data/spec/spec_tests/data/client_side_operations_timeout/sessions-override-operation-timeoutMS.yml +0 -171
  545. data/spec/spec_tests/data/client_side_operations_timeout/sessions-override-timeoutMS.yml +0 -168
  546. data/spec/spec_tests/data/client_side_operations_timeout/tailable-awaitData.yml +0 -247
  547. data/spec/spec_tests/data/client_side_operations_timeout/tailable-non-awaitData.yml +0 -181
  548. data/spec/spec_tests/data/cmap/connection-must-have-id.yml +0 -29
  549. data/spec/spec_tests/data/cmap/connection-must-order-ids.yml +0 -29
  550. data/spec/spec_tests/data/cmap/pool-checkin-destroy-closed.yml +0 -29
  551. data/spec/spec_tests/data/cmap/pool-checkin-destroy-stale.yml +0 -29
  552. data/spec/spec_tests/data/cmap/pool-checkin-make-available.yml +0 -26
  553. data/spec/spec_tests/data/cmap/pool-checkin.yml +0 -24
  554. data/spec/spec_tests/data/cmap/pool-checkout-connection.yml +0 -21
  555. data/spec/spec_tests/data/cmap/pool-checkout-custom-maxConnecting-is-enforced.yml +0 -50
  556. data/spec/spec_tests/data/cmap/pool-checkout-error-closed.yml +0 -38
  557. data/spec/spec_tests/data/cmap/pool-checkout-maxConnecting-is-enforced.yml +0 -81
  558. data/spec/spec_tests/data/cmap/pool-checkout-maxConnecting-timeout.yml +0 -71
  559. data/spec/spec_tests/data/cmap/pool-checkout-minPoolSize-connection-maxConnecting.yml +0 -64
  560. data/spec/spec_tests/data/cmap/pool-checkout-multiple.yml +0 -39
  561. data/spec/spec_tests/data/cmap/pool-checkout-no-idle.yml +0 -41
  562. data/spec/spec_tests/data/cmap/pool-checkout-no-stale.yml +0 -41
  563. data/spec/spec_tests/data/cmap/pool-checkout-returned-connection-maxConnecting.yml +0 -88
  564. data/spec/spec_tests/data/cmap/pool-clear-interrupting-pending-connections.yml +0 -43
  565. data/spec/spec_tests/data/cmap/pool-clear-min-size.yml +0 -41
  566. data/spec/spec_tests/data/cmap/pool-clear-paused.yml +0 -18
  567. data/spec/spec_tests/data/cmap/pool-clear-ready.yml +0 -39
  568. data/spec/spec_tests/data/cmap/pool-clear-schedule-run-interruptInUseConnections-false.yml +0 -48
  569. data/spec/spec_tests/data/cmap/pool-close-destroy-conns.yml +0 -30
  570. data/spec/spec_tests/data/cmap/pool-close.yml +0 -11
  571. data/spec/spec_tests/data/cmap/pool-create-max-size.yml +0 -73
  572. data/spec/spec_tests/data/cmap/pool-create-min-size-error.yml +0 -43
  573. data/spec/spec_tests/data/cmap/pool-create-min-size.yml +0 -43
  574. data/spec/spec_tests/data/cmap/pool-create-with-options.yml +0 -21
  575. data/spec/spec_tests/data/cmap/pool-create.yml +0 -12
  576. data/spec/spec_tests/data/cmap/pool-ready-ready.yml +0 -22
  577. data/spec/spec_tests/data/cmap/pool-ready.yml +0 -30
  578. data/spec/spec_tests/data/cmap/wait-queue-fairness.yml +0 -126
  579. data/spec/spec_tests/data/cmap/wait-queue-timeout.yml +0 -51
  580. data/spec/spec_tests/data/collection_management/clustered-indexes.yml +0 -135
  581. data/spec/spec_tests/data/collection_management/createCollection-pre_and_post_images.yml +0 -50
  582. data/spec/spec_tests/data/collection_management/modifyCollection-errorResponse.yml +0 -59
  583. data/spec/spec_tests/data/collection_management/modifyCollection-pre_and_post_images.yml +0 -58
  584. data/spec/spec_tests/data/collection_management/timeseries-collection.yml +0 -164
  585. data/spec/spec_tests/data/command_monitoring_unified/bulkWrite.yml +0 -68
  586. data/spec/spec_tests/data/command_monitoring_unified/command.yml +0 -50
  587. data/spec/spec_tests/data/command_monitoring_unified/deleteMany.yml +0 -79
  588. data/spec/spec_tests/data/command_monitoring_unified/deleteOne.yml +0 -79
  589. data/spec/spec_tests/data/command_monitoring_unified/find.yml +0 -254
  590. data/spec/spec_tests/data/command_monitoring_unified/insertMany.yml +0 -79
  591. data/spec/spec_tests/data/command_monitoring_unified/insertOne.yml +0 -77
  592. data/spec/spec_tests/data/command_monitoring_unified/pre-42-server-connection-id.yml +0 -56
  593. data/spec/spec_tests/data/command_monitoring_unified/redacted-commands.yml +0 -348
  594. data/spec/spec_tests/data/command_monitoring_unified/server-connection-id.yml +0 -56
  595. data/spec/spec_tests/data/command_monitoring_unified/unacknowledgedBulkWrite.yml +0 -55
  596. data/spec/spec_tests/data/command_monitoring_unified/updateMany.yml +0 -87
  597. data/spec/spec_tests/data/command_monitoring_unified/updateOne.yml +0 -118
  598. data/spec/spec_tests/data/command_monitoring_unified/writeConcernError.yml +0 -80
  599. data/spec/spec_tests/data/connection_string/invalid-uris.yml +0 -251
  600. data/spec/spec_tests/data/connection_string/valid-auth.yml +0 -257
  601. data/spec/spec_tests/data/connection_string/valid-db-with-dotted-name.yml +0 -77
  602. data/spec/spec_tests/data/connection_string/valid-host_identifiers.yml +0 -121
  603. data/spec/spec_tests/data/connection_string/valid-options.yml +0 -30
  604. data/spec/spec_tests/data/connection_string/valid-unix_socket-absolute.yml +0 -197
  605. data/spec/spec_tests/data/connection_string/valid-unix_socket-relative.yml +0 -213
  606. data/spec/spec_tests/data/connection_string/valid-warnings.yml +0 -75
  607. data/spec/spec_tests/data/crud/read/aggregate-collation.yml +0 -18
  608. data/spec/spec_tests/data/crud/read/aggregate-out.yml +0 -44
  609. data/spec/spec_tests/data/crud/read/aggregate.yml +0 -21
  610. data/spec/spec_tests/data/crud/read/count-collation.yml +0 -26
  611. data/spec/spec_tests/data/crud/read/count-empty.yml +0 -29
  612. data/spec/spec_tests/data/crud/read/count.yml +0 -74
  613. data/spec/spec_tests/data/crud/read/distinct-collation.yml +0 -18
  614. data/spec/spec_tests/data/crud/read/distinct.yml +0 -32
  615. data/spec/spec_tests/data/crud/read/find-collation.yml +0 -16
  616. data/spec/spec_tests/data/crud/read/find.yml +0 -49
  617. data/spec/spec_tests/data/crud/write/bulkWrite-arrayFilters.yml +0 -45
  618. data/spec/spec_tests/data/crud/write/bulkWrite-collation.yml +0 -102
  619. data/spec/spec_tests/data/crud/write/bulkWrite.yml +0 -405
  620. data/spec/spec_tests/data/crud/write/deleteMany-collation.yml +0 -23
  621. data/spec/spec_tests/data/crud/write/deleteMany.yml +0 -35
  622. data/spec/spec_tests/data/crud/write/deleteOne-collation.yml +0 -23
  623. data/spec/spec_tests/data/crud/write/deleteOne.yml +0 -48
  624. data/spec/spec_tests/data/crud/write/findOneAndDelete-collation.yml +0 -24
  625. data/spec/spec_tests/data/crud/write/findOneAndDelete.yml +0 -53
  626. data/spec/spec_tests/data/crud/write/findOneAndReplace-collation.yml +0 -25
  627. data/spec/spec_tests/data/crud/write/findOneAndReplace-upsert.yml +0 -91
  628. data/spec/spec_tests/data/crud/write/findOneAndReplace-upsert_pre_2.6.yml +0 -88
  629. data/spec/spec_tests/data/crud/write/findOneAndReplace.yml +0 -113
  630. data/spec/spec_tests/data/crud/write/findOneAndUpdate-arrayFilters.yml +0 -69
  631. data/spec/spec_tests/data/crud/write/findOneAndUpdate-collation.yml +0 -28
  632. data/spec/spec_tests/data/crud/write/findOneAndUpdate.yml +0 -163
  633. data/spec/spec_tests/data/crud/write/insertMany.yml +0 -81
  634. data/spec/spec_tests/data/crud/write/insertOne.yml +0 -18
  635. data/spec/spec_tests/data/crud/write/replaceOne-collation.yml +0 -25
  636. data/spec/spec_tests/data/crud/write/replaceOne-pre_2.6.yml +0 -98
  637. data/spec/spec_tests/data/crud/write/replaceOne-upsert.yml +0 -48
  638. data/spec/spec_tests/data/crud/write/replaceOne.yml +0 -102
  639. data/spec/spec_tests/data/crud/write/updateMany-arrayFilters.yml +0 -66
  640. data/spec/spec_tests/data/crud/write/updateMany-collation.yml +0 -29
  641. data/spec/spec_tests/data/crud/write/updateMany-pre_2.6.yml +0 -86
  642. data/spec/spec_tests/data/crud/write/updateMany.yml +0 -87
  643. data/spec/spec_tests/data/crud/write/updateOne-arrayFilters.yml +0 -114
  644. data/spec/spec_tests/data/crud/write/updateOne-collation.yml +0 -26
  645. data/spec/spec_tests/data/crud/write/updateOne-pre_2.6.yml +0 -83
  646. data/spec/spec_tests/data/crud/write/updateOne.yml +0 -84
  647. data/spec/spec_tests/data/crud_unified/aggregate-allowdiskuse.yml +0 -75
  648. data/spec/spec_tests/data/crud_unified/aggregate-let.yml +0 -138
  649. data/spec/spec_tests/data/crud_unified/aggregate-merge-errorResponse.yml +0 -42
  650. data/spec/spec_tests/data/crud_unified/aggregate-merge.yml +0 -185
  651. data/spec/spec_tests/data/crud_unified/aggregate-out-readConcern.yml +0 -171
  652. data/spec/spec_tests/data/crud_unified/aggregate-write-readPreference.yml +0 -161
  653. data/spec/spec_tests/data/crud_unified/aggregate.yml +0 -215
  654. data/spec/spec_tests/data/crud_unified/bulkWrite-arrayFilters-clientError.yml +0 -98
  655. data/spec/spec_tests/data/crud_unified/bulkWrite-arrayFilters.yml +0 -174
  656. data/spec/spec_tests/data/crud_unified/bulkWrite-comment.yml +0 -189
  657. data/spec/spec_tests/data/crud_unified/bulkWrite-delete-hint-clientError.yml +0 -113
  658. data/spec/spec_tests/data/crud_unified/bulkWrite-delete-hint-serverError.yml +0 -142
  659. data/spec/spec_tests/data/crud_unified/bulkWrite-delete-hint.yml +0 -154
  660. data/spec/spec_tests/data/crud_unified/bulkWrite-deleteMany-hint-unacknowledged.yml +0 -98
  661. data/spec/spec_tests/data/crud_unified/bulkWrite-deleteMany-let.yml +0 -86
  662. data/spec/spec_tests/data/crud_unified/bulkWrite-deleteOne-hint-unacknowledged.yml +0 -97
  663. data/spec/spec_tests/data/crud_unified/bulkWrite-deleteOne-let.yml +0 -86
  664. data/spec/spec_tests/data/crud_unified/bulkWrite-errorResponse.yml +0 -50
  665. data/spec/spec_tests/data/crud_unified/bulkWrite-insertOne-dots_and_dollars.yml +0 -138
  666. data/spec/spec_tests/data/crud_unified/bulkWrite-replaceOne-dots_and_dollars.yml +0 -165
  667. data/spec/spec_tests/data/crud_unified/bulkWrite-replaceOne-hint-unacknowledged.yml +0 -103
  668. data/spec/spec_tests/data/crud_unified/bulkWrite-replaceOne-let.yml +0 -93
  669. data/spec/spec_tests/data/crud_unified/bulkWrite-update-hint-clientError.yml +0 -148
  670. data/spec/spec_tests/data/crud_unified/bulkWrite-update-hint-serverError.yml +0 -239
  671. data/spec/spec_tests/data/crud_unified/bulkWrite-update-hint.yml +0 -256
  672. data/spec/spec_tests/data/crud_unified/bulkWrite-update-validation.yml +0 -73
  673. data/spec/spec_tests/data/crud_unified/bulkWrite-updateMany-dots_and_dollars.yml +0 -150
  674. data/spec/spec_tests/data/crud_unified/bulkWrite-updateMany-hint-unacknowledged.yml +0 -104
  675. data/spec/spec_tests/data/crud_unified/bulkWrite-updateMany-let.yml +0 -96
  676. data/spec/spec_tests/data/crud_unified/bulkWrite-updateOne-dots_and_dollars.yml +0 -150
  677. data/spec/spec_tests/data/crud_unified/bulkWrite-updateOne-hint-unacknowledged.yml +0 -103
  678. data/spec/spec_tests/data/crud_unified/bulkWrite-updateOne-let.yml +0 -95
  679. data/spec/spec_tests/data/crud_unified/countDocuments-comment.yml +0 -92
  680. data/spec/spec_tests/data/crud_unified/db-aggregate-write-readPreference.yml +0 -157
  681. data/spec/spec_tests/data/crud_unified/db-aggregate.yml +0 -73
  682. data/spec/spec_tests/data/crud_unified/deleteMany-comment.yml +0 -97
  683. data/spec/spec_tests/data/crud_unified/deleteMany-hint-clientError.yml +0 -87
  684. data/spec/spec_tests/data/crud_unified/deleteMany-hint-serverError.yml +0 -107
  685. data/spec/spec_tests/data/crud_unified/deleteMany-hint-unacknowledged.yml +0 -90
  686. data/spec/spec_tests/data/crud_unified/deleteMany-hint.yml +0 -99
  687. data/spec/spec_tests/data/crud_unified/deleteMany-let.yml +0 -93
  688. data/spec/spec_tests/data/crud_unified/deleteOne-comment.yml +0 -98
  689. data/spec/spec_tests/data/crud_unified/deleteOne-errorResponse.yml +0 -46
  690. data/spec/spec_tests/data/crud_unified/deleteOne-hint-clientError.yml +0 -80
  691. data/spec/spec_tests/data/crud_unified/deleteOne-hint-serverError.yml +0 -100
  692. data/spec/spec_tests/data/crud_unified/deleteOne-hint-unacknowledged.yml +0 -89
  693. data/spec/spec_tests/data/crud_unified/deleteOne-hint.yml +0 -95
  694. data/spec/spec_tests/data/crud_unified/deleteOne-let.yml +0 -91
  695. data/spec/spec_tests/data/crud_unified/distinct-comment.yml +0 -98
  696. data/spec/spec_tests/data/crud_unified/estimatedDocumentCount-comment.yml +0 -95
  697. data/spec/spec_tests/data/crud_unified/estimatedDocumentCount.yml +0 -181
  698. data/spec/spec_tests/data/crud_unified/find-allowdiskuse-clientError.yml +0 -55
  699. data/spec/spec_tests/data/crud_unified/find-allowdiskuse-serverError.yml +0 -68
  700. data/spec/spec_tests/data/crud_unified/find-allowdiskuse.yml +0 -79
  701. data/spec/spec_tests/data/crud_unified/find-comment.yml +0 -166
  702. data/spec/spec_tests/data/crud_unified/find-let.yml +0 -71
  703. data/spec/spec_tests/data/crud_unified/find-test-all-options.yml +0 -377
  704. data/spec/spec_tests/data/crud_unified/find.yml +0 -68
  705. data/spec/spec_tests/data/crud_unified/findOneAndDelete-comment.yml +0 -96
  706. data/spec/spec_tests/data/crud_unified/findOneAndDelete-hint-clientError.yml +0 -91
  707. data/spec/spec_tests/data/crud_unified/findOneAndDelete-hint-serverError.yml +0 -107
  708. data/spec/spec_tests/data/crud_unified/findOneAndDelete-hint-unacknowledged.yml +0 -88
  709. data/spec/spec_tests/data/crud_unified/findOneAndDelete-hint.yml +0 -102
  710. data/spec/spec_tests/data/crud_unified/findOneAndDelete-let.yml +0 -86
  711. data/spec/spec_tests/data/crud_unified/findOneAndReplace-comment.yml +0 -101
  712. data/spec/spec_tests/data/crud_unified/findOneAndReplace-dots_and_dollars.yml +0 -140
  713. data/spec/spec_tests/data/crud_unified/findOneAndReplace-hint-clientError.yml +0 -83
  714. data/spec/spec_tests/data/crud_unified/findOneAndReplace-hint-serverError.yml +0 -99
  715. data/spec/spec_tests/data/crud_unified/findOneAndReplace-hint-unacknowledged.yml +0 -96
  716. data/spec/spec_tests/data/crud_unified/findOneAndReplace-hint.yml +0 -98
  717. data/spec/spec_tests/data/crud_unified/findOneAndReplace-let.yml +0 -94
  718. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-comment.yml +0 -95
  719. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-dots_and_dollars.yml +0 -127
  720. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-errorResponse.yml +0 -69
  721. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-hint-clientError.yml +0 -84
  722. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-hint-serverError.yml +0 -100
  723. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-hint-unacknowledged.yml +0 -92
  724. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-hint.yml +0 -99
  725. data/spec/spec_tests/data/crud_unified/findOneAndUpdate-let.yml +0 -96
  726. data/spec/spec_tests/data/crud_unified/insertMany-comment.yml +0 -93
  727. data/spec/spec_tests/data/crud_unified/insertMany-dots_and_dollars.yml +0 -128
  728. data/spec/spec_tests/data/crud_unified/insertOne-comment.yml +0 -91
  729. data/spec/spec_tests/data/crud_unified/insertOne-dots_and_dollars.yml +0 -238
  730. data/spec/spec_tests/data/crud_unified/insertOne-errorResponse.yml +0 -46
  731. data/spec/spec_tests/data/crud_unified/replaceOne-comment.yml +0 -105
  732. data/spec/spec_tests/data/crud_unified/replaceOne-dots_and_dollars.yml +0 -180
  733. data/spec/spec_tests/data/crud_unified/replaceOne-hint-unacknowledged.yml +0 -95
  734. data/spec/spec_tests/data/crud_unified/replaceOne-hint.yml +0 -108
  735. data/spec/spec_tests/data/crud_unified/replaceOne-let.yml +0 -98
  736. data/spec/spec_tests/data/crud_unified/replaceOne-validation.yml +0 -37
  737. data/spec/spec_tests/data/crud_unified/updateMany-comment.yml +0 -104
  738. data/spec/spec_tests/data/crud_unified/updateMany-dots_and_dollars.yml +0 -138
  739. data/spec/spec_tests/data/crud_unified/updateMany-hint-clientError.yml +0 -91
  740. data/spec/spec_tests/data/crud_unified/updateMany-hint-serverError.yml +0 -115
  741. data/spec/spec_tests/data/crud_unified/updateMany-hint-unacknowledged.yml +0 -96
  742. data/spec/spec_tests/data/crud_unified/updateMany-hint.yml +0 -115
  743. data/spec/spec_tests/data/crud_unified/updateMany-let.yml +0 -107
  744. data/spec/spec_tests/data/crud_unified/updateMany-validation.yml +0 -39
  745. data/spec/spec_tests/data/crud_unified/updateOne-comment.yml +0 -104
  746. data/spec/spec_tests/data/crud_unified/updateOne-dots_and_dollars.yml +0 -138
  747. data/spec/spec_tests/data/crud_unified/updateOne-errorResponse.yml +0 -47
  748. data/spec/spec_tests/data/crud_unified/updateOne-hint-clientError.yml +0 -85
  749. data/spec/spec_tests/data/crud_unified/updateOne-hint-serverError.yml +0 -109
  750. data/spec/spec_tests/data/crud_unified/updateOne-hint-unacknowledged.yml +0 -95
  751. data/spec/spec_tests/data/crud_unified/updateOne-hint.yml +0 -109
  752. data/spec/spec_tests/data/crud_unified/updateOne-let.yml +0 -102
  753. data/spec/spec_tests/data/crud_unified/updateOne-validation.yml +0 -37
  754. data/spec/spec_tests/data/crud_unified/updateWithPipelines.yml +0 -299
  755. data/spec/spec_tests/data/gridfs/delete.yml +0 -123
  756. data/spec/spec_tests/data/gridfs/download.yml +0 -192
  757. data/spec/spec_tests/data/gridfs/download_by_name.yml +0 -113
  758. data/spec/spec_tests/data/gridfs/upload.yml +0 -158
  759. data/spec/spec_tests/data/gridfs_unified/delete.yml +0 -198
  760. data/spec/spec_tests/data/gridfs_unified/download.yml +0 -241
  761. data/spec/spec_tests/data/gridfs_unified/downloadByName.yml +0 -159
  762. data/spec/spec_tests/data/gridfs_unified/upload-disableMD5.yml +0 -92
  763. data/spec/spec_tests/data/gridfs_unified/upload.yml +0 -288
  764. data/spec/spec_tests/data/index_management/createSearchIndex.yml +0 -64
  765. data/spec/spec_tests/data/index_management/createSearchIndexes.yml +0 -86
  766. data/spec/spec_tests/data/index_management/dropSearchIndex.yml +0 -43
  767. data/spec/spec_tests/data/index_management/listSearchIndexes.yml +0 -91
  768. data/spec/spec_tests/data/index_management/updateSearchIndex.yml +0 -46
  769. data/spec/spec_tests/data/load_balancers/event-monitoring.yml +0 -99
  770. data/spec/spec_tests/data/load_balancers/lb-connection-establishment.yml +0 -36
  771. data/spec/spec_tests/data/load_balancers/non-lb-connection-establishment.yml +0 -56
  772. data/spec/spec_tests/data/load_balancers/server-selection.yml +0 -50
  773. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.yml +0 -26
  774. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Incompatible.yml +0 -25
  775. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.yml +0 -33
  776. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/MaxStalenessTooSmall.yml +0 -15
  777. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest.yml +0 -33
  778. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest2.yml +0 -33
  779. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/NoKnownServers.yml +0 -16
  780. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.yml +0 -27
  781. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.yml +0 -36
  782. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Secondary.yml +0 -51
  783. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.yml +0 -26
  784. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.yml +0 -51
  785. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.yml +0 -23
  786. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.yml +0 -26
  787. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Incompatible.yml +0 -25
  788. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.yml +0 -35
  789. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.yml +0 -29
  790. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.yml +0 -25
  791. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.yml +0 -26
  792. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.yml +0 -23
  793. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest.yml +0 -33
  794. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest2.yml +0 -33
  795. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest_tags.yml +0 -36
  796. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.yml +0 -27
  797. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.yml +0 -27
  798. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.yml +0 -26
  799. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.yml +0 -59
  800. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.yml +0 -43
  801. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Secondary_tags.yml +0 -59
  802. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.yml +0 -43
  803. data/spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.yml +0 -23
  804. data/spec/spec_tests/data/max_staleness/Sharded/Incompatible.yml +0 -25
  805. data/spec/spec_tests/data/max_staleness/Sharded/SmallMaxStaleness.yml +0 -28
  806. data/spec/spec_tests/data/max_staleness/Single/Incompatible.yml +0 -18
  807. data/spec/spec_tests/data/max_staleness/Single/SmallMaxStaleness.yml +0 -20
  808. data/spec/spec_tests/data/max_staleness/Unknown/SmallMaxStaleness.yml +0 -15
  809. data/spec/spec_tests/data/read_write_concern/connection-string/read-concern.yml +0 -32
  810. data/spec/spec_tests/data/read_write_concern/connection-string/write-concern.yml +0 -79
  811. data/spec/spec_tests/data/read_write_concern/document/read-concern.yml +0 -37
  812. data/spec/spec_tests/data/read_write_concern/document/write-concern.yml +0 -100
  813. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-2.6.yml +0 -215
  814. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.2.yml +0 -58
  815. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.4.yml +0 -95
  816. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-4.2.yml +0 -36
  817. data/spec/spec_tests/data/retryable_reads/legacy/aggregate-merge.yml +0 -39
  818. data/spec/spec_tests/data/retryable_reads/legacy/aggregate-serverErrors.yml +0 -157
  819. data/spec/spec_tests/data/retryable_reads/legacy/aggregate.yml +0 -87
  820. data/spec/spec_tests/data/retryable_reads/legacy/changeStreams-client.watch-serverErrors.yml +0 -150
  821. data/spec/spec_tests/data/retryable_reads/legacy/changeStreams-client.watch.yml +0 -62
  822. data/spec/spec_tests/data/retryable_reads/legacy/changeStreams-db.coll.watch-serverErrors.yml +0 -150
  823. data/spec/spec_tests/data/retryable_reads/legacy/changeStreams-db.coll.watch.yml +0 -66
  824. data/spec/spec_tests/data/retryable_reads/legacy/changeStreams-db.watch-serverErrors.yml +0 -154
  825. data/spec/spec_tests/data/retryable_reads/legacy/changeStreams-db.watch.yml +0 -62
  826. data/spec/spec_tests/data/retryable_reads/legacy/count-serverErrors.yml +0 -150
  827. data/spec/spec_tests/data/retryable_reads/legacy/count.yml +0 -64
  828. data/spec/spec_tests/data/retryable_reads/legacy/countDocuments-serverErrors.yml +0 -150
  829. data/spec/spec_tests/data/retryable_reads/legacy/countDocuments.yml +0 -64
  830. data/spec/spec_tests/data/retryable_reads/legacy/distinct-serverErrors.yml +0 -156
  831. data/spec/spec_tests/data/retryable_reads/legacy/distinct.yml +0 -71
  832. data/spec/spec_tests/data/retryable_reads/legacy/estimatedDocumentCount-serverErrors.yml +0 -148
  833. data/spec/spec_tests/data/retryable_reads/legacy/estimatedDocumentCount.yml +0 -62
  834. data/spec/spec_tests/data/retryable_reads/legacy/find-serverErrors.yml +0 -160
  835. data/spec/spec_tests/data/retryable_reads/legacy/find.yml +0 -86
  836. data/spec/spec_tests/data/retryable_reads/legacy/findOne-serverErrors.yml +0 -154
  837. data/spec/spec_tests/data/retryable_reads/legacy/findOne.yml +0 -68
  838. data/spec/spec_tests/data/retryable_reads/legacy/gridfs-download-serverErrors.yml +0 -173
  839. data/spec/spec_tests/data/retryable_reads/legacy/gridfs-download.yml +0 -79
  840. data/spec/spec_tests/data/retryable_reads/legacy/gridfs-downloadByName-serverErrors.yml +0 -174
  841. data/spec/spec_tests/data/retryable_reads/legacy/gridfs-downloadByName.yml +0 -79
  842. data/spec/spec_tests/data/retryable_reads/legacy/listCollectionNames-serverErrors.yml +0 -143
  843. data/spec/spec_tests/data/retryable_reads/legacy/listCollectionNames.yml +0 -59
  844. data/spec/spec_tests/data/retryable_reads/legacy/listCollectionObjects-serverErrors.yml +0 -144
  845. data/spec/spec_tests/data/retryable_reads/legacy/listCollectionObjects.yml +0 -59
  846. data/spec/spec_tests/data/retryable_reads/legacy/listCollections-serverErrors.yml +0 -143
  847. data/spec/spec_tests/data/retryable_reads/legacy/listCollections.yml +0 -59
  848. data/spec/spec_tests/data/retryable_reads/legacy/listDatabaseNames-serverErrors.yml +0 -143
  849. data/spec/spec_tests/data/retryable_reads/legacy/listDatabaseNames.yml +0 -59
  850. data/spec/spec_tests/data/retryable_reads/legacy/listDatabaseObjects-serverErrors.yml +0 -144
  851. data/spec/spec_tests/data/retryable_reads/legacy/listDatabaseObjects.yml +0 -59
  852. data/spec/spec_tests/data/retryable_reads/legacy/listDatabases-serverErrors.yml +0 -144
  853. data/spec/spec_tests/data/retryable_reads/legacy/listDatabases.yml +0 -59
  854. data/spec/spec_tests/data/retryable_reads/legacy/listIndexNames-serverErrors.yml +0 -144
  855. data/spec/spec_tests/data/retryable_reads/legacy/listIndexNames.yml +0 -60
  856. data/spec/spec_tests/data/retryable_reads/legacy/listIndexes-serverErrors.yml +0 -145
  857. data/spec/spec_tests/data/retryable_reads/legacy/listIndexes.yml +0 -60
  858. data/spec/spec_tests/data/retryable_reads/legacy/mapReduce.yml +0 -62
  859. data/spec/spec_tests/data/retryable_reads/unified/handshakeError.yml +0 -1342
  860. data/spec/spec_tests/data/retryable_writes/legacy/bulkWrite-errorLabels.yml +0 -77
  861. data/spec/spec_tests/data/retryable_writes/legacy/bulkWrite-serverErrors.yml +0 -130
  862. data/spec/spec_tests/data/retryable_writes/legacy/bulkWrite.yml +0 -402
  863. data/spec/spec_tests/data/retryable_writes/legacy/deleteMany.yml +0 -22
  864. data/spec/spec_tests/data/retryable_writes/legacy/deleteOne-errorLabels.yml +0 -48
  865. data/spec/spec_tests/data/retryable_writes/legacy/deleteOne-serverErrors.yml +0 -73
  866. data/spec/spec_tests/data/retryable_writes/legacy/deleteOne.yml +0 -57
  867. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndDelete-errorLabels.yml +0 -49
  868. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndDelete-serverErrors.yml +0 -74
  869. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndDelete.yml +0 -58
  870. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndReplace-errorLabels.yml +0 -52
  871. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndReplace-serverErrors.yml +0 -80
  872. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndReplace.yml +0 -63
  873. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndUpdate-errorLabels.yml +0 -52
  874. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndUpdate-serverErrors.yml +0 -79
  875. data/spec/spec_tests/data/retryable_writes/legacy/findOneAndUpdate.yml +0 -62
  876. data/spec/spec_tests/data/retryable_writes/legacy/insertMany-errorLabels.yml +0 -54
  877. data/spec/spec_tests/data/retryable_writes/legacy/insertMany-serverErrors.yml +0 -84
  878. data/spec/spec_tests/data/retryable_writes/legacy/insertMany.yml +0 -74
  879. data/spec/spec_tests/data/retryable_writes/legacy/insertOne-errorLabels.yml +0 -44
  880. data/spec/spec_tests/data/retryable_writes/legacy/insertOne-serverErrors.yml +0 -527
  881. data/spec/spec_tests/data/retryable_writes/legacy/insertOne.yml +0 -61
  882. data/spec/spec_tests/data/retryable_writes/legacy/replaceOne-errorLabels.yml +0 -53
  883. data/spec/spec_tests/data/retryable_writes/legacy/replaceOne-serverErrors.yml +0 -82
  884. data/spec/spec_tests/data/retryable_writes/legacy/replaceOne.yml +0 -66
  885. data/spec/spec_tests/data/retryable_writes/legacy/updateMany.yml +0 -27
  886. data/spec/spec_tests/data/retryable_writes/legacy/updateOne-errorLabels.yml +0 -53
  887. data/spec/spec_tests/data/retryable_writes/legacy/updateOne-serverErrors.yml +0 -82
  888. data/spec/spec_tests/data/retryable_writes/legacy/updateOne.yml +0 -129
  889. data/spec/spec_tests/data/retryable_writes/unified/bulkWrite-serverErrors.yml +0 -93
  890. data/spec/spec_tests/data/retryable_writes/unified/handshakeError.yml +0 -785
  891. data/spec/spec_tests/data/retryable_writes/unified/insertOne-noWritesPerformedError.yml +0 -54
  892. data/spec/spec_tests/data/retryable_writes/unified/insertOne-serverErrors.yml +0 -75
  893. data/spec/spec_tests/data/run_command_unified/runCommand.yml +0 -319
  894. data/spec/spec_tests/data/sdam/errors/error_handling_handshake.yml +0 -55
  895. data/spec/spec_tests/data/sdam/errors/non-stale-network-error.yml +0 -47
  896. data/spec/spec_tests/data/sdam/errors/non-stale-network-timeout-error.yml +0 -38
  897. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedAtShutdown.yml +0 -61
  898. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedDueToReplStateChange.yml +0 -61
  899. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-LegacyNotPrimary.yml +0 -61
  900. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotPrimaryNoSecondaryOk.yml +0 -61
  901. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotPrimaryOrSecondary.yml +0 -61
  902. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotWritablePrimary.yml +0 -61
  903. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-PrimarySteppedDown.yml +0 -61
  904. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-ShutdownInProgress.yml +0 -61
  905. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedAtShutdown.yml +0 -52
  906. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedDueToReplStateChange.yml +0 -52
  907. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-LegacyNotPrimary.yml +0 -52
  908. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotPrimaryNoSecondaryOk.yml +0 -52
  909. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotPrimaryOrSecondary.yml +0 -52
  910. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotWritablePrimary.yml +0 -52
  911. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-PrimarySteppedDown.yml +0 -52
  912. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-ShutdownInProgress.yml +0 -52
  913. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedAtShutdown.yml +0 -61
  914. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedDueToReplStateChange.yml +0 -61
  915. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-LegacyNotPrimary.yml +0 -61
  916. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotPrimaryNoSecondaryOk.yml +0 -61
  917. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotPrimaryOrSecondary.yml +0 -61
  918. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotWritablePrimary.yml +0 -61
  919. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-PrimarySteppedDown.yml +0 -61
  920. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-ShutdownInProgress.yml +0 -61
  921. data/spec/spec_tests/data/sdam/errors/post-42-InterruptedAtShutdown.yml +0 -47
  922. data/spec/spec_tests/data/sdam/errors/post-42-InterruptedDueToReplStateChange.yml +0 -47
  923. data/spec/spec_tests/data/sdam/errors/post-42-LegacyNotPrimary.yml +0 -47
  924. data/spec/spec_tests/data/sdam/errors/post-42-NotPrimaryNoSecondaryOk.yml +0 -47
  925. data/spec/spec_tests/data/sdam/errors/post-42-NotPrimaryOrSecondary.yml +0 -47
  926. data/spec/spec_tests/data/sdam/errors/post-42-NotWritablePrimary.yml +0 -47
  927. data/spec/spec_tests/data/sdam/errors/post-42-PrimarySteppedDown.yml +0 -47
  928. data/spec/spec_tests/data/sdam/errors/post-42-ShutdownInProgress.yml +0 -47
  929. data/spec/spec_tests/data/sdam/errors/pre-42-InterruptedAtShutdown.yml +0 -47
  930. data/spec/spec_tests/data/sdam/errors/pre-42-InterruptedDueToReplStateChange.yml +0 -47
  931. data/spec/spec_tests/data/sdam/errors/pre-42-LegacyNotPrimary.yml +0 -47
  932. data/spec/spec_tests/data/sdam/errors/pre-42-NotPrimaryNoSecondaryOk.yml +0 -47
  933. data/spec/spec_tests/data/sdam/errors/pre-42-NotPrimaryOrSecondary.yml +0 -47
  934. data/spec/spec_tests/data/sdam/errors/pre-42-NotWritablePrimary.yml +0 -47
  935. data/spec/spec_tests/data/sdam/errors/pre-42-PrimarySteppedDown.yml +0 -47
  936. data/spec/spec_tests/data/sdam/errors/pre-42-ShutdownInProgress.yml +0 -47
  937. data/spec/spec_tests/data/sdam/errors/prefer-error-code.yml +0 -54
  938. data/spec/spec_tests/data/sdam/errors/stale-generation-InterruptedAtShutdown.yml +0 -91
  939. data/spec/spec_tests/data/sdam/errors/stale-generation-InterruptedDueToReplStateChange.yml +0 -91
  940. data/spec/spec_tests/data/sdam/errors/stale-generation-NotPrimaryNoSecondaryOk.yml +0 -91
  941. data/spec/spec_tests/data/sdam/errors/stale-generation-NotPrimaryOrSecondary.yml +0 -91
  942. data/spec/spec_tests/data/sdam/errors/stale-generation-NotWritablePrimary.yml +0 -91
  943. data/spec/spec_tests/data/sdam/errors/stale-generation-PrimarySteppedDown.yml +0 -91
  944. data/spec/spec_tests/data/sdam/errors/stale-generation-ShutdownInProgress.yml +0 -91
  945. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedAtShutdown.yml +0 -91
  946. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedDueToReplStateChange.yml +0 -91
  947. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-LegacyNotPrimary.yml +0 -91
  948. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotPrimaryNoSecondaryOk.yml +0 -91
  949. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotPrimaryOrSecondary.yml +0 -91
  950. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotWritablePrimary.yml +0 -91
  951. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-PrimarySteppedDown.yml +0 -91
  952. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-ShutdownInProgress.yml +0 -91
  953. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-network.yml +0 -82
  954. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-timeout.yml +0 -82
  955. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedAtShutdown.yml +0 -91
  956. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedDueToReplStateChange.yml +0 -91
  957. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-LegacyNotPrimary.yml +0 -91
  958. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotPrimaryNoSecondaryOk.yml +0 -91
  959. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotPrimaryOrSecondary.yml +0 -91
  960. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotWritablePrimary.yml +0 -91
  961. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-PrimarySteppedDown.yml +0 -91
  962. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-ShutdownInProgress.yml +0 -91
  963. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-network.yml +0 -82
  964. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-timeout.yml +0 -82
  965. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedAtShutdown.yml +0 -65
  966. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedDueToReplStateChange.yml +0 -65
  967. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-LegacyNotPrimary.yml +0 -65
  968. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotPrimaryNoSecondaryOk.yml +0 -65
  969. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotPrimaryOrSecondary.yml +0 -65
  970. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotWritablePrimary.yml +0 -65
  971. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-PrimarySteppedDown.yml +0 -65
  972. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-ShutdownInProgress.yml +0 -65
  973. data/spec/spec_tests/data/sdam/errors/write_errors_ignored.yml +0 -42
  974. data/spec/spec_tests/data/sdam/load-balanced/discover_load_balancer.yml +0 -25
  975. data/spec/spec_tests/data/sdam/rs/compatible.yml +0 -45
  976. data/spec/spec_tests/data/sdam/rs/compatible_unknown.yml +0 -34
  977. data/spec/spec_tests/data/sdam/rs/discover_arbiters.yml +0 -44
  978. data/spec/spec_tests/data/sdam/rs/discover_arbiters_replicaset.yml +0 -44
  979. data/spec/spec_tests/data/sdam/rs/discover_ghost.yml +0 -36
  980. data/spec/spec_tests/data/sdam/rs/discover_ghost_replicaset.yml +0 -42
  981. data/spec/spec_tests/data/sdam/rs/discover_hidden.yml +0 -51
  982. data/spec/spec_tests/data/sdam/rs/discover_hidden_replicaset.yml +0 -51
  983. data/spec/spec_tests/data/sdam/rs/discover_passives.yml +0 -83
  984. data/spec/spec_tests/data/sdam/rs/discover_passives_replicaset.yml +0 -83
  985. data/spec/spec_tests/data/sdam/rs/discover_primary.yml +0 -43
  986. data/spec/spec_tests/data/sdam/rs/discover_primary_replicaset.yml +0 -43
  987. data/spec/spec_tests/data/sdam/rs/discover_rsother.yml +0 -50
  988. data/spec/spec_tests/data/sdam/rs/discover_rsother_replicaset.yml +0 -68
  989. data/spec/spec_tests/data/sdam/rs/discover_secondary.yml +0 -44
  990. data/spec/spec_tests/data/sdam/rs/discover_secondary_replicaset.yml +0 -44
  991. data/spec/spec_tests/data/sdam/rs/discovery.yml +0 -207
  992. data/spec/spec_tests/data/sdam/rs/electionId_precedence_setVersion.yml +0 -62
  993. data/spec/spec_tests/data/sdam/rs/equal_electionids.yml +0 -57
  994. data/spec/spec_tests/data/sdam/rs/hosts_differ_from_seeds.yml +0 -37
  995. data/spec/spec_tests/data/sdam/rs/incompatible_arbiter.yml +0 -36
  996. data/spec/spec_tests/data/sdam/rs/incompatible_ghost.yml +0 -34
  997. data/spec/spec_tests/data/sdam/rs/incompatible_other.yml +0 -36
  998. data/spec/spec_tests/data/sdam/rs/ls_timeout.yml +0 -249
  999. data/spec/spec_tests/data/sdam/rs/member_reconfig.yml +0 -74
  1000. data/spec/spec_tests/data/sdam/rs/member_standalone.yml +0 -66
  1001. data/spec/spec_tests/data/sdam/rs/new_primary.yml +0 -80
  1002. data/spec/spec_tests/data/sdam/rs/new_primary_new_electionid.yml +0 -119
  1003. data/spec/spec_tests/data/sdam/rs/new_primary_new_setversion.yml +0 -119
  1004. data/spec/spec_tests/data/sdam/rs/new_primary_wrong_set_name.yml +0 -77
  1005. data/spec/spec_tests/data/sdam/rs/non_rs_member.yml +0 -33
  1006. data/spec/spec_tests/data/sdam/rs/normalize_case.yml +0 -52
  1007. data/spec/spec_tests/data/sdam/rs/normalize_case_me.yml +0 -102
  1008. data/spec/spec_tests/data/sdam/rs/null_election_id-pre-6.0.yml +0 -175
  1009. data/spec/spec_tests/data/sdam/rs/null_election_id.yml +0 -177
  1010. data/spec/spec_tests/data/sdam/rs/primary_becomes_ghost.yml +0 -65
  1011. data/spec/spec_tests/data/sdam/rs/primary_becomes_mongos.yml +0 -58
  1012. data/spec/spec_tests/data/sdam/rs/primary_becomes_standalone.yml +0 -55
  1013. data/spec/spec_tests/data/sdam/rs/primary_changes_set_name.yml +0 -63
  1014. data/spec/spec_tests/data/sdam/rs/primary_disconnect.yml +0 -59
  1015. data/spec/spec_tests/data/sdam/rs/primary_disconnect_electionid.yml +0 -189
  1016. data/spec/spec_tests/data/sdam/rs/primary_disconnect_setversion.yml +0 -189
  1017. data/spec/spec_tests/data/sdam/rs/primary_hint_from_secondary_with_mismatched_me.yml +0 -64
  1018. data/spec/spec_tests/data/sdam/rs/primary_mismatched_me.yml +0 -27
  1019. data/spec/spec_tests/data/sdam/rs/primary_mismatched_me_not_removed.yml +0 -75
  1020. data/spec/spec_tests/data/sdam/rs/primary_reports_new_member.yml +0 -175
  1021. data/spec/spec_tests/data/sdam/rs/primary_to_no_primary_mismatched_me.yml +0 -81
  1022. data/spec/spec_tests/data/sdam/rs/primary_wrong_set_name.yml +0 -30
  1023. data/spec/spec_tests/data/sdam/rs/repeated.yml +0 -105
  1024. data/spec/spec_tests/data/sdam/rs/replicaset_rsnp.yml +0 -21
  1025. data/spec/spec_tests/data/sdam/rs/response_from_removed.yml +0 -69
  1026. data/spec/spec_tests/data/sdam/rs/ruby_primary_address_change.yml +0 -31
  1027. data/spec/spec_tests/data/sdam/rs/ruby_secondary_wrong_set_name_with_primary_second.yml +0 -73
  1028. data/spec/spec_tests/data/sdam/rs/sec_not_auth.yml +0 -55
  1029. data/spec/spec_tests/data/sdam/rs/secondary_ignore_ok_0-pre-6.0.yml +0 -87
  1030. data/spec/spec_tests/data/sdam/rs/secondary_ignore_ok_0.yml +0 -87
  1031. data/spec/spec_tests/data/sdam/rs/secondary_mismatched_me.yml +0 -28
  1032. data/spec/spec_tests/data/sdam/rs/secondary_wrong_set_name.yml +0 -31
  1033. data/spec/spec_tests/data/sdam/rs/secondary_wrong_set_name_with_primary.yml +0 -75
  1034. data/spec/spec_tests/data/sdam/rs/set_version_can_rollback.yml +0 -101
  1035. data/spec/spec_tests/data/sdam/rs/setversion_equal_max_without_electionid.yml +0 -78
  1036. data/spec/spec_tests/data/sdam/rs/setversion_greaterthan_max_without_electionid.yml +0 -79
  1037. data/spec/spec_tests/data/sdam/rs/setversion_without_electionid-pre-6.0.yml +0 -79
  1038. data/spec/spec_tests/data/sdam/rs/setversion_without_electionid.yml +0 -78
  1039. data/spec/spec_tests/data/sdam/rs/stepdown_change_set_name.yml +0 -65
  1040. data/spec/spec_tests/data/sdam/rs/too_new.yml +0 -45
  1041. data/spec/spec_tests/data/sdam/rs/too_old.yml +0 -41
  1042. data/spec/spec_tests/data/sdam/rs/topology_version_equal.yml +0 -68
  1043. data/spec/spec_tests/data/sdam/rs/topology_version_greater.yml +0 -194
  1044. data/spec/spec_tests/data/sdam/rs/topology_version_less.yml +0 -64
  1045. data/spec/spec_tests/data/sdam/rs/unexpected_mongos.yml +0 -29
  1046. data/spec/spec_tests/data/sdam/rs/use_setversion_without_electionid-pre-6.0.yml +0 -117
  1047. data/spec/spec_tests/data/sdam/rs/use_setversion_without_electionid.yml +0 -119
  1048. data/spec/spec_tests/data/sdam/rs/wrong_set_name.yml +0 -38
  1049. data/spec/spec_tests/data/sdam/sharded/compatible.yml +0 -40
  1050. data/spec/spec_tests/data/sdam/sharded/discover_single_mongos.yml +0 -24
  1051. data/spec/spec_tests/data/sdam/sharded/ls_timeout_mongos.yml +0 -101
  1052. data/spec/spec_tests/data/sdam/sharded/mongos_disconnect.yml +0 -113
  1053. data/spec/spec_tests/data/sdam/sharded/multiple_mongoses.yml +0 -52
  1054. data/spec/spec_tests/data/sdam/sharded/non_mongos_removed.yml +0 -47
  1055. data/spec/spec_tests/data/sdam/sharded/normalize_uri_case.yml +0 -32
  1056. data/spec/spec_tests/data/sdam/sharded/ruby_primary_different_address.yml +0 -21
  1057. data/spec/spec_tests/data/sdam/sharded/ruby_primary_mismatched_me.yml +0 -22
  1058. data/spec/spec_tests/data/sdam/sharded/too_new.yml +0 -38
  1059. data/spec/spec_tests/data/sdam/sharded/too_old.yml +0 -38
  1060. data/spec/spec_tests/data/sdam/single/compatible.yml +0 -27
  1061. data/spec/spec_tests/data/sdam/single/direct_connection_external_ip.yml +0 -37
  1062. data/spec/spec_tests/data/sdam/single/direct_connection_mongos.yml +0 -36
  1063. data/spec/spec_tests/data/sdam/single/direct_connection_replicaset.yml +0 -23
  1064. data/spec/spec_tests/data/sdam/single/direct_connection_rsarbiter.yml +0 -38
  1065. data/spec/spec_tests/data/sdam/single/direct_connection_rsprimary.yml +0 -37
  1066. data/spec/spec_tests/data/sdam/single/direct_connection_rssecondary.yml +0 -38
  1067. data/spec/spec_tests/data/sdam/single/direct_connection_standalone.yml +0 -35
  1068. data/spec/spec_tests/data/sdam/single/direct_connection_unavailable_seed.yml +0 -28
  1069. data/spec/spec_tests/data/sdam/single/direct_connection_wrong_set_name.yml +0 -40
  1070. data/spec/spec_tests/data/sdam/single/discover_standalone.yml +0 -35
  1071. data/spec/spec_tests/data/sdam/single/discover_unavailable_seed.yml +0 -28
  1072. data/spec/spec_tests/data/sdam/single/ls_timeout_standalone.yml +0 -36
  1073. data/spec/spec_tests/data/sdam/single/not_ok_response.yml +0 -44
  1074. data/spec/spec_tests/data/sdam/single/ruby_primary_different_address.yml +0 -24
  1075. data/spec/spec_tests/data/sdam/single/ruby_primary_mismatched_me.yml +0 -25
  1076. data/spec/spec_tests/data/sdam/single/standalone_removed.yml +0 -35
  1077. data/spec/spec_tests/data/sdam/single/standalone_using_legacy_hello.yml +0 -34
  1078. data/spec/spec_tests/data/sdam/single/too_new.yml +0 -27
  1079. data/spec/spec_tests/data/sdam/single/too_old.yml +0 -25
  1080. data/spec/spec_tests/data/sdam/single/too_old_then_upgraded.yml +0 -48
  1081. data/spec/spec_tests/data/sdam_monitoring/discovered_standalone.yml +0 -70
  1082. data/spec/spec_tests/data/sdam_monitoring/load_balancer.yml +0 -65
  1083. data/spec/spec_tests/data/sdam_monitoring/replica_set_other_chain.yml +0 -222
  1084. data/spec/spec_tests/data/sdam_monitoring/replica_set_other_change.yml +0 -225
  1085. data/spec/spec_tests/data/sdam_monitoring/replica_set_primary_address_change.yml +0 -251
  1086. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_me_mismatch.yml +0 -111
  1087. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_no_primary.yml +0 -112
  1088. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_primary.yml +0 -111
  1089. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_primary_and_secondary.yml +0 -198
  1090. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_primary_removal.yml +0 -175
  1091. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_removal.yml +0 -111
  1092. data/spec/spec_tests/data/sdam_monitoring/replica_set_with_second_seed_removal.yml +0 -106
  1093. data/spec/spec_tests/data/sdam_monitoring/required_replica_set.yml +0 -108
  1094. data/spec/spec_tests/data/sdam_monitoring/standalone.yml +0 -70
  1095. data/spec/spec_tests/data/sdam_monitoring/standalone_repeated.yml +0 -86
  1096. data/spec/spec_tests/data/sdam_monitoring/standalone_suppress_equal_description_changes.yml +0 -73
  1097. data/spec/spec_tests/data/sdam_monitoring/standalone_to_rs_with_me_mismatch.yml +0 -90
  1098. data/spec/spec_tests/data/sdam_unified/auth-error.yml +0 -130
  1099. data/spec/spec_tests/data/sdam_unified/auth-misc-command-error.yml +0 -132
  1100. data/spec/spec_tests/data/sdam_unified/auth-network-error.yml +0 -132
  1101. data/spec/spec_tests/data/sdam_unified/auth-network-timeout-error.yml +0 -138
  1102. data/spec/spec_tests/data/sdam_unified/auth-shutdown-error.yml +0 -133
  1103. data/spec/spec_tests/data/sdam_unified/cancel-server-check.yml +0 -143
  1104. data/spec/spec_tests/data/sdam_unified/connectTimeoutMS.yml +0 -130
  1105. data/spec/spec_tests/data/sdam_unified/find-network-error.yml +0 -135
  1106. data/spec/spec_tests/data/sdam_unified/find-network-timeout-error.yml +0 -119
  1107. data/spec/spec_tests/data/sdam_unified/find-shutdown-error.yml +0 -163
  1108. data/spec/spec_tests/data/sdam_unified/hello-command-error.yml +0 -233
  1109. data/spec/spec_tests/data/sdam_unified/hello-network-error.yml +0 -228
  1110. data/spec/spec_tests/data/sdam_unified/hello-timeout.yml +0 -318
  1111. data/spec/spec_tests/data/sdam_unified/insert-network-error.yml +0 -137
  1112. data/spec/spec_tests/data/sdam_unified/insert-shutdown-error.yml +0 -162
  1113. data/spec/spec_tests/data/sdam_unified/interruptInUse-pool-clear.yml +0 -340
  1114. data/spec/spec_tests/data/sdam_unified/minPoolSize-error.yml +0 -125
  1115. data/spec/spec_tests/data/sdam_unified/pool-cleared-error.yml +0 -239
  1116. data/spec/spec_tests/data/sdam_unified/rediscover-quickly-after-step-down.yml +0 -144
  1117. data/spec/spec_tests/data/seed_list_discovery/load-balanced/loadBalanced-directConnection.yml +0 -14
  1118. data/spec/spec_tests/data/seed_list_discovery/load-balanced/loadBalanced-no-results.yml +0 -5
  1119. data/spec/spec_tests/data/seed_list_discovery/load-balanced/loadBalanced-replicaSet-errors.yml +0 -6
  1120. data/spec/spec_tests/data/seed_list_discovery/load-balanced/loadBalanced-true-multiple-hosts.yml +0 -5
  1121. data/spec/spec_tests/data/seed_list_discovery/load-balanced/loadBalanced-true-txt.yml +0 -11
  1122. data/spec/spec_tests/data/seed_list_discovery/load-balanced/srvMaxHosts-conflicts_with_loadBalanced-true-txt.yml +0 -5
  1123. data/spec/spec_tests/data/seed_list_discovery/load-balanced/srvMaxHosts-conflicts_with_loadBalanced-true.yml +0 -5
  1124. data/spec/spec_tests/data/seed_list_discovery/load-balanced/srvMaxHosts-zero-txt.yml +0 -11
  1125. data/spec/spec_tests/data/seed_list_discovery/load-balanced/srvMaxHosts-zero.yml +0 -11
  1126. data/spec/spec_tests/data/seed_list_discovery/replica-set/direct-connection-false.yml +0 -10
  1127. data/spec/spec_tests/data/seed_list_discovery/replica-set/direct-connection-true.yml +0 -5
  1128. data/spec/spec_tests/data/seed_list_discovery/replica-set/encoded-userinfo-and-db.yml +0 -15
  1129. data/spec/spec_tests/data/seed_list_discovery/replica-set/loadBalanced-false-txt.yml +0 -10
  1130. data/spec/spec_tests/data/seed_list_discovery/replica-set/longer-parent-in-return.yml +0 -11
  1131. data/spec/spec_tests/data/seed_list_discovery/replica-set/misformatted-option.yml +0 -5
  1132. data/spec/spec_tests/data/seed_list_discovery/replica-set/no-results.yml +0 -5
  1133. data/spec/spec_tests/data/seed_list_discovery/replica-set/not-enough-parts.yml +0 -5
  1134. data/spec/spec_tests/data/seed_list_discovery/replica-set/one-result-default-port.yml +0 -10
  1135. data/spec/spec_tests/data/seed_list_discovery/replica-set/one-txt-record-multiple-strings.yml +0 -10
  1136. data/spec/spec_tests/data/seed_list_discovery/replica-set/one-txt-record.yml +0 -11
  1137. data/spec/spec_tests/data/seed_list_discovery/replica-set/parent-part-mismatch1.yml +0 -5
  1138. data/spec/spec_tests/data/seed_list_discovery/replica-set/parent-part-mismatch2.yml +0 -5
  1139. data/spec/spec_tests/data/seed_list_discovery/replica-set/parent-part-mismatch3.yml +0 -5
  1140. data/spec/spec_tests/data/seed_list_discovery/replica-set/parent-part-mismatch4.yml +0 -5
  1141. data/spec/spec_tests/data/seed_list_discovery/replica-set/parent-part-mismatch5.yml +0 -5
  1142. data/spec/spec_tests/data/seed_list_discovery/replica-set/returned-parent-too-short.yml +0 -5
  1143. data/spec/spec_tests/data/seed_list_discovery/replica-set/returned-parent-wrong.yml +0 -5
  1144. data/spec/spec_tests/data/seed_list_discovery/replica-set/srv-service-name.yml +0 -11
  1145. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-conflicts_with_replicaSet-txt.yml +0 -5
  1146. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-conflicts_with_replicaSet.yml +0 -5
  1147. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-equal_to_srv_records.yml +0 -16
  1148. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-greater_than_srv_records.yml +0 -15
  1149. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-less_than_srv_records.yml +0 -15
  1150. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-zero-txt.yml +0 -15
  1151. data/spec/spec_tests/data/seed_list_discovery/replica-set/srvMaxHosts-zero.yml +0 -15
  1152. data/spec/spec_tests/data/seed_list_discovery/replica-set/two-results-default-port.yml +0 -11
  1153. data/spec/spec_tests/data/seed_list_discovery/replica-set/two-results-nonstandard-port.yml +0 -11
  1154. data/spec/spec_tests/data/seed_list_discovery/replica-set/two-txt-records.yml +0 -5
  1155. data/spec/spec_tests/data/seed_list_discovery/replica-set/txt-record-not-allowed-option.yml +0 -5
  1156. data/spec/spec_tests/data/seed_list_discovery/replica-set/txt-record-with-overridden-ssl-option.yml +0 -11
  1157. data/spec/spec_tests/data/seed_list_discovery/replica-set/txt-record-with-overridden-uri-option.yml +0 -11
  1158. data/spec/spec_tests/data/seed_list_discovery/replica-set/txt-record-with-unallowed-option.yml +0 -5
  1159. data/spec/spec_tests/data/seed_list_discovery/replica-set/uri-with-admin-database.yml +0 -13
  1160. data/spec/spec_tests/data/seed_list_discovery/replica-set/uri-with-auth.yml +0 -12
  1161. data/spec/spec_tests/data/seed_list_discovery/replica-set/uri-with-port.yml +0 -5
  1162. data/spec/spec_tests/data/seed_list_discovery/replica-set/uri-with-two-hosts.yml +0 -5
  1163. data/spec/spec_tests/data/seed_list_discovery/sharded/srvMaxHosts-equal_to_srv_records.yml +0 -13
  1164. data/spec/spec_tests/data/seed_list_discovery/sharded/srvMaxHosts-greater_than_srv_records.yml +0 -12
  1165. data/spec/spec_tests/data/seed_list_discovery/sharded/srvMaxHosts-less_than_srv_records.yml +0 -10
  1166. data/spec/spec_tests/data/seed_list_discovery/sharded/srvMaxHosts-zero.yml +0 -11
  1167. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest.yml +0 -25
  1168. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.yml +0 -26
  1169. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.yml +0 -20
  1170. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.yml +0 -15
  1171. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.yml +0 -15
  1172. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Primary.yml +0 -18
  1173. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.yml +0 -25
  1174. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.yml +0 -20
  1175. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary.yml +0 -25
  1176. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.yml +0 -25
  1177. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.yml +0 -20
  1178. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml +0 -31
  1179. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.yml +0 -31
  1180. data/spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.yml +0 -20
  1181. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest.yml +0 -32
  1182. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.yml +0 -33
  1183. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.yml +0 -25
  1184. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Primary.yml +0 -26
  1185. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.yml +0 -28
  1186. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.yml +0 -28
  1187. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Secondary.yml +0 -30
  1188. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.yml +0 -30
  1189. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.yml +0 -28
  1190. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.yml +0 -28
  1191. data/spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.yml +0 -25
  1192. data/spec/spec_tests/data/server_selection/Sharded/read/Nearest.yml +0 -21
  1193. data/spec/spec_tests/data/server_selection/Sharded/read/Primary.yml +0 -19
  1194. data/spec/spec_tests/data/server_selection/Sharded/read/PrimaryPreferred.yml +0 -21
  1195. data/spec/spec_tests/data/server_selection/Sharded/read/Secondary.yml +0 -21
  1196. data/spec/spec_tests/data/server_selection/Sharded/read/SecondaryPreferred.yml +0 -21
  1197. data/spec/spec_tests/data/server_selection/Single/read/SecondaryPreferred.yml +0 -18
  1198. data/spec/spec_tests/data/server_selection/Unknown/read/SecondaryPreferred.yml +0 -10
  1199. data/spec/spec_tests/data/server_selection/Unknown/read/ghost.yml +0 -11
  1200. data/spec/spec_tests/data/server_selection/Unknown/write/ghost.yml +0 -11
  1201. data/spec/spec_tests/data/server_selection_rtt/first_value.yml +0 -4
  1202. data/spec/spec_tests/data/server_selection_rtt/first_value_zero.yml +0 -4
  1203. data/spec/spec_tests/data/server_selection_rtt/value_test_1.yml +0 -4
  1204. data/spec/spec_tests/data/server_selection_rtt/value_test_2.yml +0 -4
  1205. data/spec/spec_tests/data/server_selection_rtt/value_test_3.yml +0 -4
  1206. data/spec/spec_tests/data/server_selection_rtt/value_test_4.yml +0 -4
  1207. data/spec/spec_tests/data/server_selection_rtt/value_test_5.yml +0 -4
  1208. data/spec/spec_tests/data/sessions_unified/driver-sessions-dirty-session-errors.yml +0 -351
  1209. data/spec/spec_tests/data/sessions_unified/driver-sessions-server-support.yml +0 -123
  1210. data/spec/spec_tests/data/sessions_unified/implicit-sessions-default-causal-consistency.yml +0 -119
  1211. data/spec/spec_tests/data/sessions_unified/snapshot-sessions-not-supported-client-error.yml +0 -75
  1212. data/spec/spec_tests/data/sessions_unified/snapshot-sessions-not-supported-server-error.yml +0 -102
  1213. data/spec/spec_tests/data/sessions_unified/snapshot-sessions-unsupported-ops.yml +0 -258
  1214. data/spec/spec_tests/data/sessions_unified/snapshot-sessions.yml +0 -482
  1215. data/spec/spec_tests/data/transactions/abort.yml +0 -413
  1216. data/spec/spec_tests/data/transactions/bulk.yml +0 -267
  1217. data/spec/spec_tests/data/transactions/causal-consistency.yml +0 -175
  1218. data/spec/spec_tests/data/transactions/commit.yml +0 -603
  1219. data/spec/spec_tests/data/transactions/count.yml +0 -67
  1220. data/spec/spec_tests/data/transactions/create-collection.yml +0 -131
  1221. data/spec/spec_tests/data/transactions/create-index.yml +0 -152
  1222. data/spec/spec_tests/data/transactions/delete.yml +0 -192
  1223. data/spec/spec_tests/data/transactions/error-labels.yml +0 -1030
  1224. data/spec/spec_tests/data/transactions/errors-client.yml +0 -55
  1225. data/spec/spec_tests/data/transactions/errors.yml +0 -133
  1226. data/spec/spec_tests/data/transactions/findOneAndDelete.yml +0 -134
  1227. data/spec/spec_tests/data/transactions/findOneAndReplace.yml +0 -148
  1228. data/spec/spec_tests/data/transactions/findOneAndUpdate.yml +0 -236
  1229. data/spec/spec_tests/data/transactions/insert.yml +0 -390
  1230. data/spec/spec_tests/data/transactions/isolation.yml +0 -133
  1231. data/spec/spec_tests/data/transactions/mongos-pin-auto.yml +0 -1674
  1232. data/spec/spec_tests/data/transactions/mongos-recovery-token.yml +0 -350
  1233. data/spec/spec_tests/data/transactions/pin-mongos.yml +0 -559
  1234. data/spec/spec_tests/data/transactions/read-concern.yml +0 -623
  1235. data/spec/spec_tests/data/transactions/read-pref.yml +0 -348
  1236. data/spec/spec_tests/data/transactions/reads.yml +0 -261
  1237. data/spec/spec_tests/data/transactions/retryable-abort-errorLabels.yml +0 -124
  1238. data/spec/spec_tests/data/transactions/retryable-abort.yml +0 -1315
  1239. data/spec/spec_tests/data/transactions/retryable-commit-errorLabels.yml +0 -132
  1240. data/spec/spec_tests/data/transactions/retryable-commit.yml +0 -1460
  1241. data/spec/spec_tests/data/transactions/retryable-writes.yml +0 -216
  1242. data/spec/spec_tests/data/transactions/run-command.yml +0 -197
  1243. data/spec/spec_tests/data/transactions/transaction-options-repl.yml +0 -117
  1244. data/spec/spec_tests/data/transactions/transaction-options.yml +0 -781
  1245. data/spec/spec_tests/data/transactions/update.yml +0 -246
  1246. data/spec/spec_tests/data/transactions/write-concern.yml +0 -554
  1247. data/spec/spec_tests/data/transactions_api/callback-aborts.yml +0 -170
  1248. data/spec/spec_tests/data/transactions_api/callback-commits.yml +0 -204
  1249. data/spec/spec_tests/data/transactions_api/callback-retry.yml +0 -215
  1250. data/spec/spec_tests/data/transactions_api/commit-retry.yml +0 -324
  1251. data/spec/spec_tests/data/transactions_api/commit-transienttransactionerror-4.2.yml +0 -139
  1252. data/spec/spec_tests/data/transactions_api/commit-transienttransactionerror.yml +0 -175
  1253. data/spec/spec_tests/data/transactions_api/commit-writeconcernerror.yml +0 -216
  1254. data/spec/spec_tests/data/transactions_api/commit.yml +0 -193
  1255. data/spec/spec_tests/data/transactions_api/transaction-options.yml +0 -274
  1256. data/spec/spec_tests/data/transactions_unified/do-not-retry-read-in-transaction.yml +0 -64
  1257. data/spec/spec_tests/data/transactions_unified/mongos-unpin.yml +0 -172
  1258. data/spec/spec_tests/data/transactions_unified/retryable-abort-handshake.yml +0 -118
  1259. data/spec/spec_tests/data/transactions_unified/retryable-commit-handshake.yml +0 -118
  1260. data/spec/spec_tests/data/unified/valid-fail/entity-findCursor-malformed.yml +0 -31
  1261. data/spec/spec_tests/data/unified/valid-fail/entity-findCursor.yml +0 -31
  1262. data/spec/spec_tests/data/unified/valid-fail/ignoreResultAndError-malformed.yml +0 -34
  1263. data/spec/spec_tests/data/unified/valid-fail/ignoreResultAndError.yml +0 -35
  1264. data/spec/spec_tests/data/unified/valid-fail/operation-failure.yml +0 -31
  1265. data/spec/spec_tests/data/unified/valid-fail/operation-unsupported.yml +0 -13
  1266. data/spec/spec_tests/data/unified/valid-pass/assertNumberConnectionsCheckedOut.yml +0 -17
  1267. data/spec/spec_tests/data/unified/valid-pass/collectionData-createOptions.yml +0 -37
  1268. data/spec/spec_tests/data/unified/valid-pass/entity-client-cmap-events.yml +0 -40
  1269. data/spec/spec_tests/data/unified/valid-pass/entity-client-storeEventsAsEntities.yml +0 -37
  1270. data/spec/spec_tests/data/unified/valid-pass/expectedError-errorResponse.yml +0 -39
  1271. data/spec/spec_tests/data/unified/valid-pass/expectedEventsForClient-eventType.yml +0 -66
  1272. data/spec/spec_tests/data/unified/valid-pass/expectedEventsForClient-ignoreExtraEvents.yml +0 -78
  1273. data/spec/spec_tests/data/unified/valid-pass/ignoreResultAndError.yml +0 -34
  1274. data/spec/spec_tests/data/unified/valid-pass/observeSensitiveCommands.yml +0 -255
  1275. data/spec/spec_tests/data/unified/valid-pass/poc-change-streams.yml +0 -241
  1276. data/spec/spec_tests/data/unified/valid-pass/poc-command-monitoring.yml +0 -102
  1277. data/spec/spec_tests/data/unified/valid-pass/poc-crud.yml +0 -190
  1278. data/spec/spec_tests/data/unified/valid-pass/poc-gridfs.yml +0 -155
  1279. data/spec/spec_tests/data/unified/valid-pass/poc-retryable-reads.yml +0 -193
  1280. data/spec/spec_tests/data/unified/valid-pass/poc-retryable-writes.yml +0 -210
  1281. data/spec/spec_tests/data/unified/valid-pass/poc-sessions.yml +0 -214
  1282. data/spec/spec_tests/data/unified/valid-pass/poc-transactions-convenient-api.yml +0 -235
  1283. data/spec/spec_tests/data/unified/valid-pass/poc-transactions-mongos-pin-auto.yml +0 -169
  1284. data/spec/spec_tests/data/unified/valid-pass/poc-transactions.yml +0 -171
  1285. data/spec/spec_tests/data/uri_options/auth-options.yml +0 -49
  1286. data/spec/spec_tests/data/uri_options/compression-options.yml +0 -51
  1287. data/spec/spec_tests/data/uri_options/concern-options.yml +0 -55
  1288. data/spec/spec_tests/data/uri_options/connection-options.yml +0 -209
  1289. data/spec/spec_tests/data/uri_options/connection-pool-options.yml +0 -26
  1290. data/spec/spec_tests/data/uri_options/read-preference-options.yml +0 -66
  1291. data/spec/spec_tests/data/uri_options/ruby-auth-options.yml +0 -12
  1292. data/spec/spec_tests/data/uri_options/ruby-connection-options.yml +0 -58
  1293. data/spec/spec_tests/data/uri_options/srv-options.yml +0 -96
  1294. data/spec/spec_tests/data/uri_options/tls-options.yml +0 -364
  1295. data/spec/spec_tests/data/versioned_api/crud-api-version-1-strict.yml +0 -419
  1296. data/spec/spec_tests/data/versioned_api/crud-api-version-1.yml +0 -413
  1297. data/spec/spec_tests/data/versioned_api/runcommand-helper-no-api-version-declared.yml +0 -75
  1298. data/spec/spec_tests/data/versioned_api/test-commands-deprecation-errors.yml +0 -47
  1299. data/spec/spec_tests/data/versioned_api/test-commands-strict-mode.yml +0 -46
  1300. data/spec/spec_tests/data/versioned_api/transaction-handling.yml +0 -128
  1301. data/spec/spec_tests/gridfs_spec.rb +0 -55
  1302. data/spec/spec_tests/gridfs_unified_spec.rb +0 -13
  1303. data/spec/spec_tests/index_management_unified_spec.rb +0 -13
  1304. data/spec/spec_tests/load_balancers_spec.rb +0 -15
  1305. data/spec/spec_tests/max_staleness_spec.rb +0 -12
  1306. data/spec/spec_tests/read_write_concern_connection_string_spec.rb +0 -13
  1307. data/spec/spec_tests/read_write_concern_document_spec.rb +0 -77
  1308. data/spec/spec_tests/read_write_concern_operaton_spec.rb +0 -13
  1309. data/spec/spec_tests/retryable_reads_spec.rb +0 -55
  1310. data/spec/spec_tests/retryable_reads_unified_spec.rb +0 -22
  1311. data/spec/spec_tests/retryable_writes_spec.rb +0 -25
  1312. data/spec/spec_tests/retryable_writes_unified_spec.rb +0 -21
  1313. data/spec/spec_tests/run_command_unified_spec.rb +0 -13
  1314. data/spec/spec_tests/sdam_monitoring_spec.rb +0 -101
  1315. data/spec/spec_tests/sdam_spec.rb +0 -246
  1316. data/spec/spec_tests/sdam_unified_spec.rb +0 -15
  1317. data/spec/spec_tests/seed_list_discovery_spec.rb +0 -127
  1318. data/spec/spec_tests/server_selection_rtt_spec.rb +0 -33
  1319. data/spec/spec_tests/server_selection_spec.rb +0 -12
  1320. data/spec/spec_tests/sessions_unified_spec.rb +0 -13
  1321. data/spec/spec_tests/transactions_api_spec.rb +0 -13
  1322. data/spec/spec_tests/transactions_spec.rb +0 -13
  1323. data/spec/spec_tests/transactions_unified_spec.rb +0 -14
  1324. data/spec/spec_tests/unified_spec.rb +0 -18
  1325. data/spec/spec_tests/uri_options_spec.rb +0 -93
  1326. data/spec/spec_tests/versioned_api_spec.rb +0 -13
  1327. data/spec/stress/cleanup_spec.rb +0 -61
  1328. data/spec/stress/connection_pool_stress_spec.rb +0 -143
  1329. data/spec/stress/connection_pool_timing_spec.rb +0 -160
  1330. data/spec/stress/fork_reconnect_stress_spec.rb +0 -108
  1331. data/spec/stress/push_monitor_close_spec.rb +0 -44
  1332. data/spec/support/authorization.rb +0 -161
  1333. data/spec/support/aws_utils/base.rb +0 -137
  1334. data/spec/support/aws_utils/inspector.rb +0 -227
  1335. data/spec/support/aws_utils/orchestrator.rb +0 -385
  1336. data/spec/support/aws_utils/provisioner.rb +0 -363
  1337. data/spec/support/aws_utils.rb +0 -66
  1338. data/spec/support/background_thread_registry.rb +0 -60
  1339. data/spec/support/certificates/README.md +0 -106
  1340. data/spec/support/certificates/atlas-ocsp-ca.crt +0 -113
  1341. data/spec/support/certificates/atlas-ocsp.crt +0 -147
  1342. data/spec/support/certificates/ca.crt +0 -76
  1343. data/spec/support/certificates/client-encrypted.key +0 -30
  1344. data/spec/support/certificates/client-int.crt +0 -78
  1345. data/spec/support/certificates/client-second-level-bundle.pem +0 -179
  1346. data/spec/support/certificates/client-second-level.crt +0 -74
  1347. data/spec/support/certificates/client-second-level.key +0 -27
  1348. data/spec/support/certificates/client-second-level.pem +0 -101
  1349. data/spec/support/certificates/client-x509.crt +0 -78
  1350. data/spec/support/certificates/client-x509.key +0 -27
  1351. data/spec/support/certificates/client-x509.pem +0 -105
  1352. data/spec/support/certificates/client.crt +0 -74
  1353. data/spec/support/certificates/client.key +0 -27
  1354. data/spec/support/certificates/client.pem +0 -101
  1355. data/spec/support/certificates/crl.pem +0 -12
  1356. data/spec/support/certificates/crl_client_revoked.pem +0 -13
  1357. data/spec/support/certificates/multi-ca.crt +0 -152
  1358. data/spec/support/certificates/python-ca.crt +0 -76
  1359. data/spec/support/certificates/retrieve-atlas-cert +0 -40
  1360. data/spec/support/certificates/server-int.crt +0 -78
  1361. data/spec/support/certificates/server-second-level-bundle.pem +0 -179
  1362. data/spec/support/certificates/server-second-level.crt +0 -74
  1363. data/spec/support/certificates/server-second-level.key +0 -27
  1364. data/spec/support/certificates/server-second-level.pem +0 -101
  1365. data/spec/support/certificates/server.pem +0 -101
  1366. data/spec/support/client_registry.rb +0 -258
  1367. data/spec/support/client_registry_macros.rb +0 -26
  1368. data/spec/support/cluster_tools.rb +0 -384
  1369. data/spec/support/common_shortcuts.rb +0 -421
  1370. data/spec/support/constraints.rb +0 -39
  1371. data/spec/support/crypt/corpus/corpus-encrypted.json +0 -9515
  1372. data/spec/support/crypt/corpus/corpus-key-aws.json +0 -33
  1373. data/spec/support/crypt/corpus/corpus-key-azure.json +0 -33
  1374. data/spec/support/crypt/corpus/corpus-key-gcp.json +0 -35
  1375. data/spec/support/crypt/corpus/corpus-key-kmip.json +0 -32
  1376. data/spec/support/crypt/corpus/corpus-key-local.json +0 -31
  1377. data/spec/support/crypt/corpus/corpus-schema.json +0 -6335
  1378. data/spec/support/crypt/corpus/corpus.json +0 -8619
  1379. data/spec/support/crypt/data_keys/key_document_aws.json +0 -34
  1380. data/spec/support/crypt/data_keys/key_document_azure.json +0 -33
  1381. data/spec/support/crypt/data_keys/key_document_gcp.json +0 -37
  1382. data/spec/support/crypt/data_keys/key_document_kmip.json +0 -32
  1383. data/spec/support/crypt/data_keys/key_document_local.json +0 -31
  1384. data/spec/support/crypt/encrypted_fields/encryptedFields.json +0 -32
  1385. data/spec/support/crypt/encrypted_fields/range-encryptedFields-Date.json +0 -30
  1386. data/spec/support/crypt/encrypted_fields/range-encryptedFields-DecimalNoPrecision.json +0 -21
  1387. data/spec/support/crypt/encrypted_fields/range-encryptedFields-DecimalPrecision.json +0 -29
  1388. data/spec/support/crypt/encrypted_fields/range-encryptedFields-DoubleNoPrecision.json +0 -21
  1389. data/spec/support/crypt/encrypted_fields/range-encryptedFields-DoublePrecision.json +0 -30
  1390. data/spec/support/crypt/encrypted_fields/range-encryptedFields-Int.json +0 -27
  1391. data/spec/support/crypt/encrypted_fields/range-encryptedFields-Long.json +0 -27
  1392. data/spec/support/crypt/external/external-key.json +0 -31
  1393. data/spec/support/crypt/external/external-schema.json +0 -19
  1394. data/spec/support/crypt/keys/key1-document.json +0 -30
  1395. data/spec/support/crypt/limits/limits-doc.json +0 -102
  1396. data/spec/support/crypt/limits/limits-key.json +0 -31
  1397. data/spec/support/crypt/limits/limits-schema.json +0 -1405
  1398. data/spec/support/crypt/schema_maps/schema_map_aws.json +0 -17
  1399. data/spec/support/crypt/schema_maps/schema_map_aws_key_alt_names.json +0 -12
  1400. data/spec/support/crypt/schema_maps/schema_map_azure.json +0 -17
  1401. data/spec/support/crypt/schema_maps/schema_map_azure_key_alt_names.json +0 -12
  1402. data/spec/support/crypt/schema_maps/schema_map_gcp.json +0 -17
  1403. data/spec/support/crypt/schema_maps/schema_map_gcp_key_alt_names.json +0 -12
  1404. data/spec/support/crypt/schema_maps/schema_map_kmip.json +0 -17
  1405. data/spec/support/crypt/schema_maps/schema_map_kmip_key_alt_names.json +0 -12
  1406. data/spec/support/crypt/schema_maps/schema_map_local.json +0 -18
  1407. data/spec/support/crypt/schema_maps/schema_map_local_key_alt_names.json +0 -12
  1408. data/spec/support/crypt.rb +0 -412
  1409. data/spec/support/dns.rb +0 -16
  1410. data/spec/support/json_ext_formatter.rb +0 -16
  1411. data/spec/support/keyword_struct.rb +0 -29
  1412. data/spec/support/local_resource_registry.rb +0 -37
  1413. data/spec/support/macros.rb +0 -29
  1414. data/spec/support/matchers.rb +0 -88
  1415. data/spec/support/mongos_macros.rb +0 -24
  1416. data/spec/support/monitoring_ext.rb +0 -19
  1417. data/spec/support/ocsp +0 -1
  1418. data/spec/support/primary_socket.rb +0 -24
  1419. data/spec/support/recording_logger.rb +0 -27
  1420. data/spec/support/sdam_formatter_integration.rb +0 -119
  1421. data/spec/support/shared/app_metadata.rb +0 -179
  1422. data/spec/support/shared/auth_context.rb +0 -17
  1423. data/spec/support/shared/protocol.rb +0 -36
  1424. data/spec/support/shared/scram_conversation.rb +0 -104
  1425. data/spec/support/shared/server_selector.rb +0 -233
  1426. data/spec/support/shared/session.rb +0 -916
  1427. data/spec/support/spec_config.rb +0 -767
  1428. data/spec/support/spec_setup.rb +0 -83
  1429. data/spec/support/using_hash.rb +0 -40
  1430. data/spec/support/utils.rb +0 -680
@@ -1,1296 +0,0 @@
1
- # frozen_string_literal: true
2
- # rubocop:todo all
3
-
4
- require 'spec_helper'
5
-
6
- describe Mongo::Index::View do
7
-
8
- let(:subscriber) { Mrss::EventSubscriber.new }
9
-
10
- let(:client) do
11
- authorized_client.tap do |client|
12
- client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
13
- end
14
- end
15
-
16
- let(:authorized_collection) do
17
- client[TEST_COLL]
18
- end
19
-
20
- let(:view) do
21
- described_class.new(authorized_collection, options)
22
- end
23
-
24
- let(:options) do
25
- {}
26
- end
27
-
28
- before do
29
- begin
30
- authorized_collection.delete_many
31
- rescue Mongo::Error::OperationFailure
32
- end
33
- begin
34
- authorized_collection.indexes.drop_all
35
- rescue Mongo::Error::OperationFailure
36
- end
37
- end
38
-
39
- describe '#drop_one' do
40
-
41
- let(:spec) do
42
- { another: -1 }
43
- end
44
-
45
- before do
46
- view.create_one(spec, unique: true)
47
- end
48
-
49
- context 'when provided a session' do
50
-
51
- let(:view_with_session) do
52
- described_class.new(authorized_collection, session: session)
53
- end
54
-
55
- let(:client) do
56
- authorized_client
57
- end
58
-
59
- let(:operation) do
60
- view_with_session.drop_one('another_-1')
61
- end
62
-
63
- let(:failed_operation) do
64
- view_with_session.drop_one('_another_-1')
65
- end
66
-
67
- it_behaves_like 'an operation using a session'
68
- it_behaves_like 'a failed operation using a session'
69
- end
70
-
71
- context 'when the index exists' do
72
-
73
- let(:result) do
74
- view.drop_one('another_-1')
75
- end
76
-
77
- it 'drops the index' do
78
- expect(result).to be_successful
79
- end
80
- end
81
-
82
- context 'when passing a * as the name' do
83
-
84
- it 'raises an exception' do
85
- expect {
86
- view.drop_one('*')
87
- }.to raise_error(Mongo::Error::MultiIndexDrop)
88
- end
89
- end
90
-
91
- context 'when the collection has a write concern' do
92
-
93
- let(:collection) do
94
- authorized_collection.with(write: INVALID_WRITE_CONCERN)
95
- end
96
-
97
- let(:view_with_write_concern) do
98
- described_class.new(collection)
99
- end
100
-
101
- let(:result) do
102
- view_with_write_concern.drop_one('another_-1')
103
- end
104
-
105
- context 'when the server accepts writeConcern for the dropIndexes operation' do
106
- min_server_fcv '3.4'
107
-
108
- it 'applies the write concern' do
109
- expect {
110
- result
111
- }.to raise_exception(Mongo::Error::OperationFailure)
112
- end
113
- end
114
-
115
- context 'when the server does not accept writeConcern for the dropIndexes operation' do
116
- max_server_version '3.2'
117
-
118
- it 'does not apply the write concern' do
119
- expect(result).to be_successful
120
- end
121
- end
122
- end
123
-
124
- context 'when there are multiple indexes with the same key pattern' do
125
- min_server_fcv '3.4'
126
-
127
- before do
128
- view.create_one({ random: 1 }, unique: true)
129
- view.create_one({ random: 1 },
130
- name: 'random_1_with_collation',
131
- unique: true,
132
- collation: { locale: 'en_US', strength: 2 })
133
- end
134
-
135
- context 'when a name is supplied' do
136
-
137
- let!(:result) do
138
- view.drop_one('random_1_with_collation')
139
- end
140
-
141
- let(:index_names) do
142
- view.collect { |model| model['name'] }
143
- end
144
-
145
- it 'returns ok' do
146
- expect(result).to be_successful
147
- end
148
-
149
- it 'drops the correct index' do
150
- expect(index_names).not_to include('random_1_with_collation')
151
- expect(index_names).to include('random_1')
152
- end
153
- end
154
- end
155
-
156
- context 'with a comment' do
157
- min_server_version '4.4'
158
-
159
- it 'drops the index' do
160
- expect(view.drop_one('another_-1', comment: "comment")).to be_successful
161
- command = subscriber.command_started_events("dropIndexes").last&.command
162
- expect(command).not_to be_nil
163
- expect(command["comment"]).to eq("comment")
164
- end
165
- end
166
- end
167
-
168
- describe '#drop_all' do
169
-
170
- let(:spec) do
171
- { another: -1 }
172
- end
173
-
174
- before do
175
- view.create_one(spec, unique: true)
176
- end
177
-
178
- context 'when indexes exists' do
179
-
180
- let(:result) do
181
- view.drop_all
182
- end
183
-
184
- it 'drops the index' do
185
- expect(result).to be_successful
186
- end
187
-
188
- context 'when provided a session' do
189
-
190
- let(:view_with_session) do
191
- described_class.new(authorized_collection, session: session)
192
- end
193
-
194
- let(:operation) do
195
- view_with_session.drop_all
196
- end
197
-
198
- let(:client) do
199
- authorized_client
200
- end
201
-
202
- it_behaves_like 'an operation using a session'
203
- end
204
-
205
- context 'when the collection has a write concern' do
206
-
207
- let(:collection) do
208
- authorized_collection.with(write: INVALID_WRITE_CONCERN)
209
- end
210
-
211
- let(:view_with_write_concern) do
212
- described_class.new(collection)
213
- end
214
-
215
- let(:result) do
216
- view_with_write_concern.drop_all
217
- end
218
-
219
- context 'when the server accepts writeConcern for the dropIndexes operation' do
220
- min_server_fcv '3.4'
221
-
222
- it 'applies the write concern' do
223
- expect {
224
- result
225
- }.to raise_exception(Mongo::Error::OperationFailure)
226
- end
227
- end
228
-
229
- context 'when the server does not accept writeConcern for the dropIndexes operation' do
230
- max_server_version '3.2'
231
-
232
- it 'does not apply the write concern' do
233
- expect(result).to be_successful
234
- end
235
- end
236
- end
237
-
238
- context 'with a comment' do
239
- min_server_version '4.4'
240
-
241
- it 'drops indexes' do
242
- expect(view.drop_all(comment: "comment")).to be_successful
243
- command = subscriber.command_started_events("dropIndexes").last&.command
244
- expect(command).not_to be_nil
245
- expect(command["comment"]).to eq("comment")
246
- end
247
- end
248
- end
249
- end
250
-
251
- describe '#create_many' do
252
-
253
- context 'when the indexes are created' do
254
-
255
- context 'when passing multi-args' do
256
-
257
- context 'when the index creation is successful' do
258
-
259
- let!(:result) do
260
- view.create_many(
261
- { key: { random: 1 }, unique: true },
262
- { key: { testing: -1 }, unique: true }
263
- )
264
- end
265
-
266
- it 'returns ok' do
267
- expect(result).to be_successful
268
- end
269
-
270
- context 'when provided a session' do
271
-
272
- let(:view_with_session) do
273
- described_class.new(authorized_collection, session: session)
274
- end
275
-
276
- let(:operation) do
277
- view_with_session.create_many(
278
- { key: { random: 1 }, unique: true },
279
- { key: { testing: -1 }, unique: true }
280
- )
281
- end
282
-
283
- let(:client) do
284
- authorized_client
285
- end
286
-
287
- let(:failed_operation) do
288
- view_with_session.create_many(
289
- { key: { random: 1 }, invalid: true }
290
- )
291
- end
292
-
293
- it_behaves_like 'an operation using a session'
294
- it_behaves_like 'a failed operation using a session'
295
- end
296
- end
297
-
298
- context 'when commit quorum options are specified' do
299
- require_topology :replica_set, :sharded
300
- context 'on server versions >= 4.4' do
301
- min_server_fcv '4.4'
302
-
303
- let(:subscriber) { Mrss::EventSubscriber.new }
304
-
305
- let(:client) do
306
- authorized_client.tap do |client|
307
- client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
308
- end
309
- end
310
-
311
- let(:authorized_collection) { client['view-subscribed'] }
312
-
313
- context 'when commit_quorum value is supported' do
314
- let!(:result) do
315
- view.create_many(
316
- { key: { random: 1 }, unique: true },
317
- { key: { testing: -1 }, unique: true },
318
- { commit_quorum: 'majority' }
319
- )
320
- end
321
-
322
- let(:events) do
323
- subscriber.command_started_events('createIndexes')
324
- end
325
-
326
- it 'returns ok' do
327
- expect(result).to be_successful
328
- end
329
-
330
- it 'passes the commit_quorum option to the server' do
331
- expect(events.length).to eq(1)
332
- command = events.first.command
333
- expect(command['commitQuorum']).to eq('majority')
334
- end
335
- end
336
-
337
- context 'when commit_quorum value is not supported' do
338
- it 'raises an exception' do
339
- expect do
340
- view.create_many(
341
- { key: { random: 1 }, unique: true },
342
- { key: { testing: -1 }, unique: true },
343
- { commit_quorum: 'unsupported-value' }
344
- )
345
- # 4.4.4 changed the text of the error message
346
- end.to raise_error(Mongo::Error::OperationFailure, /Commit quorum cannot be satisfied with the current replica set configuration|No write concern mode named 'unsupported-value' found in replica set configuration/)
347
- end
348
- end
349
- end
350
-
351
- context 'on server versions < 4.4' do
352
- max_server_fcv '4.2'
353
-
354
- it 'raises an exception' do
355
- expect do
356
- view.create_many(
357
- { key: { random: 1 }, unique: true },
358
- { key: { testing: -1 }, unique: true },
359
- { commit_quorum: 'majority' }
360
- )
361
- end.to raise_error(Mongo::Error::UnsupportedOption, /The MongoDB server handling this request does not support the commit_quorum option/)
362
- end
363
- end
364
- end
365
-
366
- context 'when hidden is specified' do
367
- let(:index) { view.get('with_hidden_1') }
368
-
369
- context 'on server versions <= 3.2' do
370
- # DRIVERS-1220 Server versions 3.2 and older do not perform any option
371
- # checking on index creation. The server will allow the user to create
372
- # the index with the hidden option, but the server does not support this
373
- # option and will not use it.
374
- max_server_fcv '3.2'
375
-
376
- let!(:result) do
377
- view.create_many({ key: { with_hidden: 1 }, hidden: true })
378
- end
379
-
380
- it 'returns ok' do
381
- expect(result).to be_successful
382
- end
383
-
384
- it 'creates an index' do
385
- expect(index).to_not be_nil
386
- end
387
- end
388
-
389
- context 'on server versions between 3.4 and 4.2' do
390
- max_server_fcv '4.2'
391
- min_server_fcv '3.4'
392
-
393
- it 'raises an exception' do
394
- expect do
395
- view.create_many({ key: { with_hidden: 1 }, hidden: true })
396
- end.to raise_error(/The field 'hidden' is not valid for an index specification/)
397
- end
398
- end
399
-
400
- context 'on server versions >= 4.4' do
401
- min_server_fcv '4.4'
402
-
403
- context 'when hidden is true' do
404
- let!(:result) do
405
- view.create_many({ key: { with_hidden: 1 }, hidden: true })
406
- end
407
-
408
- it 'returns ok' do
409
- expect(result).to be_successful
410
- end
411
-
412
- it 'creates an index' do
413
- expect(index).to_not be_nil
414
- end
415
-
416
- it 'applies the hidden option to the index' do
417
- expect(index['hidden']).to be true
418
- end
419
- end
420
-
421
- context 'when hidden is false' do
422
- let!(:result) do
423
- view.create_many({ key: { with_hidden: 1 }, hidden: false })
424
- end
425
-
426
- it 'returns ok' do
427
- expect(result).to be_successful
428
- end
429
-
430
- it 'creates an index' do
431
- expect(index).to_not be_nil
432
- end
433
-
434
- it 'does not apply the hidden option to the index' do
435
- expect(index['hidden']).to be_nil
436
- end
437
- end
438
- end
439
- end
440
-
441
- context 'when collation is specified' do
442
- min_server_fcv '3.4'
443
-
444
- let(:result) do
445
- view.create_many(
446
- { key: { random: 1 },
447
- unique: true,
448
- collation: { locale: 'en_US', strength: 2 } }
449
- )
450
- end
451
-
452
- let(:index_info) do
453
- view.get('random_1')
454
- end
455
-
456
- context 'when the server supports collations' do
457
- min_server_fcv '3.4'
458
-
459
- it 'returns ok' do
460
- expect(result).to be_successful
461
- end
462
-
463
- it 'applies the collation to the new index' do
464
- result
465
- expect(index_info['collation']).not_to be_nil
466
- expect(index_info['collation']['locale']).to eq('en_US')
467
- expect(index_info['collation']['strength']).to eq(2)
468
- end
469
- end
470
-
471
- context 'when the server does not support collations' do
472
- max_server_version '3.2'
473
-
474
- it 'raises an exception' do
475
- expect {
476
- result
477
- }.to raise_exception(Mongo::Error::UnsupportedCollation)
478
- end
479
-
480
- context 'when a String key is used' do
481
-
482
- let(:result) do
483
- view.create_many(
484
- { key: { random: 1 },
485
- unique: true,
486
- 'collation' => { locale: 'en_US', strength: 2 } }
487
- )
488
- end
489
-
490
- it 'raises an exception' do
491
- expect {
492
- result
493
- }.to raise_exception(Mongo::Error::UnsupportedCollation)
494
- end
495
- end
496
- end
497
- end
498
-
499
- context 'when the collection has a write concern' do
500
-
501
- let(:collection) do
502
- authorized_collection.with(write: INVALID_WRITE_CONCERN)
503
- end
504
-
505
- let(:view_with_write_concern) do
506
- described_class.new(collection)
507
- end
508
-
509
- let(:result) do
510
- view_with_write_concern.create_many(
511
- { key: { random: 1 }, unique: true },
512
- { key: { testing: -1 }, unique: true }
513
- )
514
- end
515
-
516
- context 'when the server accepts writeConcern for the createIndexes operation' do
517
- min_server_fcv '3.4'
518
-
519
- it 'applies the write concern' do
520
- expect {
521
- result
522
- }.to raise_exception(Mongo::Error::OperationFailure)
523
- end
524
- end
525
-
526
- context 'when the server does not accept writeConcern for the createIndexes operation' do
527
- max_server_version '3.2'
528
-
529
- it 'does not apply the write concern' do
530
- expect(result).to be_successful
531
- end
532
- end
533
- end
534
- end
535
-
536
- context 'when passing an array' do
537
-
538
- context 'when the index creation is successful' do
539
-
540
- let!(:result) do
541
- view.create_many([
542
- { key: { random: 1 }, unique: true },
543
- { key: { testing: -1 }, unique: true }
544
- ])
545
- end
546
-
547
- it 'returns ok' do
548
- expect(result).to be_successful
549
- end
550
-
551
- context 'when provided a session' do
552
-
553
- let(:view_with_session) do
554
- described_class.new(authorized_collection, session: session)
555
- end
556
-
557
- let(:operation) do
558
- view_with_session.create_many([
559
- { key: { random: 1 }, unique: true },
560
- { key: { testing: -1 }, unique: true }
561
- ])
562
- end
563
-
564
- let(:failed_operation) do
565
- view_with_session.create_many([ { key: { random: 1 }, invalid: true }])
566
- end
567
-
568
- let(:client) do
569
- authorized_client
570
- end
571
-
572
- it_behaves_like 'an operation using a session'
573
- it_behaves_like 'a failed operation using a session'
574
- end
575
- end
576
-
577
- context 'when collation is specified' do
578
-
579
- let(:result) do
580
- view.create_many([
581
- { key: { random: 1 },
582
- unique: true,
583
- collation: { locale: 'en_US', strength: 2 }},
584
- ])
585
- end
586
-
587
- let(:index_info) do
588
- view.get('random_1')
589
- end
590
-
591
- context 'when the server supports collations' do
592
- min_server_fcv '3.4'
593
-
594
- it 'returns ok' do
595
- expect(result).to be_successful
596
- end
597
-
598
- it 'applies the collation to the new index' do
599
- result
600
- expect(index_info['collation']).not_to be_nil
601
- expect(index_info['collation']['locale']).to eq('en_US')
602
- expect(index_info['collation']['strength']).to eq(2)
603
- end
604
- end
605
-
606
- context 'when the server does not support collations' do
607
- max_server_version '3.2'
608
-
609
- it 'raises an exception' do
610
- expect {
611
- result
612
- }.to raise_exception(Mongo::Error::UnsupportedCollation)
613
- end
614
-
615
- context 'when a String key is used' do
616
-
617
- let(:result) do
618
- view.create_many([
619
- { key: { random: 1 },
620
- unique: true,
621
- 'collation' => { locale: 'en_US', strength: 2 }},
622
- ])
623
- end
624
-
625
- it 'raises an exception' do
626
- expect {
627
- result
628
- }.to raise_exception(Mongo::Error::UnsupportedCollation)
629
- end
630
- end
631
- end
632
- end
633
-
634
- context 'when the collection has a write concern' do
635
-
636
- let(:collection) do
637
- authorized_collection.with(write: INVALID_WRITE_CONCERN)
638
- end
639
-
640
- let(:view_with_write_concern) do
641
- described_class.new(collection)
642
- end
643
-
644
- let(:result) do
645
- view_with_write_concern.create_many([
646
- { key: { random: 1 }, unique: true },
647
- { key: { testing: -1 }, unique: true }
648
- ])
649
- end
650
-
651
- context 'when the server accepts writeConcern for the createIndexes operation' do
652
- min_server_fcv '3.4'
653
-
654
- it 'applies the write concern' do
655
- expect {
656
- result
657
- }.to raise_exception(Mongo::Error::OperationFailure)
658
- end
659
- end
660
-
661
- context 'when the server does not accept writeConcern for the createIndexes operation' do
662
- max_server_version '3.2'
663
-
664
- it 'does not apply the write concern' do
665
- expect(result).to be_successful
666
- end
667
- end
668
- end
669
- end
670
-
671
- context 'when index creation fails' do
672
-
673
- let(:spec) do
674
- { name: 1 }
675
- end
676
-
677
- before do
678
- view.create_one(spec, unique: true)
679
- end
680
-
681
- it 'raises an exception' do
682
- expect {
683
- view.create_many([{ key: { name: 1 }, unique: false }])
684
- }.to raise_error(Mongo::Error::OperationFailure)
685
- end
686
- end
687
- end
688
-
689
- context 'when using bucket option' do
690
- # Option is removed in 4.9
691
- max_server_version '4.7'
692
-
693
- let(:spec) do
694
- { 'any' => 1 }
695
- end
696
-
697
- let(:result) do
698
- view.create_many([key: spec, bucket_size: 1])
699
- end
700
-
701
- it 'warns of deprecation' do
702
- RSpec::Mocks.with_temporary_scope do
703
- view.client.should receive(:log_warn).and_call_original
704
-
705
- result
706
- end
707
- end
708
- end
709
-
710
- context 'with a comment' do
711
- min_server_version '4.4'
712
-
713
- it 'creates indexes' do
714
- expect(
715
- view.create_many(
716
- [
717
- { key: { random: 1 }, unique: true },
718
- { key: { testing: -1 }, unique: true }
719
- ],
720
- comment: "comment"
721
- )
722
- ).to be_successful
723
- command = subscriber.single_command_started_event("createIndexes")&.command
724
- expect(command).not_to be_nil
725
- expect(command["comment"]).to eq("comment")
726
- end
727
- end
728
- end
729
-
730
- describe '#create_one' do
731
-
732
- context 'when the index is created' do
733
-
734
- let(:spec) do
735
- { random: 1 }
736
- end
737
-
738
- let(:result) do
739
- view.create_one(spec, unique: true)
740
- end
741
-
742
- it 'returns ok' do
743
- expect(result).to be_successful
744
- end
745
-
746
- context 'when provided a session' do
747
-
748
- let(:view_with_session) do
749
- described_class.new(authorized_collection, session: session)
750
- end
751
-
752
- let(:operation) do
753
- view_with_session.create_one(spec, unique: true)
754
- end
755
-
756
- let(:failed_operation) do
757
- view_with_session.create_one(spec, invalid: true)
758
- end
759
-
760
- let(:client) do
761
- authorized_client
762
- end
763
-
764
- it_behaves_like 'an operation using a session'
765
- it_behaves_like 'a failed operation using a session'
766
- end
767
-
768
- context 'when the collection has a write concern' do
769
-
770
- let(:collection) do
771
- authorized_collection.with(write: INVALID_WRITE_CONCERN)
772
- end
773
-
774
- let(:view_with_write_concern) do
775
- described_class.new(collection)
776
- end
777
-
778
- let(:result) do
779
- view_with_write_concern.create_one(spec, unique: true)
780
- end
781
-
782
- context 'when the server accepts writeConcern for the createIndexes operation' do
783
- min_server_fcv '3.4'
784
-
785
- it 'applies the write concern' do
786
- expect {
787
- result
788
- }.to raise_exception(Mongo::Error::OperationFailure)
789
- end
790
- end
791
-
792
- context 'when the server does not accept writeConcern for the createIndexes operation' do
793
- max_server_version '3.2'
794
-
795
- it 'does not apply the write concern' do
796
- expect(result).to be_successful
797
- end
798
- end
799
- end
800
-
801
- context 'when the index is created on an subdocument field' do
802
-
803
- let(:spec) do
804
- { 'sub_document.random' => 1 }
805
- end
806
-
807
- let(:result) do
808
- view.create_one(spec, unique: true)
809
- end
810
-
811
- it 'returns ok' do
812
- expect(result).to be_successful
813
- end
814
- end
815
-
816
- context 'when using bucket option' do
817
- # Option is removed in 4.9
818
- max_server_version '4.7'
819
-
820
- let(:spec) do
821
- { 'any' => 1 }
822
- end
823
-
824
- let(:result) do
825
- view.create_one(spec, bucket_size: 1)
826
- end
827
-
828
- it 'warns of deprecation' do
829
- RSpec::Mocks.with_temporary_scope do
830
- view.client.should receive(:log_warn).and_call_original
831
-
832
- result
833
- end
834
- end
835
- end
836
- end
837
-
838
- context 'when index creation fails' do
839
-
840
- let(:spec) do
841
- { name: 1 }
842
- end
843
-
844
- before do
845
- view.create_one(spec, unique: true)
846
- end
847
-
848
- it 'raises an exception' do
849
- expect {
850
- view.create_one(spec, unique: false)
851
- }.to raise_error(Mongo::Error::OperationFailure)
852
- end
853
- end
854
-
855
- context 'when providing an index name' do
856
-
857
- let(:spec) do
858
- { random: 1 }
859
- end
860
-
861
- let!(:result) do
862
- view.create_one(spec, unique: true, name: 'random_name')
863
- end
864
-
865
- it 'returns ok' do
866
- expect(result).to be_successful
867
- end
868
-
869
- it 'defines the index with the provided name' do
870
- expect(view.get('random_name')).to_not be_nil
871
- end
872
- end
873
-
874
- context 'when providing an invalid partial index filter' do
875
- min_server_fcv '3.2'
876
-
877
- it 'raises an exception' do
878
- expect {
879
- view.create_one({'x' => 1}, partial_filter_expression: 5)
880
- }.to raise_error(Mongo::Error::OperationFailure)
881
- end
882
- end
883
-
884
- context 'when providing a valid partial index filter' do
885
- min_server_fcv '3.2'
886
-
887
- let(:expression) do
888
- {'a' => {'$lte' => 1.5}}
889
- end
890
-
891
- let!(:result) do
892
- view.create_one({'x' => 1}, partial_filter_expression: expression)
893
- end
894
-
895
- let(:indexes) do
896
- authorized_collection.indexes.get('x_1')
897
- end
898
-
899
- it 'returns ok' do
900
- expect(result).to be_successful
901
- end
902
-
903
- it 'creates an index' do
904
- expect(indexes).to_not be_nil
905
- end
906
-
907
- it 'passes partialFilterExpression correctly' do
908
- expect(indexes[:partialFilterExpression]).to eq(expression)
909
- end
910
- end
911
-
912
- context 'when providing an invalid wildcard projection expression' do
913
- min_server_fcv '4.2'
914
-
915
- it 'raises an exception' do
916
- expect {
917
- view.create_one({ '$**' => 1 }, wildcard_projection: 5)
918
- }.to raise_error(Mongo::Error::OperationFailure, /Error in specification.*wildcardProjection|wildcardProjection.*must be a non-empty object/)
919
- end
920
- end
921
-
922
- context 'when providing a wildcard projection to an invalid base index' do
923
- min_server_fcv '4.2'
924
-
925
- it 'raises an exception' do
926
- expect {
927
- view.create_one({ 'x' => 1 }, wildcard_projection: { rating: 1 })
928
- }.to raise_error(Mongo::Error::OperationFailure, /Error in specification.*wildcardProjection|wildcardProjection.*is only allowed/)
929
- end
930
- end
931
-
932
- context 'when providing a valid wildcard projection' do
933
- min_server_fcv '4.2'
934
-
935
- let!(:result) do
936
- view.create_one({ '$**' => 1 }, wildcard_projection: { 'rating' => 1 })
937
- end
938
-
939
- let(:indexes) do
940
- authorized_collection.indexes.get('$**_1')
941
- end
942
-
943
- it 'returns ok' do
944
- expect(result).to be_successful
945
- end
946
-
947
- it 'creates an index' do
948
- expect(indexes).to_not be_nil
949
- end
950
-
951
- context 'on server versions <= 4.4' do
952
- max_server_fcv '4.4'
953
-
954
- it 'passes wildcardProjection correctly' do
955
- expect(indexes[:wildcardProjection]).to eq({ 'rating' => 1 })
956
- end
957
- end
958
-
959
- context 'on server versions > 5.3' do
960
- min_server_fcv '5.4'
961
-
962
- it 'passes wildcardProjection correctly' do
963
- expect(indexes[:wildcardProjection]).to eq({ 'rating' => 1 })
964
- end
965
- end
966
- end
967
-
968
- context 'when providing hidden option' do
969
- let(:index) { view.get('with_hidden_1') }
970
-
971
- context 'on server versions <= 3.2' do
972
- # DRIVERS-1220 Server versions 3.2 and older do not perform any option
973
- # checking on index creation. The server will allow the user to create
974
- # the index with the hidden option, but the server does not support this
975
- # option and will not use it.
976
- max_server_fcv '3.2'
977
-
978
- let!(:result) do
979
- view.create_one({ 'with_hidden' => 1 }, { hidden: true })
980
- end
981
-
982
- it 'returns ok' do
983
- expect(result).to be_successful
984
- end
985
-
986
- it 'creates an index' do
987
- expect(index).to_not be_nil
988
- end
989
- end
990
-
991
- context 'on server versions between 3.4 and 4.2' do
992
- max_server_fcv '4.2'
993
- min_server_fcv '3.4'
994
-
995
- it 'raises an exception' do
996
- expect do
997
- view.create_one({ 'with_hidden' => 1 }, { hidden: true })
998
- end.to raise_error(/The field 'hidden' is not valid for an index specification/)
999
- end
1000
- end
1001
-
1002
- context 'on server versions >= 4.4' do
1003
- min_server_fcv '4.4'
1004
-
1005
- context 'when hidden is true' do
1006
- let!(:result) { view.create_one({ 'with_hidden' => 1 }, { hidden: true }) }
1007
-
1008
- it 'returns ok' do
1009
- expect(result).to be_successful
1010
- end
1011
-
1012
- it 'creates an index' do
1013
- expect(index).to_not be_nil
1014
- end
1015
-
1016
- it 'applies the hidden option to the index' do
1017
- expect(index['hidden']).to be true
1018
- end
1019
- end
1020
-
1021
- context 'when hidden is false' do
1022
- let!(:result) { view.create_one({ 'with_hidden' => 1 }, { hidden: false }) }
1023
-
1024
- it 'returns ok' do
1025
- expect(result).to be_successful
1026
- end
1027
-
1028
- it 'creates an index' do
1029
- expect(index).to_not be_nil
1030
- end
1031
-
1032
- it 'does not apply the hidden option to the index' do
1033
- expect(index['hidden']).to be_nil
1034
- end
1035
- end
1036
- end
1037
- end
1038
-
1039
- context 'when providing commit_quorum option' do
1040
- require_topology :replica_set, :sharded
1041
- context 'on server versions >= 4.4' do
1042
- min_server_fcv '4.4'
1043
-
1044
- let(:subscriber) { Mrss::EventSubscriber.new }
1045
-
1046
- let(:client) do
1047
- authorized_client.tap do |client|
1048
- client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
1049
- end
1050
- end
1051
-
1052
- let(:authorized_collection) { client['view-subscribed'] }
1053
-
1054
- let(:indexes) do
1055
- authorized_collection.indexes.get('x_1')
1056
- end
1057
-
1058
- context 'when commit_quorum value is supported' do
1059
- let!(:result) { view.create_one({ 'x' => 1 }, commit_quorum: 'majority') }
1060
-
1061
- it 'returns ok' do
1062
- expect(result).to be_successful
1063
- end
1064
-
1065
- it 'creates an index' do
1066
- expect(indexes).to_not be_nil
1067
- end
1068
-
1069
- let(:events) do
1070
- subscriber.command_started_events('createIndexes')
1071
- end
1072
-
1073
- it 'passes the commit_quorum option to the server' do
1074
- expect(events.length).to eq(1)
1075
- command = events.first.command
1076
- expect(command['commitQuorum']).to eq('majority')
1077
- end
1078
- end
1079
-
1080
- context 'when commit_quorum value is not supported' do
1081
- it 'raises an exception' do
1082
- expect do
1083
- view.create_one({ 'x' => 1 }, commit_quorum: 'unsupported-value')
1084
- # 4.4.4 changed the text of the error message
1085
- end.to raise_error(Mongo::Error::OperationFailure, /Commit quorum cannot be satisfied with the current replica set configuration|No write concern mode named 'unsupported-value' found in replica set configuration/)
1086
- end
1087
- end
1088
- end
1089
-
1090
- context 'on server versions < 4.4' do
1091
- max_server_fcv '4.2'
1092
-
1093
- it 'raises an exception' do
1094
- expect do
1095
- view.create_one({ 'x' => 1 }, commit_quorum: 'majority')
1096
- end.to raise_error(Mongo::Error::UnsupportedOption, /The MongoDB server handling this request does not support the commit_quorum option/)
1097
- end
1098
- end
1099
- end
1100
-
1101
- context 'with a comment' do
1102
- min_server_version '4.4'
1103
-
1104
- it 'creates index' do
1105
- expect(
1106
- view.create_one(
1107
- { 'x' => 1 },
1108
- comment: "comment"
1109
- )
1110
- ).to be_successful
1111
- command = subscriber.single_command_started_event("createIndexes")&.command
1112
- expect(command).not_to be_nil
1113
- expect(command["comment"]).to eq("comment")
1114
- end
1115
- end
1116
- end
1117
-
1118
- describe '#get' do
1119
-
1120
- let(:spec) do
1121
- { random: 1 }
1122
- end
1123
-
1124
- let!(:result) do
1125
- view.create_one(spec, unique: true, name: 'random_name')
1126
- end
1127
-
1128
- context 'when providing a name' do
1129
-
1130
- let(:index) do
1131
- view.get('random_name')
1132
- end
1133
-
1134
- it 'returns the index' do
1135
- expect(index['name']).to eq('random_name')
1136
- end
1137
- end
1138
-
1139
- context 'when providing a spec' do
1140
-
1141
- let(:index) do
1142
- view.get(random: 1)
1143
- end
1144
-
1145
- it 'returns the index' do
1146
- expect(index['name']).to eq('random_name')
1147
- end
1148
- end
1149
-
1150
- context 'when provided a session' do
1151
-
1152
- let(:view_with_session) do
1153
- described_class.new(authorized_collection, session: session)
1154
- end
1155
-
1156
- let(:operation) do
1157
- view_with_session.get(random: 1)
1158
- end
1159
-
1160
- let(:client) do
1161
- authorized_client
1162
- end
1163
-
1164
- it_behaves_like 'an operation using a session'
1165
- end
1166
-
1167
- context 'when the index does not exist' do
1168
-
1169
- it 'returns nil' do
1170
- expect(view.get(other: 1)).to be_nil
1171
- end
1172
- end
1173
- end
1174
-
1175
- describe '#each' do
1176
-
1177
- context 'when the collection exists' do
1178
-
1179
- let(:spec) do
1180
- { name: 1 }
1181
- end
1182
-
1183
- before do
1184
- view.create_one(spec, unique: true)
1185
- end
1186
-
1187
- let(:indexes) do
1188
- view.each
1189
- end
1190
-
1191
- it 'returns all the indexes for the database' do
1192
- expect(indexes.to_a.count).to eq(2)
1193
- end
1194
- end
1195
-
1196
- context 'when the collection does not exist' do
1197
- min_server_fcv '3.0'
1198
-
1199
- let(:nonexistent_collection) do
1200
- authorized_client[:not_a_collection]
1201
- end
1202
-
1203
- let(:nonexistent_view) do
1204
- described_class.new(nonexistent_collection)
1205
- end
1206
-
1207
- it 'raises a nonexistent collection error' do
1208
- expect {
1209
- nonexistent_view.each.to_a
1210
- }.to raise_error(Mongo::Error::OperationFailure)
1211
- end
1212
- end
1213
- end
1214
-
1215
- describe '#normalize_models' do
1216
-
1217
- context 'when providing options' do
1218
-
1219
- let(:options) do
1220
- {
1221
- :key => { :name => 1 },
1222
- :bucket_size => 5,
1223
- :default_language => 'deutsch',
1224
- :expire_after => 10,
1225
- :language_override => 'language',
1226
- :sphere_version => 1,
1227
- :storage_engine => 'wiredtiger',
1228
- :text_version => 2,
1229
- :version => 1
1230
- }
1231
- end
1232
-
1233
- let(:models) do
1234
- view.send(:normalize_models, [ options ], authorized_primary)
1235
- end
1236
-
1237
- let(:expected) do
1238
- {
1239
- :key => { :name => 1 },
1240
- :name => 'name_1',
1241
- :bucketSize => 5,
1242
- :default_language => 'deutsch',
1243
- :expireAfterSeconds => 10,
1244
- :language_override => 'language',
1245
- :'2dsphereIndexVersion' => 1,
1246
- :storageEngine => 'wiredtiger',
1247
- :textIndexVersion => 2,
1248
- :v => 1
1249
- }
1250
- end
1251
-
1252
- it 'maps the ruby options to the server options' do
1253
- expect(models).to eq([ expected ])
1254
- end
1255
-
1256
- context 'when using alternate names' do
1257
-
1258
- let(:extended_options) do
1259
- options.merge!(expire_after_seconds: 5)
1260
- end
1261
-
1262
- let(:extended_expected) do
1263
- expected.tap { |exp| exp[:expireAfterSeconds] = 5 }
1264
- end
1265
-
1266
- let(:models) do
1267
- view.send(:normalize_models, [ extended_options ], authorized_primary)
1268
- end
1269
-
1270
- it 'maps the ruby options to the server options' do
1271
- expect(models).to eq([ extended_expected ])
1272
- end
1273
- end
1274
-
1275
- context 'when the server supports collations' do
1276
- min_server_fcv '3.4'
1277
-
1278
- let(:extended_options) do
1279
- options.merge(:collation => { locale: 'en_US' } )
1280
- end
1281
-
1282
- let(:models) do
1283
- view.send(:normalize_models, [ extended_options ], authorized_primary)
1284
- end
1285
-
1286
- let(:extended_expected) do
1287
- expected.tap { |exp| exp[:collation] = { locale: 'en_US' } }
1288
- end
1289
-
1290
- it 'maps the ruby options to the server options' do
1291
- expect(models).to eq([ extended_expected ])
1292
- end
1293
- end
1294
- end
1295
- end
1296
- end