mongo 2.20.1 → 2.21.1

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