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