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,916 +0,0 @@
1
- # frozen_string_literal: true
2
- # rubocop:todo all
3
-
4
- shared_examples 'an operation using a session' do
5
-
6
- describe 'operation execution' do
7
- min_server_fcv '3.6'
8
- require_topology :replica_set, :sharded
9
-
10
- context 'when the session is created from the same client used for the operation' do
11
-
12
- let(:session) do
13
- client.start_session
14
- end
15
-
16
- let(:server_session) do
17
- session.instance_variable_get(:@server_session)
18
- end
19
-
20
- let!(:before_last_use) do
21
- server_session.last_use
22
- end
23
-
24
- let!(:before_operation_time) do
25
- (session.operation_time || 0)
26
- end
27
-
28
- let!(:operation_result) do
29
- operation
30
- end
31
-
32
- after do
33
- session.end_session
34
- end
35
-
36
- it 'updates the last use value' do
37
- expect(server_session.last_use).not_to eq(before_last_use)
38
- end
39
-
40
- it 'updates the operation time value' do
41
- expect(session.operation_time).not_to eq(before_operation_time)
42
- end
43
-
44
- it 'does not close the session when the operation completes' do
45
- expect(session.ended?).to be(false)
46
- end
47
- end
48
-
49
- context 'when a session from another client is provided' do
50
-
51
- let(:session) do
52
- another_authorized_client.start_session
53
- end
54
-
55
- let(:operation_result) do
56
- operation
57
- end
58
-
59
- it 'raises an exception' do
60
- expect do
61
- operation_result
62
- end.to raise_exception(Mongo::Error::InvalidSession)
63
- end
64
- end
65
-
66
- context 'when the session is ended before it is used' do
67
-
68
- let(:session) do
69
- client.start_session
70
- end
71
-
72
- before do
73
- session.end_session
74
- end
75
-
76
- let(:operation_result) do
77
- operation
78
- end
79
-
80
- it 'raises an exception' do
81
- expect {
82
- operation_result
83
- }.to raise_exception(Mongo::Error::InvalidSession)
84
- end
85
- end
86
- end
87
- end
88
-
89
- shared_examples 'a failed operation using a session' do
90
-
91
- context 'when the operation fails' do
92
- min_server_fcv '3.6'
93
- require_topology :replica_set, :sharded
94
-
95
- let!(:before_last_use) do
96
- session.instance_variable_get(:@server_session).last_use
97
- end
98
-
99
- let!(:before_operation_time) do
100
- (session.operation_time || 0)
101
- end
102
-
103
- let!(:operation_result) do
104
- sleep 0.2
105
- begin; failed_operation; rescue => e; e; end
106
- end
107
-
108
- let(:session) do
109
- client.start_session
110
- end
111
-
112
- it 'raises an error' do
113
- expect([Mongo::Error::OperationFailure::Family,
114
- Mongo::Error::BulkWriteError].any? { |e| e === operation_result }).to be true
115
- end
116
-
117
- it 'updates the last use value' do
118
- expect(session.instance_variable_get(:@server_session).last_use).not_to eq(before_last_use)
119
- end
120
-
121
- it 'updates the operation time value' do
122
- expect(session.operation_time).not_to eq(before_operation_time)
123
- end
124
- end
125
- end
126
-
127
- shared_examples 'an explicit session with an unacknowledged write' do
128
-
129
- context 'when sessions are supported' do
130
- min_server_fcv '3.6'
131
-
132
- let(:session) do
133
- client.start_session
134
- end
135
-
136
- it 'does not add a session id to the operation' do
137
- subscriber.clear_events!
138
- operation
139
- subscriber.non_auth_command_started_events.length.should == 1
140
- expect(subscriber.non_auth_command_started_events.collect(&:command).collect { |cmd| cmd['lsid'] }.compact).to be_empty
141
- end
142
- end
143
-
144
- context 'when sessions are not supported' do
145
- max_server_version '3.4'
146
-
147
- let(:session) do
148
- nil
149
- end
150
-
151
- it 'does not add a session id to the operation' do
152
- expect(Mongo::Session).not_to receive(:new)
153
- subscriber.clear_events!
154
- operation
155
- subscriber.non_auth_command_started_events.length.should == 1
156
- expect(subscriber.non_auth_command_started_events.collect(&:command).collect { |cmd| cmd['lsid'] }.compact).to be_empty
157
- end
158
- end
159
- end
160
-
161
- shared_examples 'an implicit session with an unacknowledged write' do
162
-
163
- context 'when sessions are supported' do
164
- min_server_fcv '3.6'
165
-
166
- it 'does not add a session id to the operation' do
167
- subscriber.clear_events!
168
- operation
169
- subscriber.non_auth_command_started_events.length.should == 1
170
- expect(subscriber.non_auth_command_started_events.collect(&:command).collect { |cmd| cmd['lsid'] }.compact).to be_empty
171
- end
172
- end
173
-
174
- context 'when sessions are not supported' do
175
- max_server_version '3.4'
176
-
177
- it 'does not add a session id to the operation' do
178
- subscriber.clear_events!
179
- operation
180
- subscriber.non_auth_command_started_events.length.should == 1
181
- expect(subscriber.non_auth_command_started_events.collect(&:command).collect { |cmd| cmd['lsid'] }.compact).to be_empty
182
- end
183
- end
184
- end
185
-
186
- shared_examples 'an operation supporting causally consistent reads' do
187
-
188
- let(:subscriber) { Mrss::EventSubscriber.new }
189
-
190
- let(:client) do
191
- authorized_client.tap do |client|
192
- client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
193
- end
194
- end
195
-
196
- context 'when connected to a standalone' do
197
- min_server_fcv '3.6'
198
- require_topology :single
199
-
200
- context 'when the collection specifies a read concern' do
201
-
202
- let(:collection) do
203
- client[TEST_COLL, read_concern: { level: 'majority' }]
204
- end
205
-
206
- context 'when the session has causal_consistency set to true' do
207
-
208
- let(:session) do
209
- client.start_session(causal_consistency: true)
210
- end
211
-
212
- it 'does not add the afterClusterTime to the read concern in the command' do
213
- expect(command['readConcern']['afterClusterTime']).to be_nil
214
- end
215
- end
216
-
217
- context 'when the session has causal_consistency set to false' do
218
-
219
- let(:session) do
220
- client.start_session(causal_consistency: false)
221
- end
222
-
223
- it 'does not add the afterClusterTime to the read concern in the command' do
224
- expect(command['readConcern']['afterClusterTime']).to be_nil
225
- end
226
- end
227
-
228
- context 'when the session has causal_consistency not set' do
229
-
230
- let(:session) do
231
- client.start_session
232
- end
233
-
234
- it 'does not add the afterClusterTime to the read concern in the command' do
235
- expect(command['readConcern']['afterClusterTime']).to be_nil
236
- end
237
- end
238
- end
239
-
240
- context 'when the collection does not specify a read concern' do
241
-
242
- let(:collection) do
243
- client[TEST_COLL]
244
- end
245
-
246
- context 'when the session has causal_consistency set to true' do
247
-
248
- let(:session) do
249
- client.start_session(causal_consistency: true)
250
- end
251
-
252
- it 'does not include the read concern in the command' do
253
- expect(command['readConcern']).to be_nil
254
- end
255
- end
256
-
257
- context 'when the session has causal_consistency set to false' do
258
-
259
- let(:session) do
260
- client.start_session(causal_consistency: false)
261
- end
262
-
263
- it 'does not include the read concern in the command' do
264
- expect(command['readConcern']).to be_nil
265
- end
266
- end
267
-
268
- context 'when the session has causal_consistency not set' do
269
-
270
- let(:session) do
271
- client.start_session
272
- end
273
-
274
- it 'does not include the read concern in the command' do
275
- expect(command['readConcern']).to be_nil
276
- end
277
- end
278
- end
279
- end
280
-
281
- context 'when connected to replica set or sharded cluster' do
282
- min_server_fcv '3.6'
283
- require_topology :replica_set, :sharded
284
-
285
- context 'when the collection specifies a read concern' do
286
-
287
- let(:collection) do
288
- client[TEST_COLL, read_concern: { level: 'majority' }]
289
- end
290
-
291
- context 'when the session has causal_consistency set to true' do
292
-
293
- let(:session) do
294
- client.start_session(causal_consistency: true)
295
- end
296
-
297
- context 'when the session has an operation time' do
298
-
299
- before do
300
- client.database.command({ ping: 1 }, session: session)
301
- end
302
-
303
- let!(:operation_time) do
304
- session.operation_time
305
- end
306
-
307
- let(:expected_read_concern) do
308
- BSON::Document.new(level: 'majority', afterClusterTime: operation_time)
309
- end
310
-
311
- it 'merges the afterClusterTime with the read concern in the command' do
312
- expect(command['readConcern']).to eq(expected_read_concern)
313
- end
314
- end
315
-
316
- context 'when the session does not have an operation time' do
317
-
318
- let(:expected_read_concern) do
319
- BSON::Document.new(level: 'majority')
320
- end
321
-
322
- it 'leaves the read concern document unchanged' do
323
- expect(command['readConcern']).to eq(expected_read_concern)
324
- end
325
- end
326
-
327
- context 'when the operation time is advanced' do
328
-
329
- before do
330
- session.advance_operation_time(operation_time)
331
- end
332
-
333
- let(:operation_time) do
334
- BSON::Timestamp.new(0, 1)
335
- end
336
-
337
- let(:expected_read_concern) do
338
- BSON::Document.new(level: 'majority', afterClusterTime: operation_time)
339
- end
340
-
341
- it 'merges the afterClusterTime with the new operation time and read concern in the command' do
342
- expect(command['readConcern']).to eq(expected_read_concern)
343
- end
344
- end
345
- end
346
-
347
- context 'when the session has causal_consistency set to false' do
348
-
349
- let(:session) do
350
- client.start_session(causal_consistency: false)
351
- end
352
-
353
- context 'when the session does not have an operation time' do
354
-
355
- let(:expected_read_concern) do
356
- BSON::Document.new(level: 'majority')
357
- end
358
-
359
- it 'leaves the read concern document unchanged' do
360
- expect(command['readConcern']).to eq(expected_read_concern)
361
- end
362
- end
363
-
364
- context 'when the session has an operation time' do
365
-
366
- before do
367
- client.database.command({ ping: 1 }, session: session)
368
- end
369
-
370
- let(:expected_read_concern) do
371
- BSON::Document.new(level: 'majority')
372
- end
373
-
374
- it 'leaves the read concern document unchanged' do
375
- expect(command['readConcern']).to eq(expected_read_concern)
376
- end
377
- end
378
-
379
- context 'when the operation time is advanced' do
380
-
381
- before do
382
- session.advance_operation_time(operation_time)
383
- end
384
-
385
- let(:operation_time) do
386
- BSON::Timestamp.new(0, 1)
387
- end
388
-
389
- let(:expected_read_concern) do
390
- BSON::Document.new(level: 'majority')
391
- end
392
-
393
- it 'leaves the read concern document unchanged' do
394
- expect(command['readConcern']).to eq(expected_read_concern)
395
- end
396
- end
397
- end
398
-
399
- context 'when the session has causal_consistency not set' do
400
-
401
- let(:session) do
402
- client.start_session
403
- end
404
-
405
- context 'when the session does not have an operation time' do
406
-
407
- let(:expected_read_concern) do
408
- BSON::Document.new(level: 'majority')
409
- end
410
-
411
- it 'leaves the read concern document unchanged' do
412
- expect(command['readConcern']).to eq(expected_read_concern)
413
- end
414
- end
415
-
416
- context 'when the session has an operation time' do
417
-
418
- before do
419
- client.database.command({ ping: 1 }, session: session)
420
- end
421
-
422
- let!(:operation_time) do
423
- session.operation_time
424
- end
425
-
426
- let(:expected_read_concern) do
427
- BSON::Document.new(level: 'majority', afterClusterTime: operation_time)
428
- end
429
-
430
- it 'merges the afterClusterTime with the new operation time and read concern in the command' do
431
- expect(command['readConcern']).to eq(expected_read_concern)
432
- end
433
- end
434
-
435
- context 'when the operation time is advanced' do
436
-
437
- before do
438
- session.advance_operation_time(operation_time)
439
- end
440
-
441
- let(:operation_time) do
442
- BSON::Timestamp.new(0, 1)
443
- end
444
-
445
- let(:expected_read_concern) do
446
- BSON::Document.new(level: 'majority', afterClusterTime: operation_time)
447
- end
448
-
449
- it 'merges the afterClusterTime with the new operation time and read concern in the command' do
450
- expect(command['readConcern']).to eq(expected_read_concern)
451
- end
452
- end
453
- end
454
- end
455
-
456
- context 'when the collection does not specify a read concern' do
457
-
458
- let(:collection) do
459
- client[TEST_COLL]
460
- end
461
-
462
- context 'when the session has causal_consistency set to true' do
463
-
464
- let(:session) do
465
- client.start_session(causal_consistency: true)
466
- end
467
-
468
- context 'when the session does not have an operation time' do
469
-
470
- it 'does not include the read concern in the command' do
471
- expect(command['readConcern']).to be_nil
472
- end
473
- end
474
-
475
- context 'when the session has an operation time' do
476
-
477
- before do
478
- client.database.command({ ping: 1 }, session: session)
479
- end
480
-
481
- let!(:operation_time) do
482
- session.operation_time
483
- end
484
-
485
- let(:expected_read_concern) do
486
- BSON::Document.new(afterClusterTime: operation_time)
487
- end
488
-
489
- it 'merges the afterClusterTime with the read concern in the command' do
490
- expect(command['readConcern']).to eq(expected_read_concern)
491
- end
492
- end
493
-
494
- context 'when the operation time is advanced' do
495
-
496
- before do
497
- session.advance_operation_time(operation_time)
498
- end
499
-
500
- let(:operation_time) do
501
- BSON::Timestamp.new(0, 1)
502
- end
503
-
504
- let(:expected_read_concern) do
505
- BSON::Document.new(afterClusterTime: operation_time)
506
- end
507
-
508
- it 'merges the afterClusterTime with the new operation time in the command' do
509
- expect(command['readConcern']).to eq(expected_read_concern)
510
- end
511
- end
512
- end
513
-
514
- context 'when the session has causal_consistency set to false' do
515
-
516
- let(:session) do
517
- client.start_session(causal_consistency: false)
518
- end
519
-
520
- context 'when the session does not have an operation time' do
521
-
522
- it 'does not include the read concern in the command' do
523
- expect(command['readConcern']).to be_nil
524
- end
525
- end
526
-
527
- context 'when the session has an operation time' do
528
-
529
- before do
530
- client.database.command({ ping: 1 }, session: session)
531
- end
532
-
533
- it 'does not include the read concern in the command' do
534
- expect(command['readConcern']).to be_nil
535
- end
536
- end
537
-
538
- context 'when the operation time is advanced' do
539
-
540
- before do
541
- session.advance_operation_time(operation_time)
542
- end
543
-
544
- let(:operation_time) do
545
- BSON::Timestamp.new(0, 1)
546
- end
547
-
548
- let(:expected_read_concern) do
549
- BSON::Document.new(afterClusterTime: operation_time)
550
- end
551
-
552
- it 'does not include the read concern in the command' do
553
- expect(command['readConcern']).to be_nil
554
- end
555
- end
556
- end
557
-
558
- context 'when the session has causal_consistency not set' do
559
-
560
- let(:session) do
561
- client.start_session
562
- end
563
-
564
- context 'when the session does not have an operation time' do
565
-
566
- it 'does not include the read concern in the command' do
567
- expect(command['readConcern']).to be_nil
568
- end
569
- end
570
-
571
- context 'when the session has an operation time' do
572
-
573
- before do
574
- client.database.command({ ping: 1 }, session: session)
575
- end
576
-
577
- let!(:operation_time) do
578
- session.operation_time
579
- end
580
-
581
- let(:expected_read_concern) do
582
- BSON::Document.new(afterClusterTime: operation_time)
583
- end
584
-
585
- it 'merges the afterClusterTime with the read concern in the command' do
586
- expect(command['readConcern']).to eq(expected_read_concern)
587
- end
588
- end
589
-
590
- context 'when the operation time is advanced' do
591
-
592
- before do
593
- session.advance_operation_time(operation_time)
594
- end
595
-
596
- let(:operation_time) do
597
- BSON::Timestamp.new(0, 1)
598
- end
599
-
600
- let(:expected_read_concern) do
601
- BSON::Document.new(afterClusterTime: operation_time)
602
- end
603
-
604
- it 'merges the afterClusterTime with the new operation time in the command' do
605
- expect(command['readConcern']).to eq(expected_read_concern)
606
- end
607
- end
608
- end
609
- end
610
- end
611
- end
612
-
613
- # Since background operatons can advance cluster time, exact cluster time
614
- # comparisons sometimes fail. Work around this by retrying the tests.
615
- shared_examples 'an operation updating cluster time' do
616
-
617
- let(:cluster) do
618
- client.cluster
619
- end
620
-
621
- let(:session) do
622
- client.start_session
623
- end
624
-
625
- let(:subscriber) { Mrss::EventSubscriber.new }
626
-
627
- let(:client) do
628
- authorized_client.tap do |client|
629
- client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
630
- end
631
- end
632
-
633
- shared_examples_for 'does not update the cluster time of the cluster' do
634
- retry_test
635
- it 'does not update the cluster time of the cluster' do
636
- bct = before_cluster_time
637
- reply_cluster_time
638
- expect(client.cluster.cluster_time).to eq(before_cluster_time)
639
- end
640
- end
641
-
642
- context 'when the command is run once' do
643
-
644
- context 'when the server is version 3.6' do
645
- min_server_fcv '3.6'
646
-
647
- context 'when the cluster is sharded or a replica set' do
648
- retry_test
649
- require_topology :replica_set, :sharded
650
-
651
- let(:reply_cluster_time) do
652
- operation_with_session
653
- subscriber.succeeded_events[-1].reply['$clusterTime']
654
- end
655
-
656
- it 'updates the cluster time of the cluster' do
657
- rct = reply_cluster_time
658
- expect(cluster.cluster_time).to eq(rct)
659
- end
660
-
661
- it 'updates the cluster time of the session' do
662
- rct = reply_cluster_time
663
- expect(session.cluster_time).to eq(rct)
664
- end
665
- end
666
-
667
- context 'when the server is a standalone' do
668
- require_topology :single
669
-
670
- let(:before_cluster_time) do
671
- client.cluster.cluster_time
672
- end
673
-
674
- let!(:reply_cluster_time) do
675
- operation_with_session
676
- subscriber.succeeded_events[-1].reply['$clusterTime']
677
- end
678
-
679
- it_behaves_like 'does not update the cluster time of the cluster'
680
-
681
- retry_test
682
- it 'does not update the cluster time of the session' do
683
- reply_cluster_time
684
- expect(session.cluster_time).to be_nil
685
- end
686
- end
687
- end
688
-
689
- context 'when the server is less than version 3.6' do
690
- max_server_version '3.4'
691
-
692
- let(:before_cluster_time) do
693
- client.cluster.cluster_time
694
- end
695
-
696
- let(:reply_cluster_time) do
697
- operation
698
- subscriber.succeeded_events[-1].reply['$clusterTime']
699
- end
700
-
701
- it_behaves_like 'does not update the cluster time of the cluster'
702
- end
703
- end
704
-
705
- context 'when the command is run twice' do
706
-
707
- let(:reply_cluster_time) do
708
- operation_with_session
709
- subscriber.succeeded_events[-1].reply['$clusterTime']
710
- end
711
-
712
- context 'when the cluster is sharded or a replica set' do
713
- min_server_fcv '3.6'
714
- require_topology :replica_set, :sharded
715
-
716
- context 'when the session cluster time is advanced' do
717
-
718
- before do
719
- session.advance_cluster_time(advanced_cluster_time)
720
- end
721
-
722
- let(:second_command_cluster_time) do
723
- second_operation
724
- subscriber.non_auth_command_started_events[-1].command['$clusterTime']
725
- end
726
-
727
- context 'when the advanced cluster time is greater than the existing cluster time' do
728
-
729
- let(:advanced_cluster_time) do
730
- new_timestamp = BSON::Timestamp.new(reply_cluster_time[Mongo::Cluster::CLUSTER_TIME].seconds,
731
- reply_cluster_time[Mongo::Cluster::CLUSTER_TIME].increment + 1)
732
- new_cluster_time = reply_cluster_time.dup
733
- new_cluster_time.merge(Mongo::Cluster::CLUSTER_TIME => new_timestamp)
734
- end
735
-
736
- retry_test
737
- it 'includes the advanced cluster time in the second command' do
738
- expect(second_command_cluster_time).to eq(advanced_cluster_time)
739
- end
740
- end
741
-
742
- context 'when the advanced cluster time is not greater than the existing cluster time' do
743
-
744
- let(:advanced_cluster_time) do
745
- expect(reply_cluster_time[Mongo::Cluster::CLUSTER_TIME].increment > 0).to be true
746
-
747
- new_timestamp = BSON::Timestamp.new(reply_cluster_time[Mongo::Cluster::CLUSTER_TIME].seconds,
748
- reply_cluster_time[Mongo::Cluster::CLUSTER_TIME].increment - 1)
749
- new_cluster_time = reply_cluster_time.dup
750
- new_cluster_time.merge(Mongo::Cluster::CLUSTER_TIME => new_timestamp)
751
- end
752
-
753
- retry_test
754
- it 'does not advance the cluster time' do
755
- expect(second_command_cluster_time).to eq(reply_cluster_time)
756
- end
757
- end
758
- end
759
-
760
- context 'when the session cluster time is not advanced' do
761
-
762
- let(:second_command_cluster_time) do
763
- second_operation
764
- subscriber.non_auth_command_started_events[-1].command['$clusterTime']
765
- end
766
-
767
- retry_test
768
- it 'includes the received cluster time in the second command' do
769
- reply_cluster_time
770
- expect(second_command_cluster_time).to eq(reply_cluster_time)
771
- end
772
- end
773
- end
774
-
775
- context 'when the server is a standalone' do
776
- min_server_fcv '3.6'
777
- require_topology :single
778
-
779
- let(:before_cluster_time) do
780
- client.cluster.cluster_time
781
- end
782
-
783
- let(:second_command_cluster_time) do
784
- second_operation
785
- subscriber.non_auth_command_started_events[-1].command['$clusterTime']
786
- end
787
-
788
- it 'does not update the cluster time of the cluster' do
789
- bct = before_cluster_time
790
- second_command_cluster_time
791
- expect(client.cluster.cluster_time).to eq(bct)
792
- end
793
- end
794
- end
795
-
796
- context 'when the server is less than version 3.6' do
797
- max_server_version '3.4'
798
-
799
- let(:before_cluster_time) do
800
- client.cluster.cluster_time
801
- end
802
-
803
- it 'does not update the cluster time of the cluster' do
804
- bct = before_cluster_time
805
- operation
806
- expect(client.cluster.cluster_time).to eq(bct)
807
- end
808
- end
809
- end
810
-
811
- shared_examples 'an operation not using a session' do
812
- min_server_fcv '3.6'
813
-
814
- describe 'operation execution' do
815
-
816
- context 'when the client has a session' do
817
-
818
- let(:session) do
819
- client.start_session
820
- end
821
-
822
- let(:server_session) do
823
- session.instance_variable_get(:@server_session)
824
- end
825
-
826
- let!(:before_last_use) do
827
- server_session.last_use
828
- end
829
-
830
- let!(:before_operation_time) do
831
- session.operation_time
832
- end
833
-
834
- let!(:operation_result) do
835
- operation
836
- end
837
-
838
- after do
839
- session.end_session
840
- end
841
-
842
- it 'does not send session id in command' do
843
- expect(command).not_to have_key('lsid')
844
- end
845
-
846
- it 'does not update the last use value' do
847
- expect(server_session.last_use).to eq(before_last_use)
848
- end
849
-
850
- it 'does not update the operation time value' do
851
- expect(session.operation_time).to eq(before_operation_time)
852
- end
853
-
854
- it 'does not close the session when the operation completes' do
855
- expect(session.ended?).to be(false)
856
- end
857
- end
858
-
859
- context 'when the session is ended before it is used' do
860
- let(:session) do
861
- client.start_session
862
- end
863
-
864
- before do
865
- session.end_session
866
- end
867
-
868
- let(:operation_result) do
869
- operation
870
- end
871
-
872
- it 'does not raise an exception' do
873
- expect {
874
- operation_result
875
- }.not_to raise_exception
876
- end
877
- end
878
- end
879
- end
880
-
881
- shared_examples 'a failed operation not using a session' do
882
- min_server_fcv '3.6'
883
-
884
- context 'when the operation fails' do
885
-
886
- let!(:before_last_use) do
887
- session.instance_variable_get(:@server_session).last_use
888
- end
889
-
890
- let!(:before_operation_time) do
891
- session.operation_time
892
- end
893
-
894
- let!(:operation_result) do
895
- sleep 0.2
896
- begin; failed_operation; rescue => e; e; end
897
- end
898
-
899
- let(:session) do
900
- client.start_session
901
- end
902
-
903
- it 'raises an error' do
904
- expect([Mongo::Error::OperationFailure,
905
- Mongo::Error::BulkWriteError]).to include(operation_result.class)
906
- end
907
-
908
- it 'does not update the last use value' do
909
- expect(session.instance_variable_get(:@server_session).last_use).to eq(before_last_use)
910
- end
911
-
912
- it 'does not update the operation time value' do
913
- expect(session.operation_time).to eq(before_operation_time)
914
- end
915
- end
916
- end