mongo 2.12.4 → 2.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (854) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/CONTRIBUTING.md +8 -36
  5. data/LICENSE +1 -1
  6. data/README.md +54 -54
  7. data/Rakefile +16 -10
  8. data/lib/mongo.rb +8 -3
  9. data/lib/mongo/active_support.rb +1 -1
  10. data/lib/mongo/address.rb +40 -13
  11. data/lib/mongo/address/ipv4.rb +32 -5
  12. data/lib/mongo/address/ipv6.rb +32 -5
  13. data/lib/mongo/address/unix.rb +3 -3
  14. data/lib/mongo/address/validator.rb +1 -1
  15. data/lib/mongo/auth.rb +36 -13
  16. data/lib/mongo/auth/aws.rb +37 -0
  17. data/lib/mongo/auth/aws/conversation.rb +128 -0
  18. data/lib/mongo/auth/aws/credentials_retriever.rb +219 -0
  19. data/lib/mongo/auth/aws/request.rb +283 -0
  20. data/lib/mongo/auth/base.rb +129 -0
  21. data/lib/mongo/auth/conversation_base.rb +52 -0
  22. data/lib/mongo/auth/cr.rb +9 -36
  23. data/lib/mongo/auth/cr/conversation.rb +24 -69
  24. data/lib/mongo/auth/credential_cache.rb +1 -1
  25. data/lib/mongo/auth/gssapi.rb +38 -0
  26. data/lib/mongo/auth/gssapi/conversation.rb +108 -0
  27. data/lib/mongo/auth/ldap.rb +9 -34
  28. data/lib/mongo/auth/ldap/conversation.rb +3 -43
  29. data/lib/mongo/auth/roles.rb +1 -1
  30. data/lib/mongo/auth/sasl_conversation_base.rb +111 -0
  31. data/lib/mongo/auth/scram.rb +39 -51
  32. data/lib/mongo/auth/scram/conversation.rb +12 -506
  33. data/lib/mongo/auth/scram256.rb +31 -0
  34. data/lib/mongo/auth/scram256/conversation.rb +63 -0
  35. data/lib/mongo/auth/scram_conversation_base.rb +402 -0
  36. data/lib/mongo/auth/stringprep.rb +5 -4
  37. data/lib/mongo/auth/stringprep/profiles/sasl.rb +2 -1
  38. data/lib/mongo/auth/stringprep/tables.rb +2 -1
  39. data/lib/mongo/auth/stringprep/unicode_normalize/normalize.rb +1 -0
  40. data/lib/mongo/auth/stringprep/unicode_normalize/tables.rb +1 -0
  41. data/lib/mongo/auth/user.rb +2 -2
  42. data/lib/mongo/auth/user/view.rb +1 -1
  43. data/lib/mongo/auth/x509.rb +14 -32
  44. data/lib/mongo/auth/x509/conversation.rb +15 -42
  45. data/lib/mongo/background_thread.rb +11 -2
  46. data/lib/mongo/bson.rb +1 -1
  47. data/lib/mongo/bulk_write.rb +62 -26
  48. data/lib/mongo/bulk_write/combineable.rb +20 -8
  49. data/lib/mongo/bulk_write/ordered_combiner.rb +1 -1
  50. data/lib/mongo/bulk_write/result.rb +1 -1
  51. data/lib/mongo/bulk_write/result_combiner.rb +1 -1
  52. data/lib/mongo/bulk_write/transformable.rb +9 -10
  53. data/lib/mongo/bulk_write/unordered_combiner.rb +1 -1
  54. data/lib/mongo/bulk_write/validatable.rb +5 -1
  55. data/lib/mongo/client.rb +216 -44
  56. data/lib/mongo/client_encryption.rb +1 -1
  57. data/lib/mongo/cluster.rb +177 -69
  58. data/lib/mongo/cluster/periodic_executor.rb +1 -1
  59. data/lib/mongo/cluster/reapers/cursor_reaper.rb +1 -1
  60. data/lib/mongo/cluster/reapers/socket_reaper.rb +1 -1
  61. data/lib/mongo/cluster/sdam_flow.rb +36 -17
  62. data/lib/mongo/cluster/topology.rb +19 -2
  63. data/lib/mongo/cluster/topology/base.rb +1 -1
  64. data/lib/mongo/cluster/topology/no_replica_set_options.rb +1 -1
  65. data/lib/mongo/cluster/topology/replica_set_no_primary.rb +4 -3
  66. data/lib/mongo/cluster/topology/replica_set_with_primary.rb +1 -1
  67. data/lib/mongo/cluster/topology/sharded.rb +2 -2
  68. data/lib/mongo/cluster/topology/single.rb +2 -2
  69. data/lib/mongo/cluster/topology/unknown.rb +1 -1
  70. data/lib/mongo/cluster_time.rb +1 -1
  71. data/lib/mongo/collection.rb +41 -21
  72. data/lib/mongo/collection/view.rb +6 -2
  73. data/lib/mongo/collection/view/aggregation.rb +6 -3
  74. data/lib/mongo/collection/view/builder.rb +1 -1
  75. data/lib/mongo/collection/view/builder/aggregation.rb +1 -1
  76. data/lib/mongo/collection/view/builder/find_command.rb +9 -1
  77. data/lib/mongo/collection/view/builder/flags.rb +1 -1
  78. data/lib/mongo/collection/view/builder/map_reduce.rb +1 -1
  79. data/lib/mongo/collection/view/builder/modifiers.rb +1 -1
  80. data/lib/mongo/collection/view/builder/op_query.rb +1 -1
  81. data/lib/mongo/collection/view/change_stream.rb +3 -6
  82. data/lib/mongo/collection/view/change_stream/retryable.rb +1 -1
  83. data/lib/mongo/collection/view/explainable.rb +1 -1
  84. data/lib/mongo/collection/view/immutable.rb +1 -1
  85. data/lib/mongo/collection/view/iterable.rb +8 -2
  86. data/lib/mongo/collection/view/map_reduce.rb +7 -4
  87. data/lib/mongo/collection/view/readable.rb +10 -2
  88. data/lib/mongo/collection/view/writable.rb +93 -13
  89. data/lib/mongo/crypt.rb +1 -1
  90. data/lib/mongo/crypt/auto_decryption_context.rb +1 -1
  91. data/lib/mongo/crypt/auto_encrypter.rb +1 -1
  92. data/lib/mongo/crypt/auto_encryption_context.rb +1 -1
  93. data/lib/mongo/crypt/binary.rb +1 -1
  94. data/lib/mongo/crypt/binding.rb +1 -1
  95. data/lib/mongo/crypt/context.rb +1 -1
  96. data/lib/mongo/crypt/data_key_context.rb +1 -1
  97. data/lib/mongo/crypt/encryption_io.rb +41 -24
  98. data/lib/mongo/crypt/explicit_decryption_context.rb +1 -1
  99. data/lib/mongo/crypt/explicit_encrypter.rb +1 -1
  100. data/lib/mongo/crypt/explicit_encryption_context.rb +1 -1
  101. data/lib/mongo/crypt/handle.rb +1 -1
  102. data/lib/mongo/crypt/hooks.rb +1 -1
  103. data/lib/mongo/crypt/kms_context.rb +1 -1
  104. data/lib/mongo/crypt/status.rb +1 -1
  105. data/lib/mongo/cursor.rb +3 -3
  106. data/lib/mongo/cursor/builder.rb +1 -1
  107. data/lib/mongo/cursor/builder/get_more_command.rb +1 -1
  108. data/lib/mongo/cursor/builder/kill_cursors_command.rb +1 -1
  109. data/lib/mongo/cursor/builder/op_get_more.rb +1 -1
  110. data/lib/mongo/cursor/builder/op_kill_cursors.rb +1 -1
  111. data/lib/mongo/database.rb +35 -5
  112. data/lib/mongo/database/view.rb +21 -6
  113. data/lib/mongo/dbref.rb +1 -1
  114. data/lib/mongo/distinguishing_semaphore.rb +55 -0
  115. data/lib/mongo/error.rb +28 -2
  116. data/lib/mongo/error/auth_error.rb +1 -1
  117. data/lib/mongo/error/bulk_write_error.rb +1 -1
  118. data/lib/mongo/error/change_stream_resumable.rb +1 -1
  119. data/lib/mongo/error/closed_stream.rb +1 -1
  120. data/lib/mongo/error/connection_check_out_timeout.rb +1 -1
  121. data/lib/mongo/error/connection_perished.rb +23 -0
  122. data/lib/mongo/error/credential_check_error.rb +26 -0
  123. data/lib/mongo/error/extra_file_chunk.rb +1 -1
  124. data/lib/mongo/error/file_not_found.rb +1 -1
  125. data/lib/mongo/error/handshake_error.rb +1 -1
  126. data/lib/mongo/error/insufficient_iteration_count.rb +1 -1
  127. data/lib/mongo/error/invalid_address.rb +1 -1
  128. data/lib/mongo/error/invalid_application_name.rb +1 -1
  129. data/lib/mongo/error/invalid_bulk_operation.rb +1 -1
  130. data/lib/mongo/error/invalid_bulk_operation_type.rb +1 -1
  131. data/lib/mongo/error/invalid_collection_name.rb +1 -1
  132. data/lib/mongo/error/invalid_cursor_operation.rb +1 -1
  133. data/lib/mongo/error/invalid_database_name.rb +1 -1
  134. data/lib/mongo/error/invalid_document.rb +1 -1
  135. data/lib/mongo/error/invalid_file.rb +1 -1
  136. data/lib/mongo/error/invalid_file_revision.rb +1 -1
  137. data/lib/mongo/error/invalid_min_pool_size.rb +1 -1
  138. data/lib/mongo/error/invalid_nonce.rb +2 -2
  139. data/lib/mongo/error/invalid_read_option.rb +1 -1
  140. data/lib/mongo/error/invalid_replacement_document.rb +1 -1
  141. data/lib/mongo/error/invalid_server_auth_host.rb +22 -0
  142. data/lib/mongo/error/invalid_server_auth_response.rb +23 -0
  143. data/lib/mongo/error/invalid_server_preference.rb +6 -1
  144. data/lib/mongo/error/invalid_session.rb +3 -2
  145. data/lib/mongo/error/invalid_signature.rb +1 -1
  146. data/lib/mongo/error/invalid_transaction_operation.rb +1 -1
  147. data/lib/mongo/error/invalid_txt_record.rb +1 -1
  148. data/lib/mongo/error/invalid_update_document.rb +1 -1
  149. data/lib/mongo/error/invalid_uri.rb +1 -1
  150. data/lib/mongo/error/invalid_write_concern.rb +1 -1
  151. data/lib/mongo/error/lint_error.rb +1 -1
  152. data/lib/mongo/error/max_bson_size.rb +1 -1
  153. data/lib/mongo/error/max_message_size.rb +1 -1
  154. data/lib/mongo/error/mismatched_domain.rb +1 -1
  155. data/lib/mongo/error/missing_file_chunk.rb +1 -1
  156. data/lib/mongo/error/missing_password.rb +1 -1
  157. data/lib/mongo/error/missing_resume_token.rb +1 -1
  158. data/lib/mongo/error/missing_scram_server_signature.rb +27 -0
  159. data/lib/mongo/error/multi_index_drop.rb +1 -1
  160. data/lib/mongo/error/need_primary_server.rb +1 -1
  161. data/lib/mongo/error/no_server_available.rb +1 -1
  162. data/lib/mongo/error/no_srv_records.rb +1 -1
  163. data/lib/mongo/error/notable.rb +18 -3
  164. data/lib/mongo/error/operation_failure.rb +68 -49
  165. data/lib/mongo/error/parser.rb +16 -5
  166. data/lib/mongo/error/pool_closed_error.rb +1 -1
  167. data/lib/mongo/error/raise_original_error.rb +29 -0
  168. data/lib/mongo/error/session_ended.rb +1 -1
  169. data/lib/mongo/error/sessions_not_supported.rb +35 -0
  170. data/lib/mongo/error/socket_error.rb +1 -1
  171. data/lib/mongo/error/socket_timeout_error.rb +1 -1
  172. data/lib/mongo/error/unchangeable_collection_option.rb +1 -1
  173. data/lib/mongo/error/unexpected_chunk_length.rb +1 -1
  174. data/lib/mongo/error/unexpected_response.rb +1 -1
  175. data/lib/mongo/error/unknown_payload_type.rb +1 -1
  176. data/lib/mongo/error/unsupported_array_filters.rb +7 -2
  177. data/lib/mongo/error/unsupported_collation.rb +7 -2
  178. data/lib/mongo/error/unsupported_features.rb +1 -1
  179. data/lib/mongo/error/unsupported_message_type.rb +1 -1
  180. data/lib/mongo/error/unsupported_option.rb +99 -0
  181. data/lib/mongo/error/write_retryable.rb +1 -1
  182. data/lib/mongo/event.rb +1 -1
  183. data/lib/mongo/event/base.rb +7 -1
  184. data/lib/mongo/event/listeners.rb +1 -1
  185. data/lib/mongo/event/publisher.rb +1 -1
  186. data/lib/mongo/event/subscriber.rb +1 -1
  187. data/lib/mongo/grid.rb +1 -1
  188. data/lib/mongo/grid/file.rb +1 -1
  189. data/lib/mongo/grid/file/chunk.rb +1 -1
  190. data/lib/mongo/grid/file/info.rb +1 -1
  191. data/lib/mongo/grid/fs_bucket.rb +9 -4
  192. data/lib/mongo/grid/stream.rb +1 -1
  193. data/lib/mongo/grid/stream/read.rb +1 -1
  194. data/lib/mongo/grid/stream/write.rb +1 -1
  195. data/lib/mongo/id.rb +1 -1
  196. data/lib/mongo/index.rb +2 -1
  197. data/lib/mongo/index/view.rb +61 -11
  198. data/lib/mongo/lint.rb +10 -0
  199. data/lib/mongo/loggable.rb +1 -1
  200. data/lib/mongo/logger.rb +1 -1
  201. data/lib/mongo/monitoring.rb +39 -1
  202. data/lib/mongo/monitoring/cmap_log_subscriber.rb +1 -1
  203. data/lib/mongo/monitoring/command_log_subscriber.rb +20 -5
  204. data/lib/mongo/monitoring/event.rb +1 -1
  205. data/lib/mongo/monitoring/event/cmap.rb +1 -1
  206. data/lib/mongo/monitoring/event/cmap/base.rb +1 -1
  207. data/lib/mongo/monitoring/event/cmap/connection_check_out_failed.rb +1 -1
  208. data/lib/mongo/monitoring/event/cmap/connection_check_out_started.rb +1 -1
  209. data/lib/mongo/monitoring/event/cmap/connection_checked_in.rb +1 -1
  210. data/lib/mongo/monitoring/event/cmap/connection_checked_out.rb +1 -1
  211. data/lib/mongo/monitoring/event/cmap/connection_closed.rb +1 -1
  212. data/lib/mongo/monitoring/event/cmap/connection_created.rb +1 -1
  213. data/lib/mongo/monitoring/event/cmap/connection_ready.rb +1 -1
  214. data/lib/mongo/monitoring/event/cmap/pool_cleared.rb +1 -1
  215. data/lib/mongo/monitoring/event/cmap/pool_closed.rb +1 -1
  216. data/lib/mongo/monitoring/event/cmap/pool_created.rb +1 -1
  217. data/lib/mongo/monitoring/event/command_failed.rb +12 -1
  218. data/lib/mongo/monitoring/event/command_started.rb +44 -3
  219. data/lib/mongo/monitoring/event/command_succeeded.rb +12 -1
  220. data/lib/mongo/monitoring/event/secure.rb +8 -2
  221. data/lib/mongo/monitoring/event/server_closed.rb +2 -2
  222. data/lib/mongo/monitoring/event/server_description_changed.rb +28 -5
  223. data/lib/mongo/monitoring/event/server_heartbeat_failed.rb +10 -3
  224. data/lib/mongo/monitoring/event/server_heartbeat_started.rb +10 -3
  225. data/lib/mongo/monitoring/event/server_heartbeat_succeeded.rb +10 -3
  226. data/lib/mongo/monitoring/event/server_opening.rb +2 -2
  227. data/lib/mongo/monitoring/event/topology_changed.rb +2 -2
  228. data/lib/mongo/monitoring/event/topology_closed.rb +2 -2
  229. data/lib/mongo/monitoring/event/topology_opening.rb +2 -2
  230. data/lib/mongo/monitoring/publishable.rb +9 -9
  231. data/lib/mongo/monitoring/sdam_log_subscriber.rb +1 -1
  232. data/lib/mongo/monitoring/server_closed_log_subscriber.rb +1 -1
  233. data/lib/mongo/monitoring/server_description_changed_log_subscriber.rb +10 -2
  234. data/lib/mongo/monitoring/server_opening_log_subscriber.rb +1 -1
  235. data/lib/mongo/monitoring/topology_changed_log_subscriber.rb +2 -2
  236. data/lib/mongo/monitoring/topology_closed_log_subscriber.rb +1 -1
  237. data/lib/mongo/monitoring/topology_opening_log_subscriber.rb +1 -1
  238. data/lib/mongo/monitoring/unified_sdam_log_subscriber.rb +1 -1
  239. data/lib/mongo/operation.rb +1 -0
  240. data/lib/mongo/operation/aggregate.rb +1 -1
  241. data/lib/mongo/operation/aggregate/command.rb +5 -5
  242. data/lib/mongo/operation/aggregate/op_msg.rb +1 -1
  243. data/lib/mongo/operation/aggregate/result.rb +1 -1
  244. data/lib/mongo/operation/collections_info.rb +3 -36
  245. data/lib/mongo/operation/collections_info/command.rb +40 -0
  246. data/lib/mongo/operation/collections_info/result.rb +1 -1
  247. data/lib/mongo/operation/command.rb +1 -1
  248. data/lib/mongo/operation/command/command.rb +3 -3
  249. data/lib/mongo/operation/command/op_msg.rb +1 -1
  250. data/lib/mongo/operation/count.rb +1 -1
  251. data/lib/mongo/operation/count/command.rb +3 -3
  252. data/lib/mongo/operation/count/op_msg.rb +1 -1
  253. data/lib/mongo/operation/create.rb +1 -1
  254. data/lib/mongo/operation/create/command.rb +3 -3
  255. data/lib/mongo/operation/create/op_msg.rb +1 -1
  256. data/lib/mongo/operation/create_index.rb +1 -1
  257. data/lib/mongo/operation/create_index/command.rb +4 -4
  258. data/lib/mongo/operation/create_index/op_msg.rb +6 -3
  259. data/lib/mongo/operation/create_user.rb +1 -1
  260. data/lib/mongo/operation/create_user/command.rb +4 -4
  261. data/lib/mongo/operation/create_user/op_msg.rb +2 -2
  262. data/lib/mongo/operation/delete.rb +1 -1
  263. data/lib/mongo/operation/delete/bulk_result.rb +1 -1
  264. data/lib/mongo/operation/delete/command.rb +4 -4
  265. data/lib/mongo/operation/delete/legacy.rb +2 -2
  266. data/lib/mongo/operation/delete/op_msg.rb +4 -4
  267. data/lib/mongo/operation/delete/result.rb +2 -2
  268. data/lib/mongo/operation/distinct.rb +1 -1
  269. data/lib/mongo/operation/distinct/command.rb +3 -3
  270. data/lib/mongo/operation/distinct/op_msg.rb +1 -1
  271. data/lib/mongo/operation/drop.rb +1 -1
  272. data/lib/mongo/operation/drop/command.rb +3 -3
  273. data/lib/mongo/operation/drop/op_msg.rb +1 -1
  274. data/lib/mongo/operation/drop_database.rb +1 -1
  275. data/lib/mongo/operation/drop_database/command.rb +3 -3
  276. data/lib/mongo/operation/drop_database/op_msg.rb +1 -1
  277. data/lib/mongo/operation/drop_index.rb +1 -1
  278. data/lib/mongo/operation/drop_index/command.rb +4 -4
  279. data/lib/mongo/operation/drop_index/op_msg.rb +2 -2
  280. data/lib/mongo/operation/explain.rb +1 -1
  281. data/lib/mongo/operation/explain/command.rb +3 -3
  282. data/lib/mongo/operation/explain/legacy.rb +3 -3
  283. data/lib/mongo/operation/explain/op_msg.rb +1 -1
  284. data/lib/mongo/operation/explain/result.rb +1 -1
  285. data/lib/mongo/operation/find.rb +1 -1
  286. data/lib/mongo/operation/find/command.rb +3 -3
  287. data/lib/mongo/operation/find/legacy.rb +3 -3
  288. data/lib/mongo/operation/find/legacy/result.rb +1 -1
  289. data/lib/mongo/operation/find/op_msg.rb +2 -12
  290. data/lib/mongo/operation/find/result.rb +1 -1
  291. data/lib/mongo/operation/get_more.rb +1 -1
  292. data/lib/mongo/operation/get_more/command.rb +3 -3
  293. data/lib/mongo/operation/get_more/legacy.rb +2 -2
  294. data/lib/mongo/operation/get_more/op_msg.rb +2 -12
  295. data/lib/mongo/operation/get_more/result.rb +1 -1
  296. data/lib/mongo/operation/indexes.rb +1 -1
  297. data/lib/mongo/operation/indexes/command.rb +3 -3
  298. data/lib/mongo/operation/indexes/legacy.rb +4 -4
  299. data/lib/mongo/operation/indexes/op_msg.rb +1 -1
  300. data/lib/mongo/operation/indexes/result.rb +1 -1
  301. data/lib/mongo/operation/insert.rb +3 -2
  302. data/lib/mongo/operation/insert/bulk_result.rb +6 -2
  303. data/lib/mongo/operation/insert/command.rb +7 -7
  304. data/lib/mongo/operation/insert/legacy.rb +9 -5
  305. data/lib/mongo/operation/insert/op_msg.rb +6 -6
  306. data/lib/mongo/operation/insert/result.rb +7 -4
  307. data/lib/mongo/operation/kill_cursors.rb +1 -1
  308. data/lib/mongo/operation/kill_cursors/command.rb +3 -3
  309. data/lib/mongo/operation/kill_cursors/legacy.rb +2 -2
  310. data/lib/mongo/operation/kill_cursors/op_msg.rb +1 -1
  311. data/lib/mongo/operation/list_collections.rb +1 -1
  312. data/lib/mongo/operation/list_collections/command.rb +4 -4
  313. data/lib/mongo/operation/list_collections/op_msg.rb +2 -2
  314. data/lib/mongo/operation/list_collections/result.rb +1 -1
  315. data/lib/mongo/operation/map_reduce.rb +1 -1
  316. data/lib/mongo/operation/map_reduce/command.rb +3 -3
  317. data/lib/mongo/operation/map_reduce/op_msg.rb +1 -1
  318. data/lib/mongo/operation/map_reduce/result.rb +1 -1
  319. data/lib/mongo/operation/op_msg_base.rb +3 -3
  320. data/lib/mongo/operation/parallel_scan.rb +1 -1
  321. data/lib/mongo/operation/parallel_scan/command.rb +5 -5
  322. data/lib/mongo/operation/parallel_scan/op_msg.rb +2 -2
  323. data/lib/mongo/operation/parallel_scan/result.rb +1 -1
  324. data/lib/mongo/operation/remove_user.rb +1 -1
  325. data/lib/mongo/operation/remove_user/command.rb +4 -4
  326. data/lib/mongo/operation/remove_user/op_msg.rb +2 -2
  327. data/lib/mongo/operation/result.rb +28 -4
  328. data/lib/mongo/operation/shared/bypass_document_validation.rb +10 -4
  329. data/lib/mongo/operation/shared/causal_consistency_supported.rb +3 -3
  330. data/lib/mongo/operation/shared/collections_info_or_list_collections.rb +56 -0
  331. data/lib/mongo/operation/shared/executable.rb +46 -28
  332. data/lib/mongo/operation/shared/executable_no_validate.rb +3 -3
  333. data/lib/mongo/operation/shared/executable_transaction_label.rb +1 -1
  334. data/lib/mongo/operation/shared/idable.rb +1 -1
  335. data/lib/mongo/operation/shared/limited.rb +10 -2
  336. data/lib/mongo/operation/shared/object_id_generator.rb +1 -1
  337. data/lib/mongo/operation/shared/op_msg_or_command.rb +7 -5
  338. data/lib/mongo/operation/shared/op_msg_or_find_command.rb +8 -6
  339. data/lib/mongo/operation/shared/op_msg_or_list_indexes_command.rb +8 -6
  340. data/lib/mongo/operation/shared/polymorphic_lookup.rb +1 -1
  341. data/lib/mongo/operation/shared/polymorphic_result.rb +1 -1
  342. data/lib/mongo/operation/shared/read_preference_supported.rb +19 -16
  343. data/lib/mongo/operation/shared/response_handling.rb +83 -8
  344. data/lib/mongo/operation/shared/result/aggregatable.rb +1 -1
  345. data/lib/mongo/operation/shared/result/use_legacy_error_parser.rb +1 -1
  346. data/lib/mongo/operation/shared/sessions_supported.rb +50 -27
  347. data/lib/mongo/operation/shared/specifiable.rb +32 -20
  348. data/lib/mongo/operation/shared/write.rb +25 -19
  349. data/lib/mongo/operation/shared/write_concern_supported.rb +6 -6
  350. data/lib/mongo/operation/update.rb +1 -1
  351. data/lib/mongo/operation/update/bulk_result.rb +1 -1
  352. data/lib/mongo/operation/update/command.rb +4 -4
  353. data/lib/mongo/operation/update/legacy.rb +2 -2
  354. data/lib/mongo/operation/update/legacy/result.rb +1 -1
  355. data/lib/mongo/operation/update/op_msg.rb +4 -4
  356. data/lib/mongo/operation/update/result.rb +2 -2
  357. data/lib/mongo/operation/update_user.rb +1 -1
  358. data/lib/mongo/operation/update_user/command.rb +4 -4
  359. data/lib/mongo/operation/update_user/op_msg.rb +2 -2
  360. data/lib/mongo/operation/users_info.rb +1 -1
  361. data/lib/mongo/operation/users_info/command.rb +4 -4
  362. data/lib/mongo/operation/users_info/op_msg.rb +2 -2
  363. data/lib/mongo/operation/users_info/result.rb +1 -1
  364. data/lib/mongo/options.rb +1 -1
  365. data/lib/mongo/options/mapper.rb +1 -1
  366. data/lib/mongo/options/redacted.rb +1 -1
  367. data/lib/mongo/protocol/bit_vector.rb +1 -1
  368. data/lib/mongo/protocol/compressed.rb +1 -1
  369. data/lib/mongo/protocol/delete.rb +1 -1
  370. data/lib/mongo/protocol/get_more.rb +1 -1
  371. data/lib/mongo/protocol/insert.rb +1 -1
  372. data/lib/mongo/protocol/kill_cursors.rb +1 -1
  373. data/lib/mongo/protocol/message.rb +37 -18
  374. data/lib/mongo/protocol/msg.rb +19 -5
  375. data/lib/mongo/protocol/query.rb +1 -37
  376. data/lib/mongo/protocol/registry.rb +1 -1
  377. data/lib/mongo/protocol/reply.rb +1 -1
  378. data/lib/mongo/protocol/serializers.rb +1 -1
  379. data/lib/mongo/protocol/update.rb +1 -1
  380. data/lib/mongo/retryable.rb +23 -10
  381. data/lib/mongo/semaphore.rb +1 -1
  382. data/lib/mongo/server.rb +40 -8
  383. data/lib/mongo/server/app_metadata.rb +44 -7
  384. data/lib/mongo/server/connection.rb +37 -133
  385. data/lib/mongo/server/connection_base.rb +27 -10
  386. data/lib/mongo/server/connection_common.rb +75 -1
  387. data/lib/mongo/server/connection_pool.rb +20 -1
  388. data/lib/mongo/server/connection_pool/populator.rb +1 -1
  389. data/lib/mongo/server/context.rb +1 -1
  390. data/lib/mongo/server/description.rb +49 -2
  391. data/lib/mongo/server/description/features.rb +12 -3
  392. data/lib/mongo/server/monitor.rb +145 -69
  393. data/lib/mongo/server/monitor/app_metadata.rb +1 -1
  394. data/lib/mongo/server/monitor/connection.rb +110 -80
  395. data/lib/mongo/server/pending_connection.rb +215 -3
  396. data/lib/mongo/server/push_monitor.rb +173 -0
  397. data/{spec/runners/transactions/context.rb → lib/mongo/server/push_monitor/connection.rb} +9 -14
  398. data/lib/mongo/server/round_trip_time_averager.rb +12 -3
  399. data/lib/mongo/server_selector.rb +2 -2
  400. data/lib/mongo/server_selector/{selectable.rb → base.rb} +159 -86
  401. data/lib/mongo/server_selector/nearest.rb +26 -21
  402. data/lib/mongo/server_selector/primary.rb +24 -28
  403. data/lib/mongo/server_selector/primary_preferred.rb +32 -25
  404. data/lib/mongo/server_selector/secondary.rb +26 -21
  405. data/lib/mongo/server_selector/secondary_preferred.rb +29 -34
  406. data/lib/mongo/session.rb +14 -1
  407. data/lib/mongo/session/server_session.rb +1 -1
  408. data/lib/mongo/session/session_pool.rb +1 -1
  409. data/lib/mongo/socket.rb +121 -41
  410. data/lib/mongo/socket/ssl.rb +98 -35
  411. data/lib/mongo/socket/tcp.rb +39 -31
  412. data/lib/mongo/socket/unix.rb +14 -6
  413. data/lib/mongo/srv.rb +1 -1
  414. data/lib/mongo/srv/monitor.rb +1 -1
  415. data/lib/mongo/srv/resolver.rb +1 -1
  416. data/lib/mongo/srv/result.rb +1 -1
  417. data/lib/mongo/timeout.rb +9 -9
  418. data/lib/mongo/topology_version.rb +89 -0
  419. data/lib/mongo/uri.rb +61 -47
  420. data/lib/mongo/uri/srv_protocol.rb +9 -1
  421. data/lib/mongo/utils.rb +62 -0
  422. data/lib/mongo/version.rb +2 -2
  423. data/lib/mongo/write_concern.rb +1 -1
  424. data/lib/mongo/write_concern/acknowledged.rb +1 -1
  425. data/lib/mongo/write_concern/base.rb +1 -1
  426. data/lib/mongo/write_concern/unacknowledged.rb +1 -1
  427. data/mongo.gemspec +1 -1
  428. data/spec/NOTES.aws-auth.md +291 -0
  429. data/spec/README.aws-auth.md +318 -0
  430. data/spec/README.md +64 -17
  431. data/spec/integration/auth_spec.rb +29 -9
  432. data/spec/integration/awaited_ismaster_spec.rb +28 -0
  433. data/spec/integration/aws_auth_request_spec.rb +74 -0
  434. data/spec/integration/aws_credentials_retriever_spec.rb +103 -0
  435. data/spec/integration/change_stream_examples_spec.rb +6 -2
  436. data/spec/integration/change_stream_spec.rb +123 -51
  437. data/spec/integration/check_clean_slate_spec.rb +16 -0
  438. data/spec/integration/client_authentication_options_spec.rb +0 -37
  439. data/spec/integration/client_construction_aws_auth_spec.rb +191 -0
  440. data/spec/integration/client_construction_spec.rb +2 -1
  441. data/spec/integration/client_side_encryption/auto_encryption_bulk_writes_spec.rb +2 -6
  442. data/spec/integration/collection_indexes_prose_spec.rb +55 -0
  443. data/spec/integration/command_monitoring_spec.rb +30 -6
  444. data/spec/integration/command_spec.rb +11 -9
  445. data/spec/integration/connect_single_rs_name_spec.rb +10 -5
  446. data/spec/integration/connection_spec.rb +7 -3
  447. data/spec/integration/crud_spec.rb +32 -4
  448. data/spec/integration/cursor_reaping_spec.rb +14 -10
  449. data/spec/integration/docs_examples_spec.rb +6 -0
  450. data/spec/integration/fork_reconnect_spec.rb +143 -0
  451. data/spec/integration/get_more_spec.rb +10 -3
  452. data/spec/integration/heartbeat_events_spec.rb +5 -24
  453. data/spec/integration/read_concern_spec.rb +1 -1
  454. data/spec/integration/read_preference_spec.rb +41 -11
  455. data/spec/integration/reconnect_spec.rb +2 -3
  456. data/spec/integration/retryable_errors_spec.rb +33 -14
  457. data/spec/integration/{retryable_writes_spec.rb → retryable_writes/retryable_writes_36_and_older_spec.rb} +55 -51
  458. data/spec/integration/retryable_writes/retryable_writes_40_and_newer_spec.rb +401 -0
  459. data/spec/integration/retryable_writes/shared/adds_diagnostics.rb +15 -0
  460. data/spec/integration/retryable_writes/shared/does_not_support_retries.rb +24 -0
  461. data/spec/integration/retryable_writes/shared/only_supports_legacy_retries.rb +25 -0
  462. data/spec/integration/retryable_writes/shared/performs_legacy_retries.rb +215 -0
  463. data/spec/integration/retryable_writes/shared/performs_modern_retries.rb +232 -0
  464. data/spec/integration/retryable_writes/shared/performs_no_retries.rb +110 -0
  465. data/spec/integration/retryable_writes/shared/supports_legacy_retries.rb +19 -0
  466. data/spec/integration/retryable_writes/shared/supports_modern_retries.rb +25 -0
  467. data/spec/integration/retryable_writes/shared/supports_retries.rb +16 -0
  468. data/spec/integration/sdam_error_handling_spec.rb +142 -22
  469. data/spec/integration/sdam_events_spec.rb +77 -5
  470. data/spec/integration/sdam_prose_spec.rb +64 -0
  471. data/spec/integration/server_monitor_spec.rb +25 -1
  472. data/spec/integration/server_spec.rb +42 -26
  473. data/spec/integration/size_limit_spec.rb +22 -23
  474. data/spec/integration/ssl_uri_options_spec.rb +2 -2
  475. data/spec/integration/step_down_spec.rb +15 -15
  476. data/spec/integration/transactions_api_examples_spec.rb +59 -0
  477. data/spec/integration/transactions_examples_spec.rb +5 -2
  478. data/spec/integration/x509_auth_spec.rb +109 -0
  479. data/spec/kerberos/kerberos_spec.rb +10 -6
  480. data/spec/lite_spec_helper.rb +31 -22
  481. data/spec/mongo/address/ipv4_spec.rb +1 -1
  482. data/spec/mongo/address_spec.rb +2 -2
  483. data/spec/mongo/auth/aws/request_region_spec.rb +42 -0
  484. data/spec/mongo/auth/aws/request_spec.rb +76 -0
  485. data/spec/mongo/auth/cr_spec.rb +7 -7
  486. data/spec/mongo/auth/gssapi/conversation_spec.rb +121 -0
  487. data/spec/mongo/auth/invalid_mechanism_spec.rb +1 -1
  488. data/spec/mongo/auth/ldap/conversation_spec.rb +1 -1
  489. data/spec/mongo/auth/ldap_spec.rb +3 -3
  490. data/spec/mongo/auth/scram/conversation_spec.rb +119 -334
  491. data/spec/mongo/auth/scram256/conversation_spec.rb +171 -0
  492. data/spec/mongo/auth/{scram/negotiation_spec.rb → scram_negotiation_spec.rb} +13 -8
  493. data/spec/mongo/auth/scram_spec.rb +29 -69
  494. data/spec/mongo/auth/user_spec.rb +1 -1
  495. data/spec/mongo/auth/x509/conversation_spec.rb +1 -1
  496. data/spec/mongo/auth/x509_spec.rb +8 -8
  497. data/spec/mongo/auth_spec.rb +4 -4
  498. data/spec/mongo/bulk_write_spec.rb +206 -2
  499. data/spec/mongo/client_construction_spec.rb +609 -86
  500. data/spec/mongo/client_spec.rb +59 -5
  501. data/spec/mongo/cluster/topology/replica_set_spec.rb +52 -9
  502. data/spec/mongo/cluster/topology/single_spec.rb +4 -2
  503. data/spec/mongo/cluster_spec.rb +37 -36
  504. data/spec/mongo/collection/view/aggregation_spec.rb +6 -2
  505. data/spec/mongo/collection/view/builder/find_command_spec.rb +17 -6
  506. data/spec/mongo/collection/view/change_stream_resume_spec.rb +392 -0
  507. data/spec/mongo/collection/view/change_stream_spec.rb +0 -318
  508. data/spec/mongo/collection/view/iterable_spec.rb +38 -0
  509. data/spec/mongo/collection/view/map_reduce_spec.rb +6 -2
  510. data/spec/mongo/collection/view/readable_spec.rb +15 -1
  511. data/spec/mongo/collection/view/writable_spec.rb +208 -1
  512. data/spec/mongo/collection_spec.rb +507 -43
  513. data/spec/mongo/cursor/builder/get_more_command_spec.rb +6 -1
  514. data/spec/mongo/cursor/builder/op_get_more_spec.rb +6 -1
  515. data/spec/mongo/cursor/builder/op_kill_cursors_spec.rb +6 -1
  516. data/spec/mongo/cursor_spec.rb +9 -1
  517. data/spec/mongo/database_spec.rb +251 -10
  518. data/spec/mongo/distinguishing_semaphore_spec.rb +63 -0
  519. data/spec/mongo/error/operation_failure_heavy_spec.rb +58 -0
  520. data/spec/mongo/error/operation_failure_spec.rb +167 -69
  521. data/spec/mongo/error/unsupported_option_spec.rb +54 -0
  522. data/spec/mongo/grid/fs_bucket_spec.rb +18 -0
  523. data/spec/mongo/grid/stream/write_spec.rb +32 -0
  524. data/spec/mongo/index/view_spec.rb +312 -0
  525. data/spec/mongo/monitoring/event/server_description_changed_spec.rb +1 -4
  526. data/spec/mongo/operation/aggregate/result_spec.rb +6 -1
  527. data/spec/mongo/operation/delete/bulk_spec.rb +18 -6
  528. data/spec/mongo/operation/delete/op_msg_spec.rb +22 -14
  529. data/spec/mongo/operation/find/legacy_spec.rb +27 -7
  530. data/spec/mongo/operation/get_more_spec.rb +6 -1
  531. data/spec/mongo/operation/insert/bulk_spec.rb +21 -7
  532. data/spec/mongo/operation/insert/command_spec.rb +4 -0
  533. data/spec/mongo/operation/insert/op_msg_spec.rb +22 -14
  534. data/spec/mongo/operation/limited_spec.rb +5 -3
  535. data/spec/mongo/operation/read_preference_legacy_spec.rb +16 -4
  536. data/spec/mongo/operation/read_preference_op_msg_spec.rb +115 -5
  537. data/spec/mongo/operation/result_spec.rb +6 -1
  538. data/spec/mongo/operation/update/bulk_spec.rb +18 -6
  539. data/spec/mongo/operation/update/command_spec.rb +4 -0
  540. data/spec/mongo/operation/update/op_msg_spec.rb +22 -14
  541. data/spec/mongo/protocol/msg_spec.rb +10 -0
  542. data/spec/mongo/retryable_spec.rb +71 -70
  543. data/spec/mongo/semaphore_spec.rb +51 -0
  544. data/spec/mongo/server/app_metadata_shared.rb +136 -0
  545. data/spec/mongo/server/app_metadata_spec.rb +8 -1
  546. data/spec/mongo/server/connection_auth_spec.rb +33 -14
  547. data/spec/mongo/server/connection_pool_spec.rb +0 -31
  548. data/spec/mongo/server/connection_spec.rb +118 -71
  549. data/spec/mongo/server/monitor/app_metadata_spec.rb +8 -1
  550. data/spec/mongo/server/monitor/connection_spec.rb +1 -82
  551. data/spec/mongo/server/monitor_spec.rb +76 -17
  552. data/spec/mongo/server/round_trip_time_averager_spec.rb +5 -3
  553. data/spec/mongo/server_selector/nearest_spec.rb +24 -23
  554. data/spec/mongo/server_selector/primary_preferred_spec.rb +27 -26
  555. data/spec/mongo/server_selector/primary_spec.rb +27 -9
  556. data/spec/mongo/server_selector/secondary_preferred_spec.rb +40 -23
  557. data/spec/mongo/server_selector/secondary_spec.rb +19 -18
  558. data/spec/mongo/server_selector_spec.rb +4 -5
  559. data/spec/mongo/session/session_pool_spec.rb +7 -3
  560. data/spec/mongo/session_spec.rb +35 -0
  561. data/spec/mongo/socket/ssl_spec.rb +2 -2
  562. data/spec/mongo/socket/tcp_spec.rb +2 -2
  563. data/spec/mongo/socket/unix_spec.rb +2 -2
  564. data/spec/mongo/socket_spec.rb +9 -9
  565. data/spec/mongo/timeout_spec.rb +22 -68
  566. data/spec/mongo/uri_spec.rb +21 -6
  567. data/spec/runners/auth.rb +5 -6
  568. data/spec/runners/change_streams/outcome.rb +42 -0
  569. data/spec/runners/change_streams/spec.rb +57 -0
  570. data/spec/runners/change_streams/test.rb +229 -0
  571. data/spec/runners/cmap.rb +1 -1
  572. data/spec/runners/cmap/verifier.rb +1 -1
  573. data/spec/runners/command_monitoring.rb +4 -35
  574. data/spec/runners/connection_string.rb +3 -2
  575. data/spec/runners/crud.rb +2 -2
  576. data/spec/runners/crud/context.rb +10 -6
  577. data/spec/runners/crud/operation.rb +177 -55
  578. data/spec/runners/crud/outcome.rb +1 -1
  579. data/spec/runners/crud/spec.rb +0 -7
  580. data/spec/runners/crud/test.rb +8 -26
  581. data/spec/runners/crud/test_base.rb +47 -0
  582. data/spec/runners/crud/verifier.rb +21 -3
  583. data/spec/runners/gridfs.rb +1 -1
  584. data/spec/runners/{server_discovery_and_monitoring.rb → sdam.rb} +41 -22
  585. data/spec/runners/sdam/verifier.rb +26 -8
  586. data/spec/runners/server_selection.rb +242 -28
  587. data/spec/runners/transactions.rb +13 -14
  588. data/spec/runners/transactions/operation.rb +155 -25
  589. data/spec/runners/transactions/spec.rb +1 -1
  590. data/spec/runners/transactions/test.rb +103 -65
  591. data/spec/spec_tests/auth_spec.rb +2 -0
  592. data/spec/spec_tests/change_streams_spec.rb +39 -4
  593. data/spec/spec_tests/client_side_encryption_spec.rb +3 -0
  594. data/spec/spec_tests/cmap_spec.rb +5 -0
  595. data/spec/spec_tests/command_monitoring_spec.rb +25 -12
  596. data/spec/spec_tests/connection_string_spec.rb +2 -0
  597. data/spec/spec_tests/crud_spec.rb +3 -1
  598. data/spec/spec_tests/data/auth/connection-string.yml +57 -1
  599. data/spec/spec_tests/data/change_streams/change-streams-errors.yml +27 -1
  600. data/spec/spec_tests/data/change_streams/change-streams-resume-errorLabels.yml +1105 -0
  601. data/spec/spec_tests/data/change_streams/change-streams-resume-whitelist.yml +1173 -0
  602. data/spec/spec_tests/data/change_streams/change-streams.yml +5 -4
  603. data/spec/spec_tests/data/crud_v2/aggregate-merge.yml +1 -1
  604. data/spec/spec_tests/data/crud_v2/bulkWrite-arrayFilters.yml +33 -11
  605. data/spec/spec_tests/data/crud_v2/bulkWrite-delete-hint-clientError.yml +63 -0
  606. data/spec/spec_tests/data/crud_v2/bulkWrite-delete-hint-serverError.yml +92 -0
  607. data/spec/spec_tests/data/crud_v2/bulkWrite-delete-hint.yml +103 -0
  608. data/spec/spec_tests/data/crud_v2/bulkWrite-update-hint-clientError.yml +90 -0
  609. data/spec/spec_tests/data/crud_v2/bulkWrite-update-hint-serverError.yml +147 -0
  610. data/spec/spec_tests/data/crud_v2/bulkWrite-update-hint.yml +164 -0
  611. data/spec/spec_tests/data/crud_v2/deleteMany-hint-clientError.yml +43 -0
  612. data/spec/spec_tests/data/crud_v2/deleteMany-hint-serverError.yml +62 -0
  613. data/spec/spec_tests/data/crud_v2/deleteMany-hint.yml +58 -0
  614. data/spec/spec_tests/data/crud_v2/deleteOne-hint-clientError.yml +41 -0
  615. data/spec/spec_tests/data/crud_v2/deleteOne-hint-serverError.yml +60 -0
  616. data/spec/spec_tests/data/crud_v2/deleteOne-hint.yml +57 -0
  617. data/spec/spec_tests/data/crud_v2/find-allowdiskuse-clientError.yml +28 -0
  618. data/spec/spec_tests/data/crud_v2/find-allowdiskuse-serverError.yml +44 -0
  619. data/spec/spec_tests/data/crud_v2/find-allowdiskuse.yml +50 -0
  620. data/spec/spec_tests/data/crud_v2/findOneAndDelete-hint-clientError.yml +45 -0
  621. data/spec/spec_tests/data/crud_v2/findOneAndDelete-hint-serverError.yml +60 -0
  622. data/spec/spec_tests/data/crud_v2/findOneAndDelete-hint.yml +56 -0
  623. data/spec/spec_tests/data/crud_v2/findOneAndReplace-hint-clientError.yml +40 -0
  624. data/spec/spec_tests/data/crud_v2/findOneAndReplace-hint-serverError.yml +59 -0
  625. data/spec/spec_tests/data/crud_v2/findOneAndReplace-hint.yml +55 -0
  626. data/spec/spec_tests/data/crud_v2/findOneAndUpdate-hint-clientError.yml +40 -0
  627. data/spec/spec_tests/data/crud_v2/findOneAndUpdate-hint-serverError.yml +58 -0
  628. data/spec/spec_tests/data/crud_v2/findOneAndUpdate-hint.yml +55 -0
  629. data/spec/spec_tests/data/crud_v2/replaceOne-hint.yml +61 -0
  630. data/spec/spec_tests/data/crud_v2/unacknowledged-bulkWrite-delete-hint-clientError.yml +60 -0
  631. data/spec/spec_tests/data/crud_v2/unacknowledged-bulkWrite-update-hint-clientError.yml +88 -0
  632. data/spec/spec_tests/data/crud_v2/unacknowledged-deleteMany-hint-clientError.yml +40 -0
  633. data/spec/spec_tests/data/crud_v2/unacknowledged-deleteOne-hint-clientError.yml +38 -0
  634. data/spec/spec_tests/data/crud_v2/unacknowledged-findOneAndDelete-hint-clientError.yml +42 -0
  635. data/spec/spec_tests/data/crud_v2/unacknowledged-findOneAndReplace-hint-clientError.yml +40 -0
  636. data/spec/spec_tests/data/crud_v2/unacknowledged-findOneAndUpdate-hint-clientError.yml +40 -0
  637. data/spec/spec_tests/data/crud_v2/unacknowledged-replaceOne-hint-clientError.yml +40 -0
  638. data/spec/spec_tests/data/crud_v2/unacknowledged-updateMany-hint-clientError.yml +43 -0
  639. data/spec/spec_tests/data/crud_v2/unacknowledged-updateOne-hint-clientError.yml +40 -0
  640. data/spec/spec_tests/data/crud_v2/updateMany-hint-clientError.yml +45 -0
  641. data/spec/spec_tests/data/crud_v2/updateMany-hint-serverError.yml +66 -0
  642. data/spec/spec_tests/data/crud_v2/updateMany-hint.yml +65 -0
  643. data/spec/spec_tests/data/crud_v2/updateOne-hint-clientError.yml +43 -0
  644. data/spec/spec_tests/data/crud_v2/updateOne-hint-serverError.yml +62 -0
  645. data/spec/spec_tests/data/crud_v2/updateOne-hint.yml +61 -0
  646. data/spec/spec_tests/data/crud_v2/updateWithPipelines.yml +65 -0
  647. data/spec/spec_tests/data/dns_seedlist_discovery/direct-connection-false.yml +10 -0
  648. data/spec/spec_tests/data/dns_seedlist_discovery/direct-connection-true.yml +5 -0
  649. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/MaxStalenessTooSmall.yml +15 -0
  650. data/spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/NoKnownServers.yml +4 -3
  651. data/spec/spec_tests/data/max_staleness/Unknown/SmallMaxStaleness.yml +1 -0
  652. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-2.6.yml +215 -0
  653. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.2.yml +58 -0
  654. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.4.yml +95 -0
  655. data/spec/spec_tests/data/read_write_concern/operation/default-write-concern-4.2.yml +36 -0
  656. data/spec/spec_tests/data/retryable_writes/bulkWrite-errorLabels.yml +77 -0
  657. data/spec/spec_tests/data/retryable_writes/bulkWrite-serverErrors.yml +37 -0
  658. data/spec/spec_tests/data/retryable_writes/deleteOne-errorLabels.yml +48 -0
  659. data/spec/spec_tests/data/retryable_writes/deleteOne-serverErrors.yml +22 -0
  660. data/spec/spec_tests/data/retryable_writes/findOneAndDelete-errorLabels.yml +49 -0
  661. data/spec/spec_tests/data/retryable_writes/findOneAndDelete-serverErrors.yml +23 -0
  662. data/spec/spec_tests/data/retryable_writes/findOneAndReplace-errorLabels.yml +52 -0
  663. data/spec/spec_tests/data/retryable_writes/findOneAndReplace-serverErrors.yml +25 -0
  664. data/spec/spec_tests/data/retryable_writes/findOneAndUpdate-errorLabels.yml +52 -0
  665. data/spec/spec_tests/data/retryable_writes/findOneAndUpdate-serverErrors.yml +24 -0
  666. data/spec/spec_tests/data/retryable_writes/insertMany-errorLabels.yml +54 -0
  667. data/spec/spec_tests/data/retryable_writes/insertMany-serverErrors.yml +24 -0
  668. data/spec/spec_tests/data/retryable_writes/insertOne-errorLabels.yml +44 -0
  669. data/spec/spec_tests/data/retryable_writes/insertOne-serverErrors.yml +69 -0
  670. data/spec/spec_tests/data/retryable_writes/replaceOne-errorLabels.yml +53 -0
  671. data/spec/spec_tests/data/retryable_writes/replaceOne-serverErrors.yml +23 -0
  672. data/spec/spec_tests/data/retryable_writes/updateOne-errorLabels.yml +53 -0
  673. data/spec/spec_tests/data/retryable_writes/updateOne-serverErrors.yml +23 -0
  674. data/spec/spec_tests/data/sdam/errors/error_handling_handshake.yml +54 -0
  675. data/spec/spec_tests/data/sdam/errors/non-stale-network-error.yml +46 -0
  676. data/spec/spec_tests/data/sdam/errors/non-stale-network-timeout-error.yml +37 -0
  677. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedAtShutdown.yml +60 -0
  678. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedDueToReplStateChange.yml +60 -0
  679. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMaster.yml +60 -0
  680. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMasterNoSlaveOk.yml +60 -0
  681. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMasterOrSecondary.yml +60 -0
  682. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-PrimarySteppedDown.yml +60 -0
  683. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-ShutdownInProgress.yml +60 -0
  684. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedAtShutdown.yml +51 -0
  685. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedDueToReplStateChange.yml +51 -0
  686. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMaster.yml +51 -0
  687. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMasterNoSlaveOk.yml +51 -0
  688. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMasterOrSecondary.yml +51 -0
  689. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-PrimarySteppedDown.yml +51 -0
  690. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-ShutdownInProgress.yml +51 -0
  691. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedAtShutdown.yml +60 -0
  692. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedDueToReplStateChange.yml +60 -0
  693. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMaster.yml +60 -0
  694. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMasterNoSlaveOk.yml +60 -0
  695. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMasterOrSecondary.yml +60 -0
  696. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-PrimarySteppedDown.yml +60 -0
  697. data/spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-ShutdownInProgress.yml +60 -0
  698. data/spec/spec_tests/data/sdam/errors/post-42-InterruptedAtShutdown.yml +46 -0
  699. data/spec/spec_tests/data/sdam/errors/post-42-InterruptedDueToReplStateChange.yml +46 -0
  700. data/spec/spec_tests/data/sdam/errors/post-42-NotMaster.yml +46 -0
  701. data/spec/spec_tests/data/sdam/errors/post-42-NotMasterNoSlaveOk.yml +46 -0
  702. data/spec/spec_tests/data/sdam/errors/post-42-NotMasterOrSecondary.yml +46 -0
  703. data/spec/spec_tests/data/sdam/errors/post-42-PrimarySteppedDown.yml +46 -0
  704. data/spec/spec_tests/data/sdam/errors/post-42-ShutdownInProgress.yml +46 -0
  705. data/spec/spec_tests/data/sdam/errors/pre-42-InterruptedAtShutdown.yml +46 -0
  706. data/spec/spec_tests/data/sdam/errors/pre-42-InterruptedDueToReplStateChange.yml +46 -0
  707. data/spec/spec_tests/data/sdam/errors/pre-42-NotMaster.yml +46 -0
  708. data/spec/spec_tests/data/sdam/errors/pre-42-NotMasterNoSlaveOk.yml +46 -0
  709. data/spec/spec_tests/data/sdam/errors/pre-42-NotMasterOrSecondary.yml +46 -0
  710. data/spec/spec_tests/data/sdam/errors/pre-42-PrimarySteppedDown.yml +46 -0
  711. data/spec/spec_tests/data/sdam/errors/pre-42-ShutdownInProgress.yml +46 -0
  712. data/spec/spec_tests/data/sdam/errors/stale-generation-InterruptedAtShutdown.yml +89 -0
  713. data/spec/spec_tests/data/sdam/errors/stale-generation-InterruptedDueToReplStateChange.yml +89 -0
  714. data/spec/spec_tests/data/sdam/errors/stale-generation-NotMaster.yml +89 -0
  715. data/spec/spec_tests/data/sdam/errors/stale-generation-NotMasterNoSlaveOk.yml +89 -0
  716. data/spec/spec_tests/data/sdam/errors/stale-generation-NotMasterOrSecondary.yml +89 -0
  717. data/spec/spec_tests/data/sdam/errors/stale-generation-PrimarySteppedDown.yml +89 -0
  718. data/spec/spec_tests/data/sdam/errors/stale-generation-ShutdownInProgress.yml +89 -0
  719. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedAtShutdown.yml +89 -0
  720. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedDueToReplStateChange.yml +89 -0
  721. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMaster.yml +89 -0
  722. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMasterNoSlaveOk.yml +89 -0
  723. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMasterOrSecondary.yml +89 -0
  724. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-PrimarySteppedDown.yml +89 -0
  725. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-ShutdownInProgress.yml +89 -0
  726. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-network.yml +80 -0
  727. data/spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-timeout.yml +80 -0
  728. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedAtShutdown.yml +89 -0
  729. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedDueToReplStateChange.yml +89 -0
  730. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMaster.yml +89 -0
  731. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMasterNoSlaveOk.yml +89 -0
  732. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMasterOrSecondary.yml +89 -0
  733. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-PrimarySteppedDown.yml +89 -0
  734. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-ShutdownInProgress.yml +89 -0
  735. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-network.yml +80 -0
  736. data/spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-timeout.yml +80 -0
  737. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedAtShutdown.yml +64 -0
  738. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedDueToReplStateChange.yml +64 -0
  739. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMaster.yml +64 -0
  740. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMasterNoSlaveOk.yml +64 -0
  741. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMasterOrSecondary.yml +64 -0
  742. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-PrimarySteppedDown.yml +64 -0
  743. data/spec/spec_tests/data/sdam/errors/stale-topologyVersion-ShutdownInProgress.yml +64 -0
  744. data/spec/spec_tests/data/sdam/rs/compatible.yml +2 -0
  745. data/spec/spec_tests/data/sdam/rs/compatible_unknown.yml +2 -0
  746. data/spec/spec_tests/data/sdam/rs/discover_arbiters.yml +2 -2
  747. data/spec/spec_tests/data/sdam/rs/discover_arbiters_replicaset.yml +43 -0
  748. data/spec/spec_tests/data/sdam/rs/discover_ghost.yml +35 -0
  749. data/spec/spec_tests/data/sdam/rs/{ghost_discovered.yml → discover_ghost_replicaset.yml} +1 -1
  750. data/spec/spec_tests/data/sdam/rs/discover_hidden.yml +50 -0
  751. data/spec/spec_tests/data/sdam/rs/discover_hidden_replicaset.yml +50 -0
  752. data/spec/spec_tests/data/sdam/rs/discover_passives.yml +2 -2
  753. data/spec/spec_tests/data/sdam/rs/discover_passives_replicaset.yml +81 -0
  754. data/spec/spec_tests/data/sdam/rs/discover_primary.yml +2 -2
  755. data/spec/spec_tests/data/sdam/rs/discover_primary_replicaset.yml +42 -0
  756. data/spec/spec_tests/data/sdam/rs/discover_rsother.yml +49 -0
  757. data/spec/spec_tests/data/sdam/rs/{rsother_discovered.yml → discover_rsother_replicaset.yml} +1 -1
  758. data/spec/spec_tests/data/sdam/rs/discover_secondary.yml +2 -2
  759. data/spec/spec_tests/data/sdam/rs/discover_secondary_replicaset.yml +43 -0
  760. data/spec/spec_tests/data/sdam/rs/incompatible_arbiter.yml +2 -0
  761. data/spec/spec_tests/data/sdam/rs/incompatible_ghost.yml +2 -0
  762. data/spec/spec_tests/data/sdam/rs/incompatible_other.yml +2 -0
  763. data/spec/spec_tests/data/sdam/rs/primary_mismatched_me.yml +23 -27
  764. data/spec/spec_tests/data/sdam/rs/primary_to_no_primary_mismatched_me.yml +79 -55
  765. data/spec/spec_tests/data/sdam/rs/replicaset_rsnp.yml +20 -0
  766. data/spec/spec_tests/data/sdam/rs/secondary_mismatched_me.yml +3 -2
  767. data/spec/spec_tests/data/sdam/rs/too_new.yml +2 -0
  768. data/spec/spec_tests/data/sdam/rs/topology_version_equal.yml +66 -0
  769. data/spec/spec_tests/data/sdam/rs/topology_version_greater.yml +189 -0
  770. data/spec/spec_tests/data/sdam/rs/topology_version_less.yml +62 -0
  771. data/spec/spec_tests/data/sdam/sharded/discover_single_mongos.yml +23 -0
  772. data/spec/spec_tests/data/sdam/single/direct_connection_external_ip.yml +1 -1
  773. data/spec/spec_tests/data/sdam/single/direct_connection_mongos.yml +2 -2
  774. data/spec/spec_tests/data/sdam/single/direct_connection_replicaset.yml +22 -0
  775. data/spec/spec_tests/data/sdam/single/direct_connection_rsarbiter.yml +2 -2
  776. data/spec/spec_tests/data/sdam/single/direct_connection_rsprimary.yml +2 -2
  777. data/spec/spec_tests/data/sdam/single/direct_connection_rssecondary.yml +2 -2
  778. data/spec/spec_tests/data/sdam/single/direct_connection_slave.yml +1 -1
  779. data/spec/spec_tests/data/sdam/single/direct_connection_standalone.yml +2 -2
  780. data/spec/spec_tests/data/sdam/single/{unavailable_seed.yml → direct_connection_unavailable_seed.yml} +2 -2
  781. data/spec/spec_tests/data/sdam/single/direct_connection_wrong_set_name.yml +38 -0
  782. data/spec/spec_tests/data/sdam/single/discover_standalone.yml +34 -0
  783. data/spec/spec_tests/data/sdam/single/discover_unavailable_seed.yml +28 -0
  784. data/spec/spec_tests/data/sdam/single/too_old_then_upgraded.yml +46 -0
  785. data/spec/spec_tests/data/sdam_integration/cancel-server-check.yml +96 -0
  786. data/spec/spec_tests/data/sdam_integration/connectTimeoutMS.yml +88 -0
  787. data/spec/spec_tests/data/sdam_integration/find-network-error.yml +83 -0
  788. data/spec/spec_tests/data/sdam_integration/find-shutdown-error.yml +116 -0
  789. data/spec/spec_tests/data/sdam_integration/insert-network-error.yml +86 -0
  790. data/spec/spec_tests/data/sdam_integration/insert-shutdown-error.yml +115 -0
  791. data/spec/spec_tests/data/sdam_integration/isMaster-command-error.yml +168 -0
  792. data/spec/spec_tests/data/sdam_integration/isMaster-network-error.yml +162 -0
  793. data/spec/spec_tests/data/sdam_integration/isMaster-timeout.yml +229 -0
  794. data/spec/spec_tests/data/sdam_integration/rediscover-quickly-after-step-down.yml +87 -0
  795. data/spec/spec_tests/data/transactions/create-collection.yml +131 -0
  796. data/spec/spec_tests/data/transactions/create-index.yml +152 -0
  797. data/spec/spec_tests/data/transactions/error-labels.yml +87 -21
  798. data/spec/spec_tests/data/transactions/mongos-recovery-token.yml +1 -0
  799. data/spec/spec_tests/data/transactions/retryable-abort-errorLabels.yml +124 -0
  800. data/spec/spec_tests/data/transactions/retryable-abort.yml +17 -2
  801. data/spec/spec_tests/data/transactions/retryable-commit-errorLabels.yml +132 -0
  802. data/spec/spec_tests/data/transactions/retryable-commit.yml +24 -9
  803. data/spec/spec_tests/data/uri_options/connection-options.yml +43 -0
  804. data/spec/spec_tests/data/uri_options/ruby-auth-options.yml +12 -0
  805. data/spec/spec_tests/data/uri_options/ruby-connection-options.yml +57 -0
  806. data/spec/spec_tests/dns_seedlist_discovery_spec.rb +3 -1
  807. data/spec/spec_tests/gridfs_spec.rb +2 -0
  808. data/spec/spec_tests/max_staleness_spec.rb +5 -141
  809. data/spec/spec_tests/read_write_concern_connection_string_spec.rb +2 -0
  810. data/spec/spec_tests/read_write_concern_operaton_spec.rb +10 -0
  811. data/spec/spec_tests/retryable_reads_spec.rb +4 -2
  812. data/spec/spec_tests/retryable_writes_spec.rb +8 -1
  813. data/spec/spec_tests/sdam_integration_spec.rb +13 -0
  814. data/spec/spec_tests/sdam_monitoring_spec.rb +3 -2
  815. data/spec/spec_tests/sdam_spec.rb +70 -1
  816. data/spec/spec_tests/server_selection_rtt_spec.rb +2 -0
  817. data/spec/spec_tests/server_selection_spec.rb +5 -115
  818. data/spec/spec_tests/transactions_api_spec.rb +5 -0
  819. data/spec/spec_tests/transactions_spec.rb +5 -0
  820. data/spec/spec_tests/uri_options_spec.rb +2 -0
  821. data/spec/stress/cleanup_spec.rb +58 -0
  822. data/spec/stress/connection_pool_stress_spec.rb +11 -13
  823. data/spec/stress/connection_pool_timing_spec.rb +3 -6
  824. data/spec/stress/fork_reconnect_stress_spec.rb +109 -0
  825. data/spec/support/authorization.rb +1 -11
  826. data/spec/support/aws_utils.rb +62 -0
  827. data/spec/support/aws_utils/base.rb +134 -0
  828. data/spec/support/aws_utils/inspector.rb +224 -0
  829. data/spec/support/aws_utils/orchestrator.rb +370 -0
  830. data/spec/support/aws_utils/provisioner.rb +360 -0
  831. data/spec/support/background_thread_registry.rb +6 -2
  832. data/spec/support/child_process_helper.rb +78 -0
  833. data/spec/support/client_registry.rb +6 -24
  834. data/spec/support/cluster_config.rb +5 -0
  835. data/spec/support/common_shortcuts.rb +43 -0
  836. data/spec/support/constraints.rb +27 -7
  837. data/spec/support/crypt.rb +1 -1
  838. data/spec/support/event_subscriber.rb +184 -84
  839. data/spec/support/keyword_struct.rb +26 -0
  840. data/spec/support/lite_constraints.rb +47 -0
  841. data/spec/support/shared/scram_conversation.rb +100 -0
  842. data/spec/support/shared/server_selector.rb +93 -1
  843. data/spec/support/shared/session.rb +29 -21
  844. data/spec/support/spec_config.rb +76 -21
  845. data/spec/support/spec_organizer.rb +129 -0
  846. data/spec/support/spec_setup.rb +9 -5
  847. data/spec/support/utils.rb +161 -24
  848. metadata +1185 -744
  849. metadata.gz.sig +0 -0
  850. data/lib/mongo/server/connectable.rb +0 -107
  851. data/spec/runners/change_streams.rb +0 -262
  852. data/spec/runners/change_streams/operation.rb +0 -89
  853. data/spec/runners/sdam_monitoring.rb +0 -89
  854. data/spec/spec_tests/data/sdam/sharded/ruby_discovered_single_mongos.yml +0 -27
@@ -0,0 +1,129 @@
1
+ autoload :FileUtils, 'fileutils'
2
+ autoload :Find, 'find'
3
+ autoload :ChildProcessHelper, 'support/child_process_helper'
4
+
5
+ # Organizes and runs all of the tests in the test suite in batches.
6
+ #
7
+ # Organizing the tests in batches serves two purposes:
8
+ #
9
+ # 1. This allows running unit tests before integration tests, therefore
10
+ # in theory revealing failures quicker on average.
11
+ # 2. This allows running some tests that have high intermittent failure rate
12
+ # in their own test process.
13
+ #
14
+ # This class aggregates RSpec results after the test runs.
15
+ class SpecOrganizer
16
+ CLASSIFIERS = [
17
+ [%r,^mongo,, :unit],
18
+ [%r,^kerberos,, :unit],
19
+ [%r,^integration/sdam_error_handling,, :sdam_integration],
20
+ [%r,^integration/cursor_reaping,, :cursor_reaping],
21
+ [%r,^(atlas|integration),, :integration],
22
+ [%r,^spec_tests,, :spec],
23
+ [%r,^spec_tests/sdam_integration,, :spec_sdam_integration],
24
+ ]
25
+
26
+ RUN_PRIORITY = %i(unit
27
+ integration sdam_integration cursor_reaping
28
+ spec spec_sdam_integration
29
+ )
30
+
31
+ SPEC_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
32
+ ROOT = File.expand_path(File.join(SPEC_ROOT, '..'))
33
+ RSPEC_JSON_PATH = File.join(ROOT, 'tmp/rspec.json')
34
+ RSPEC_ALL_JSON_PATH = File.join(ROOT, 'tmp/rspec-all.json')
35
+
36
+ def run
37
+ FileUtils.rm_f(RSPEC_ALL_JSON_PATH)
38
+
39
+ buckets = {}
40
+ Find.find(SPEC_ROOT) do |path|
41
+ next unless File.file?(path)
42
+ next unless path =~ /_spec\.rb\z/
43
+ rel_path = path[(SPEC_ROOT.length + 1)..path.length]
44
+
45
+ found = false
46
+ CLASSIFIERS.each do |(regexp, category)|
47
+ if regexp =~ rel_path
48
+ buckets[category] ||= []
49
+ buckets[category] << rel_path
50
+ found = true
51
+ break
52
+ end
53
+ end
54
+
55
+ unless found
56
+ buckets[nil] ||= []
57
+ buckets[nil] << rel_path
58
+ end
59
+ end
60
+
61
+ failed = []
62
+
63
+ RUN_PRIORITY.each do |category|
64
+ if files = buckets.delete(category)
65
+ unless run_files(category, files)
66
+ failed << category
67
+ end
68
+ end
69
+ end
70
+ if files = buckets.delete(nil)
71
+ unless run_files('remaining', files)
72
+ failed << 'remaining'
73
+ end
74
+ end
75
+
76
+ unless buckets.empty?
77
+ raise "Some buckets were not executed: #{buckets.keys.map(&:to_s).join(', ')}"
78
+ end
79
+
80
+ if failed.any?
81
+ raise "The following buckets failed: #{failed.map(&:to_s).join(', ')}"
82
+ end
83
+ end
84
+
85
+ def run_files(category, paths)
86
+ paths = paths.map do |path|
87
+ File.join('spec', path)
88
+ end
89
+
90
+ puts "Running #{category.to_s.gsub('_', ' ')} tests"
91
+ FileUtils.rm_f(RSPEC_JSON_PATH)
92
+ cmd = %w(rspec) + paths
93
+
94
+ begin
95
+ ChildProcessHelper.check_call(cmd)
96
+ ensure
97
+ if File.exist?(RSPEC_JSON_PATH)
98
+ if File.exist?(RSPEC_ALL_JSON_PATH)
99
+ merge_rspec_results
100
+ else
101
+ FileUtils.cp(RSPEC_JSON_PATH, RSPEC_ALL_JSON_PATH)
102
+ end
103
+ end
104
+ end
105
+
106
+ true
107
+ rescue ChildProcessHelper::SpawnError
108
+ false
109
+ end
110
+
111
+ def merge_rspec_results
112
+ all = JSON.parse(File.read(RSPEC_ALL_JSON_PATH))
113
+ new = JSON.parse(File.read(RSPEC_JSON_PATH))
114
+ all['examples'] += new.delete('examples')
115
+ new.delete('summary').each do |k, v|
116
+ all['summary'][k] += v
117
+ end
118
+ new.delete('version')
119
+ new.delete('summary_line')
120
+ unless new.empty?
121
+ raise "Unhandled rspec results keys: #{new.keys.join(', ')}"
122
+ end
123
+ # We do not merge summary lines, delete them from aggregated results
124
+ all.delete('summary_line')
125
+ File.open(RSPEC_ALL_JSON_PATH, 'w') do |f|
126
+ f << JSON.dump(all)
127
+ end
128
+ end
129
+ end
@@ -3,8 +3,8 @@ require_relative './client_registry'
3
3
 
4
4
  class SpecSetup
5
5
  def run
6
- if SpecConfig.instance.x509_auth?
7
- warn 'Skipping user creation because X.509 auth appears to be enabled'
6
+ if SpecConfig.instance.external_user?
7
+ warn 'Skipping user creation because the set of users is fixed'
8
8
  return
9
9
  end
10
10
 
@@ -43,7 +43,7 @@ class SpecSetup
43
43
  end
44
44
 
45
45
  def create_user(client, user)
46
- users = client.database.users
46
+ users = client.use('admin').database.users
47
47
  begin
48
48
  users.create(user)
49
49
  rescue Mongo::Error::OperationFailure => e
@@ -57,10 +57,14 @@ class SpecSetup
57
57
  end
58
58
 
59
59
  def admin_unauthorized_client
60
- ClientRegistry.instance.global_client('admin_unauthorized')
60
+ ClientRegistry.instance.global_client('admin_unauthorized').with(
61
+ socket_timeout: 5, connect_timeout: 5,
62
+ )
61
63
  end
62
64
 
63
65
  def admin_authorized_test_client
64
- ClientRegistry.instance.global_client('root_authorized')
66
+ ClientRegistry.instance.global_client('root_authorized').with(
67
+ socket_timeout: 5, connect_timeout: 5,
68
+ )
65
69
  end
66
70
  end
@@ -1,4 +1,8 @@
1
- require 'base64'
1
+ autoload :Base64, 'base64'
2
+ autoload :JSON, 'json'
3
+ module Net
4
+ autoload :HTTP, 'net/http'
5
+ end
2
6
 
3
7
  module Utils
4
8
  # Converts a 'camelCase' string or symbol to a :under_score symbol.
@@ -81,6 +85,15 @@ module Utils
81
85
  end
82
86
  module_function :camelize
83
87
 
88
+ module_function def disable_retries_client_options
89
+ {
90
+ retry_reads: false,
91
+ retry_writes: false,
92
+ max_read_retries: 0,
93
+ max_write_retries: 0,
94
+ }
95
+ end
96
+
84
97
  # Converts camel case clientOptions, as used in spec tests,
85
98
  # to Ruby driver underscore options.
86
99
  def convert_client_options(spec_test_options)
@@ -148,10 +161,10 @@ module Utils
148
161
  events = events.map do |e|
149
162
  command = e.command.dup
150
163
 
151
- # Fake $code for map/reduce commands
164
+ # Fake BSON::Code for map/reduce commands
152
165
  %w(map reduce).each do |key|
153
166
  if command[key].is_a?(String)
154
- command[key] = {'$code' => command[key]}
167
+ command[key] = BSON::Code.new(command[key])
155
168
  end
156
169
  end
157
170
 
@@ -180,17 +193,6 @@ module Utils
180
193
  #command.delete('filter') if command['filter'] && command['filter'].empty?
181
194
  command.delete('query') if command['query'] && command['query'].empty?
182
195
 
183
- if filter = command['filter']
184
- # Since the Ruby driver does not implement extended JSON, hack
185
- # the types here manually.
186
- # Note that this code mutates the command.
187
- %w(_id files_id).each do |key|
188
- if filter[key] && filter[key].is_a?(BSON::ObjectId)
189
- filter[key] = {'$oid' => filter[key].to_s}
190
- end
191
- end
192
- end
193
-
194
196
  {
195
197
  'command_started_event' => order_hash(
196
198
  'command' => order_hash(command),
@@ -203,7 +205,7 @@ module Utils
203
205
  # Remove any events from authentication commands.
204
206
  events.reject! do |e|
205
207
  command_name = e['command_started_event']['command_name']
206
- command_name.start_with?('sasl') || command_name == 'authenticate'
208
+ %w(saslStart saslContinue authenticate getnonce).include?(command_name)
207
209
  end
208
210
 
209
211
  events
@@ -239,18 +241,28 @@ module Utils
239
241
  out_k = Utils.underscore(k).to_sym
240
242
  v
241
243
  when 'writeConcern'
242
- # Write concern option is called :write on the client, but
243
- # :write_concern on all levels below the client.
244
- out_k = :write_concern
245
- # The client expects write concern value to only have symbol keys.
246
- Hash[v.map do |sub_k, sub_v|
247
- [sub_k.to_sym, sub_v]
248
- end]
244
+ if v == {}
245
+ # Tests added in SPEC-1352 specify {writeConcern: {}} but what
246
+ # they mean is for the driver to use the default write concern,
247
+ # which for Ruby means no write concern is specified at all.
248
+ #
249
+ # This nil return requires the compact call below to get rid of
250
+ # the nils before outgoing options are constructed.
251
+ next nil
252
+ else
253
+ # Write concern option is called :write on the client, but
254
+ # :write_concern on all levels below the client.
255
+ out_k = :write_concern
256
+ # The client expects write concern value to only have symbol keys.
257
+ Hash[v.map do |sub_k, sub_v|
258
+ [sub_k.to_sym, sub_v]
259
+ end]
260
+ end
249
261
  else
250
262
  raise "Unhandled operation option #{k}"
251
263
  end
252
264
  [out_k, out_v]
253
- end]
265
+ end.compact]
254
266
  else
255
267
  {}
256
268
  end
@@ -352,9 +364,134 @@ module Utils
352
364
  end.all?
353
365
 
354
366
  same_length && same_values
367
+ elsif expected == 42
368
+ actual.is_a?(Numeric) || actual.is_a?(BSON::Int32) || actual.is_a?(BSON::Int64)
355
369
  else
356
- return expected == actual
370
+ expected == actual
357
371
  end
358
372
  end
359
373
  module_function :match_with_type?
374
+
375
+ module_function def get_ec2_metadata_token(ttl: 30, http: nil)
376
+ http ||= Net::HTTP.new('169.254.169.254')
377
+ req = Net::HTTP::Put.new('/latest/api/token',
378
+ # The TTL is required in order to obtain the metadata token.
379
+ {'x-aws-ec2-metadata-token-ttl-seconds' => ttl.to_s})
380
+ resp = http.request(req)
381
+ if resp.code != '200'
382
+ raise "Metadata token request failed: #{e.class}: #{e}"
383
+ end
384
+ resp.body
385
+ end
386
+
387
+ module_function def ec2_instance_id
388
+ http = Net::HTTP.new('169.254.169.254')
389
+ metadata_token = get_ec2_metadata_token(http: http)
390
+ req = Net::HTTP::Get.new('/latest/dynamic/instance-identity/document',
391
+ {'x-aws-ec2-metadata-token' => metadata_token})
392
+ resp = http.request(req)
393
+ payload = JSON.parse(resp.body)
394
+ payload.fetch('instanceId')
395
+ end
396
+
397
+ module_function def ec2_instance_profile
398
+ http = Net::HTTP.new('169.254.169.254')
399
+ metadata_token = get_ec2_metadata_token(http: http)
400
+ req = Net::HTTP::Get.new('/latest/meta-data/iam/info',
401
+ {'x-aws-ec2-metadata-token' => metadata_token})
402
+ resp = http.request(req)
403
+ if resp.code == '404'
404
+ nil
405
+ else
406
+ payload = JSON.parse(resp.body)
407
+ payload['InstanceProfileArn']
408
+ end
409
+ end
410
+
411
+ module_function def wait_for_instance_profile
412
+ deadline = Time.now + 15
413
+ loop do
414
+ begin
415
+ ip = ec2_instance_profile
416
+ if ip
417
+ puts "Instance profile assigned: #{ip}"
418
+ break
419
+ end
420
+ rescue => e
421
+ puts "Problem retrieving instance profile: #{e.class}: #{e}"
422
+ end
423
+ if Time.now >= deadline
424
+ raise 'Instance profile did not get assigned in 15 seconds'
425
+ end
426
+ sleep 3
427
+ end
428
+ end
429
+
430
+ module_function def wait_for_no_instance_profile
431
+ deadline = Time.now + 15
432
+ loop do
433
+ begin
434
+ ip = ec2_instance_profile
435
+ if ip.nil?
436
+ puts "Instance profile cleared"
437
+ break
438
+ end
439
+ rescue => e
440
+ puts "Problem retrieving instance profile: #{e.class}: #{e}"
441
+ end
442
+ if Time.now >= deadline
443
+ raise 'Instance profile did not get cleared in 15 seconds'
444
+ end
445
+ sleep 3
446
+ end
447
+ end
448
+
449
+ module_function def wrap_forked_child
450
+ begin
451
+ yield
452
+ rescue => e
453
+ STDERR.puts "Failing process #{Process.pid} due to #{e.class}: #{e}"
454
+ exec('/bin/false')
455
+ else
456
+ # Exec so that we do not close any clients etc. in the child.
457
+ exec('/bin/true')
458
+ end
459
+ end
460
+
461
+ module_function def subscribe_all(client, subscriber)
462
+ subscribe_all_sdam_proc(subscriber).call(client)
463
+ end
464
+
465
+ module_function def subscribe_all_sdam_proc(subscriber)
466
+ lambda do |client|
467
+ client.subscribe(Mongo::Monitoring::TOPOLOGY_OPENING, subscriber)
468
+ client.subscribe(Mongo::Monitoring::SERVER_OPENING, subscriber)
469
+ client.subscribe(Mongo::Monitoring::SERVER_DESCRIPTION_CHANGED, subscriber)
470
+ client.subscribe(Mongo::Monitoring::TOPOLOGY_CHANGED, subscriber)
471
+ client.subscribe(Mongo::Monitoring::SERVER_CLOSED, subscriber)
472
+ client.subscribe(Mongo::Monitoring::TOPOLOGY_CLOSED, subscriber)
473
+
474
+ client.subscribe(Mongo::Monitoring::SERVER_HEARTBEAT, subscriber)
475
+
476
+ client.subscribe(Mongo::Monitoring::CONNECTION_POOL, subscriber)
477
+
478
+ client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
479
+ end
480
+ end
481
+
482
+ # Creates an event subscriber, subscribes it to command events on the
483
+ # specified client, invokes the passed block, asserts there is exactly one
484
+ # command event published, asserts the command event published has the
485
+ # specified command name, and returns the published event.
486
+ module_function def get_command_event(client, command_name, include_auth: false)
487
+ subscriber = EventSubscriber.new
488
+ client.subscribe(Mongo::Monitoring::COMMAND, subscriber)
489
+ begin
490
+ yield client
491
+ ensure
492
+ client.unsubscribe(Mongo::Monitoring::COMMAND, subscriber)
493
+ end
494
+
495
+ subscriber.single_command_started_event(command_name, include_auth: include_auth)
496
+ end
360
497
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongo
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.12.4
4
+ version: 2.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tyler Brock
@@ -31,7 +31,7 @@ cert_chain:
31
31
  gpvfPNWMwyBDlHaNS3GfO6cRRxBOvEG05GUCsvtTY4Bpe8yjE64wg1ymb47LMOnv
32
32
  Qb1lGORmf/opg45mluKUYl7pQNZHD0d3
33
33
  -----END CERTIFICATE-----
34
- date: 2020-10-09 00:00:00.000000000 Z
34
+ date: 2020-07-30 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bson
@@ -73,14 +73,26 @@ files:
73
73
  - lib/mongo/address/unix.rb
74
74
  - lib/mongo/address/validator.rb
75
75
  - lib/mongo/auth.rb
76
+ - lib/mongo/auth/aws.rb
77
+ - lib/mongo/auth/aws/conversation.rb
78
+ - lib/mongo/auth/aws/credentials_retriever.rb
79
+ - lib/mongo/auth/aws/request.rb
80
+ - lib/mongo/auth/base.rb
81
+ - lib/mongo/auth/conversation_base.rb
76
82
  - lib/mongo/auth/cr.rb
77
83
  - lib/mongo/auth/cr/conversation.rb
78
84
  - lib/mongo/auth/credential_cache.rb
85
+ - lib/mongo/auth/gssapi.rb
86
+ - lib/mongo/auth/gssapi/conversation.rb
79
87
  - lib/mongo/auth/ldap.rb
80
88
  - lib/mongo/auth/ldap/conversation.rb
81
89
  - lib/mongo/auth/roles.rb
90
+ - lib/mongo/auth/sasl_conversation_base.rb
82
91
  - lib/mongo/auth/scram.rb
83
92
  - lib/mongo/auth/scram/conversation.rb
93
+ - lib/mongo/auth/scram256.rb
94
+ - lib/mongo/auth/scram256/conversation.rb
95
+ - lib/mongo/auth/scram_conversation_base.rb
84
96
  - lib/mongo/auth/stringprep.rb
85
97
  - lib/mongo/auth/stringprep/profiles/sasl.rb
86
98
  - lib/mongo/auth/stringprep/tables.rb
@@ -159,12 +171,15 @@ files:
159
171
  - lib/mongo/database.rb
160
172
  - lib/mongo/database/view.rb
161
173
  - lib/mongo/dbref.rb
174
+ - lib/mongo/distinguishing_semaphore.rb
162
175
  - lib/mongo/error.rb
163
176
  - lib/mongo/error/auth_error.rb
164
177
  - lib/mongo/error/bulk_write_error.rb
165
178
  - lib/mongo/error/change_stream_resumable.rb
166
179
  - lib/mongo/error/closed_stream.rb
167
180
  - lib/mongo/error/connection_check_out_timeout.rb
181
+ - lib/mongo/error/connection_perished.rb
182
+ - lib/mongo/error/credential_check_error.rb
168
183
  - lib/mongo/error/crypt_error.rb
169
184
  - lib/mongo/error/extra_file_chunk.rb
170
185
  - lib/mongo/error/failed_string_prep_validation.rb
@@ -185,6 +200,8 @@ files:
185
200
  - lib/mongo/error/invalid_nonce.rb
186
201
  - lib/mongo/error/invalid_read_option.rb
187
202
  - lib/mongo/error/invalid_replacement_document.rb
203
+ - lib/mongo/error/invalid_server_auth_host.rb
204
+ - lib/mongo/error/invalid_server_auth_response.rb
188
205
  - lib/mongo/error/invalid_server_preference.rb
189
206
  - lib/mongo/error/invalid_session.rb
190
207
  - lib/mongo/error/invalid_signature.rb
@@ -201,6 +218,7 @@ files:
201
218
  - lib/mongo/error/missing_file_chunk.rb
202
219
  - lib/mongo/error/missing_password.rb
203
220
  - lib/mongo/error/missing_resume_token.rb
221
+ - lib/mongo/error/missing_scram_server_signature.rb
204
222
  - lib/mongo/error/mongocryptd_spawn_error.rb
205
223
  - lib/mongo/error/multi_index_drop.rb
206
224
  - lib/mongo/error/need_primary_server.rb
@@ -210,8 +228,10 @@ files:
210
228
  - lib/mongo/error/operation_failure.rb
211
229
  - lib/mongo/error/parser.rb
212
230
  - lib/mongo/error/pool_closed_error.rb
231
+ - lib/mongo/error/raise_original_error.rb
213
232
  - lib/mongo/error/sdam_error_detection.rb
214
233
  - lib/mongo/error/session_ended.rb
234
+ - lib/mongo/error/sessions_not_supported.rb
215
235
  - lib/mongo/error/socket_error.rb
216
236
  - lib/mongo/error/socket_timeout_error.rb
217
237
  - lib/mongo/error/unchangeable_collection_option.rb
@@ -222,6 +242,7 @@ files:
222
242
  - lib/mongo/error/unsupported_collation.rb
223
243
  - lib/mongo/error/unsupported_features.rb
224
244
  - lib/mongo/error/unsupported_message_type.rb
245
+ - lib/mongo/error/unsupported_option.rb
225
246
  - lib/mongo/error/write_retryable.rb
226
247
  - lib/mongo/event.rb
227
248
  - lib/mongo/event/base.rb
@@ -286,6 +307,7 @@ files:
286
307
  - lib/mongo/operation/aggregate/op_msg.rb
287
308
  - lib/mongo/operation/aggregate/result.rb
288
309
  - lib/mongo/operation/collections_info.rb
310
+ - lib/mongo/operation/collections_info/command.rb
289
311
  - lib/mongo/operation/collections_info/result.rb
290
312
  - lib/mongo/operation/command.rb
291
313
  - lib/mongo/operation/command/command.rb
@@ -370,6 +392,7 @@ files:
370
392
  - lib/mongo/operation/result.rb
371
393
  - lib/mongo/operation/shared/bypass_document_validation.rb
372
394
  - lib/mongo/operation/shared/causal_consistency_supported.rb
395
+ - lib/mongo/operation/shared/collections_info_or_list_collections.rb
373
396
  - lib/mongo/operation/shared/executable.rb
374
397
  - lib/mongo/operation/shared/executable_no_validate.rb
375
398
  - lib/mongo/operation/shared/executable_transaction_label.rb
@@ -424,7 +447,6 @@ files:
424
447
  - lib/mongo/semaphore.rb
425
448
  - lib/mongo/server.rb
426
449
  - lib/mongo/server/app_metadata.rb
427
- - lib/mongo/server/connectable.rb
428
450
  - lib/mongo/server/connection.rb
429
451
  - lib/mongo/server/connection_base.rb
430
452
  - lib/mongo/server/connection_common.rb
@@ -437,14 +459,16 @@ files:
437
459
  - lib/mongo/server/monitor/app_metadata.rb
438
460
  - lib/mongo/server/monitor/connection.rb
439
461
  - lib/mongo/server/pending_connection.rb
462
+ - lib/mongo/server/push_monitor.rb
463
+ - lib/mongo/server/push_monitor/connection.rb
440
464
  - lib/mongo/server/round_trip_time_averager.rb
441
465
  - lib/mongo/server_selector.rb
466
+ - lib/mongo/server_selector/base.rb
442
467
  - lib/mongo/server_selector/nearest.rb
443
468
  - lib/mongo/server_selector/primary.rb
444
469
  - lib/mongo/server_selector/primary_preferred.rb
445
470
  - lib/mongo/server_selector/secondary.rb
446
471
  - lib/mongo/server_selector/secondary_preferred.rb
447
- - lib/mongo/server_selector/selectable.rb
448
472
  - lib/mongo/session.rb
449
473
  - lib/mongo/session/server_session.rb
450
474
  - lib/mongo/session/session_pool.rb
@@ -457,26 +481,35 @@ files:
457
481
  - lib/mongo/srv/resolver.rb
458
482
  - lib/mongo/srv/result.rb
459
483
  - lib/mongo/timeout.rb
484
+ - lib/mongo/topology_version.rb
460
485
  - lib/mongo/uri.rb
461
486
  - lib/mongo/uri/srv_protocol.rb
487
+ - lib/mongo/utils.rb
462
488
  - lib/mongo/version.rb
463
489
  - lib/mongo/write_concern.rb
464
490
  - lib/mongo/write_concern/acknowledged.rb
465
491
  - lib/mongo/write_concern/base.rb
466
492
  - lib/mongo/write_concern/unacknowledged.rb
467
493
  - mongo.gemspec
494
+ - spec/NOTES.aws-auth.md
495
+ - spec/README.aws-auth.md
468
496
  - spec/README.md
469
497
  - spec/USERS.md
470
498
  - spec/atlas/atlas_connectivity_spec.rb
471
499
  - spec/atlas/operations_spec.rb
472
500
  - spec/integration/auth_spec.rb
501
+ - spec/integration/awaited_ismaster_spec.rb
502
+ - spec/integration/aws_auth_request_spec.rb
503
+ - spec/integration/aws_credentials_retriever_spec.rb
473
504
  - spec/integration/bson_symbol_spec.rb
474
505
  - spec/integration/bulk_insert_spec.rb
475
506
  - spec/integration/bulk_write_spec.rb
476
507
  - spec/integration/change_stream_examples_spec.rb
477
508
  - spec/integration/change_stream_spec.rb
509
+ - spec/integration/check_clean_slate_spec.rb
478
510
  - spec/integration/client_authentication_options_spec.rb
479
511
  - spec/integration/client_connectivity_spec.rb
512
+ - spec/integration/client_construction_aws_auth_spec.rb
480
513
  - spec/integration/client_construction_spec.rb
481
514
  - spec/integration/client_side_encryption/auto_encryption_bulk_writes_spec.rb
482
515
  - spec/integration/client_side_encryption/auto_encryption_command_monitoring_spec.rb
@@ -495,6 +528,7 @@ files:
495
528
  - spec/integration/client_side_encryption/views_spec.rb
496
529
  - spec/integration/client_spec.rb
497
530
  - spec/integration/client_update_spec.rb
531
+ - spec/integration/collection_indexes_prose_spec.rb
498
532
  - spec/integration/command_monitoring_spec.rb
499
533
  - spec/integration/command_spec.rb
500
534
  - spec/integration/connect_single_rs_name_spec.rb
@@ -504,6 +538,7 @@ files:
504
538
  - spec/integration/cursor_reaping_spec.rb
505
539
  - spec/integration/docs_examples_spec.rb
506
540
  - spec/integration/error_detection_spec.rb
541
+ - spec/integration/fork_reconnect_spec.rb
507
542
  - spec/integration/get_more_spec.rb
508
543
  - spec/integration/grid_fs_bucket_spec.rb
509
544
  - spec/integration/heartbeat_events_spec.rb
@@ -514,10 +549,21 @@ files:
514
549
  - spec/integration/read_preference_spec.rb
515
550
  - spec/integration/reconnect_spec.rb
516
551
  - spec/integration/retryable_errors_spec.rb
552
+ - spec/integration/retryable_writes/retryable_writes_36_and_older_spec.rb
553
+ - spec/integration/retryable_writes/retryable_writes_40_and_newer_spec.rb
554
+ - spec/integration/retryable_writes/shared/adds_diagnostics.rb
555
+ - spec/integration/retryable_writes/shared/does_not_support_retries.rb
556
+ - spec/integration/retryable_writes/shared/only_supports_legacy_retries.rb
557
+ - spec/integration/retryable_writes/shared/performs_legacy_retries.rb
558
+ - spec/integration/retryable_writes/shared/performs_modern_retries.rb
559
+ - spec/integration/retryable_writes/shared/performs_no_retries.rb
560
+ - spec/integration/retryable_writes/shared/supports_legacy_retries.rb
561
+ - spec/integration/retryable_writes/shared/supports_modern_retries.rb
562
+ - spec/integration/retryable_writes/shared/supports_retries.rb
517
563
  - spec/integration/retryable_writes_errors_spec.rb
518
- - spec/integration/retryable_writes_spec.rb
519
564
  - spec/integration/sdam_error_handling_spec.rb
520
565
  - spec/integration/sdam_events_spec.rb
566
+ - spec/integration/sdam_prose_spec.rb
521
567
  - spec/integration/server_description_spec.rb
522
568
  - spec/integration/server_monitor_spec.rb
523
569
  - spec/integration/server_selector_spec.rb
@@ -528,7 +574,9 @@ files:
528
574
  - spec/integration/ssl_uri_options_spec.rb
529
575
  - spec/integration/step_down_spec.rb
530
576
  - spec/integration/time_zone_querying_spec.rb
577
+ - spec/integration/transactions_api_examples_spec.rb
531
578
  - spec/integration/transactions_examples_spec.rb
579
+ - spec/integration/x509_auth_spec.rb
532
580
  - spec/integration/zlib_compression_spec.rb
533
581
  - spec/kerberos/kerberos_spec.rb
534
582
  - spec/lite_spec_helper.rb
@@ -537,12 +585,16 @@ files:
537
585
  - spec/mongo/address/unix_spec.rb
538
586
  - spec/mongo/address/validator_spec.rb
539
587
  - spec/mongo/address_spec.rb
588
+ - spec/mongo/auth/aws/request_region_spec.rb
589
+ - spec/mongo/auth/aws/request_spec.rb
540
590
  - spec/mongo/auth/cr_spec.rb
591
+ - spec/mongo/auth/gssapi/conversation_spec.rb
541
592
  - spec/mongo/auth/invalid_mechanism_spec.rb
542
593
  - spec/mongo/auth/ldap/conversation_spec.rb
543
594
  - spec/mongo/auth/ldap_spec.rb
544
595
  - spec/mongo/auth/scram/conversation_spec.rb
545
- - spec/mongo/auth/scram/negotiation_spec.rb
596
+ - spec/mongo/auth/scram256/conversation_spec.rb
597
+ - spec/mongo/auth/scram_negotiation_spec.rb
546
598
  - spec/mongo/auth/scram_spec.rb
547
599
  - spec/mongo/auth/stringprep/profiles/sasl_spec.rb
548
600
  - spec/mongo/auth/stringprep_spec.rb
@@ -574,9 +626,11 @@ files:
574
626
  - spec/mongo/collection/view/builder/flags_spec.rb
575
627
  - spec/mongo/collection/view/builder/modifiers_spec.rb
576
628
  - spec/mongo/collection/view/builder/op_query_spec.rb
629
+ - spec/mongo/collection/view/change_stream_resume_spec.rb
577
630
  - spec/mongo/collection/view/change_stream_spec.rb
578
631
  - spec/mongo/collection/view/explainable_spec.rb
579
632
  - spec/mongo/collection/view/immutable_spec.rb
633
+ - spec/mongo/collection/view/iterable_spec.rb
580
634
  - spec/mongo/collection/view/map_reduce_spec.rb
581
635
  - spec/mongo/collection/view/readable_spec.rb
582
636
  - spec/mongo/collection/view/writable_spec.rb
@@ -606,13 +660,16 @@ files:
606
660
  - spec/mongo/cursor_spec.rb
607
661
  - spec/mongo/database_spec.rb
608
662
  - spec/mongo/dbref_spec.rb
663
+ - spec/mongo/distinguishing_semaphore_spec.rb
609
664
  - spec/mongo/error/bulk_write_error_spec.rb
610
665
  - spec/mongo/error/crypt_error_spec.rb
611
666
  - spec/mongo/error/max_bson_size_spec.rb
612
667
  - spec/mongo/error/no_server_available_spec.rb
613
668
  - spec/mongo/error/notable_spec.rb
669
+ - spec/mongo/error/operation_failure_heavy_spec.rb
614
670
  - spec/mongo/error/operation_failure_spec.rb
615
671
  - spec/mongo/error/parser_spec.rb
672
+ - spec/mongo/error/unsupported_option_spec.rb
616
673
  - spec/mongo/event/publisher_spec.rb
617
674
  - spec/mongo/event/subscriber_spec.rb
618
675
  - spec/mongo/grid/file/chunk_spec.rb
@@ -694,6 +751,8 @@ files:
694
751
  - spec/mongo/protocol/reply_spec.rb
695
752
  - spec/mongo/protocol/update_spec.rb
696
753
  - spec/mongo/retryable_spec.rb
754
+ - spec/mongo/semaphore_spec.rb
755
+ - spec/mongo/server/app_metadata_shared.rb
697
756
  - spec/mongo/server/app_metadata_spec.rb
698
757
  - spec/mongo/server/connection_auth_spec.rb
699
758
  - spec/mongo/server/connection_pool/populator_spec.rb
@@ -731,8 +790,9 @@ files:
731
790
  - spec/mongo/write_concern/unacknowledged_spec.rb
732
791
  - spec/mongo/write_concern_spec.rb
733
792
  - spec/runners/auth.rb
734
- - spec/runners/change_streams.rb
735
- - spec/runners/change_streams/operation.rb
793
+ - spec/runners/change_streams/outcome.rb
794
+ - spec/runners/change_streams/spec.rb
795
+ - spec/runners/change_streams/test.rb
736
796
  - spec/runners/cmap.rb
737
797
  - spec/runners/cmap/verifier.rb
738
798
  - spec/runners/command_monitoring.rb
@@ -748,13 +808,11 @@ files:
748
808
  - spec/runners/crud/verifier.rb
749
809
  - spec/runners/gridfs.rb
750
810
  - spec/runners/read_write_concern_document.rb
811
+ - spec/runners/sdam.rb
751
812
  - spec/runners/sdam/verifier.rb
752
- - spec/runners/sdam_monitoring.rb
753
- - spec/runners/server_discovery_and_monitoring.rb
754
813
  - spec/runners/server_selection.rb
755
814
  - spec/runners/server_selection_rtt.rb
756
815
  - spec/runners/transactions.rb
757
- - spec/runners/transactions/context.rb
758
816
  - spec/runners/transactions/operation.rb
759
817
  - spec/runners/transactions/spec.rb
760
818
  - spec/runners/transactions/test.rb
@@ -768,6 +826,8 @@ files:
768
826
  - spec/spec_tests/crud_spec.rb
769
827
  - spec/spec_tests/data/auth/connection-string.yml
770
828
  - spec/spec_tests/data/change_streams/change-streams-errors.yml
829
+ - spec/spec_tests/data/change_streams/change-streams-resume-errorLabels.yml
830
+ - spec/spec_tests/data/change_streams/change-streams-resume-whitelist.yml
771
831
  - spec/spec_tests/data/change_streams/change-streams.yml
772
832
  - spec/spec_tests/data/client_side_encryption/aggregate.yml
773
833
  - spec/spec_tests/data/client_side_encryption/badQueries.yml
@@ -878,8 +938,51 @@ files:
878
938
  - spec/spec_tests/data/crud_v2/aggregate-merge.yml
879
939
  - spec/spec_tests/data/crud_v2/aggregate-out-readConcern.yml
880
940
  - spec/spec_tests/data/crud_v2/bulkWrite-arrayFilters.yml
941
+ - spec/spec_tests/data/crud_v2/bulkWrite-delete-hint-clientError.yml
942
+ - spec/spec_tests/data/crud_v2/bulkWrite-delete-hint-serverError.yml
943
+ - spec/spec_tests/data/crud_v2/bulkWrite-delete-hint.yml
944
+ - spec/spec_tests/data/crud_v2/bulkWrite-update-hint-clientError.yml
945
+ - spec/spec_tests/data/crud_v2/bulkWrite-update-hint-serverError.yml
946
+ - spec/spec_tests/data/crud_v2/bulkWrite-update-hint.yml
881
947
  - spec/spec_tests/data/crud_v2/db-aggregate.yml
948
+ - spec/spec_tests/data/crud_v2/deleteMany-hint-clientError.yml
949
+ - spec/spec_tests/data/crud_v2/deleteMany-hint-serverError.yml
950
+ - spec/spec_tests/data/crud_v2/deleteMany-hint.yml
951
+ - spec/spec_tests/data/crud_v2/deleteOne-hint-clientError.yml
952
+ - spec/spec_tests/data/crud_v2/deleteOne-hint-serverError.yml
953
+ - spec/spec_tests/data/crud_v2/deleteOne-hint.yml
954
+ - spec/spec_tests/data/crud_v2/find-allowdiskuse-clientError.yml
955
+ - spec/spec_tests/data/crud_v2/find-allowdiskuse-serverError.yml
956
+ - spec/spec_tests/data/crud_v2/find-allowdiskuse.yml
957
+ - spec/spec_tests/data/crud_v2/findOneAndDelete-hint-clientError.yml
958
+ - spec/spec_tests/data/crud_v2/findOneAndDelete-hint-serverError.yml
959
+ - spec/spec_tests/data/crud_v2/findOneAndDelete-hint.yml
960
+ - spec/spec_tests/data/crud_v2/findOneAndReplace-hint-clientError.yml
961
+ - spec/spec_tests/data/crud_v2/findOneAndReplace-hint-serverError.yml
962
+ - spec/spec_tests/data/crud_v2/findOneAndReplace-hint.yml
963
+ - spec/spec_tests/data/crud_v2/findOneAndUpdate-hint-clientError.yml
964
+ - spec/spec_tests/data/crud_v2/findOneAndUpdate-hint-serverError.yml
965
+ - spec/spec_tests/data/crud_v2/findOneAndUpdate-hint.yml
966
+ - spec/spec_tests/data/crud_v2/replaceOne-hint.yml
967
+ - spec/spec_tests/data/crud_v2/unacknowledged-bulkWrite-delete-hint-clientError.yml
968
+ - spec/spec_tests/data/crud_v2/unacknowledged-bulkWrite-update-hint-clientError.yml
969
+ - spec/spec_tests/data/crud_v2/unacknowledged-deleteMany-hint-clientError.yml
970
+ - spec/spec_tests/data/crud_v2/unacknowledged-deleteOne-hint-clientError.yml
971
+ - spec/spec_tests/data/crud_v2/unacknowledged-findOneAndDelete-hint-clientError.yml
972
+ - spec/spec_tests/data/crud_v2/unacknowledged-findOneAndReplace-hint-clientError.yml
973
+ - spec/spec_tests/data/crud_v2/unacknowledged-findOneAndUpdate-hint-clientError.yml
974
+ - spec/spec_tests/data/crud_v2/unacknowledged-replaceOne-hint-clientError.yml
975
+ - spec/spec_tests/data/crud_v2/unacknowledged-updateMany-hint-clientError.yml
976
+ - spec/spec_tests/data/crud_v2/unacknowledged-updateOne-hint-clientError.yml
977
+ - spec/spec_tests/data/crud_v2/updateMany-hint-clientError.yml
978
+ - spec/spec_tests/data/crud_v2/updateMany-hint-serverError.yml
979
+ - spec/spec_tests/data/crud_v2/updateMany-hint.yml
980
+ - spec/spec_tests/data/crud_v2/updateOne-hint-clientError.yml
981
+ - spec/spec_tests/data/crud_v2/updateOne-hint-serverError.yml
982
+ - spec/spec_tests/data/crud_v2/updateOne-hint.yml
882
983
  - spec/spec_tests/data/crud_v2/updateWithPipelines.yml
984
+ - spec/spec_tests/data/dns_seedlist_discovery/direct-connection-false.yml
985
+ - spec/spec_tests/data/dns_seedlist_discovery/direct-connection-true.yml
883
986
  - spec/spec_tests/data/dns_seedlist_discovery/longer-parent-in-return.yml
884
987
  - spec/spec_tests/data/dns_seedlist_discovery/misformatted-option.yml
885
988
  - spec/spec_tests/data/dns_seedlist_discovery/no-results.yml
@@ -910,6 +1013,7 @@ files:
910
1013
  - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.yml
911
1014
  - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Incompatible.yml
912
1015
  - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.yml
1016
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/MaxStalenessTooSmall.yml
913
1017
  - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest.yml
914
1018
  - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest2.yml
915
1019
  - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/NoKnownServers.yml
@@ -946,6 +1050,10 @@ files:
946
1050
  - spec/spec_tests/data/read_write_concern/connection-string/write-concern.yml
947
1051
  - spec/spec_tests/data/read_write_concern/document/read-concern.yml
948
1052
  - spec/spec_tests/data/read_write_concern/document/write-concern.yml
1053
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-2.6.yml
1054
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.2.yml
1055
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.4.yml
1056
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-4.2.yml
949
1057
  - spec/spec_tests/data/retryable_reads/aggregate-merge.yml
950
1058
  - spec/spec_tests/data/retryable_reads/aggregate-serverErrors.yml
951
1059
  - spec/spec_tests/data/retryable_reads/aggregate.yml
@@ -988,35 +1096,123 @@ files:
988
1096
  - spec/spec_tests/data/retryable_reads/listIndexes-serverErrors.yml
989
1097
  - spec/spec_tests/data/retryable_reads/listIndexes.yml
990
1098
  - spec/spec_tests/data/retryable_reads/mapReduce.yml
1099
+ - spec/spec_tests/data/retryable_writes/bulkWrite-errorLabels.yml
991
1100
  - spec/spec_tests/data/retryable_writes/bulkWrite-serverErrors.yml
992
1101
  - spec/spec_tests/data/retryable_writes/bulkWrite.yml
993
1102
  - spec/spec_tests/data/retryable_writes/deleteMany.yml
1103
+ - spec/spec_tests/data/retryable_writes/deleteOne-errorLabels.yml
994
1104
  - spec/spec_tests/data/retryable_writes/deleteOne-serverErrors.yml
995
1105
  - spec/spec_tests/data/retryable_writes/deleteOne.yml
1106
+ - spec/spec_tests/data/retryable_writes/findOneAndDelete-errorLabels.yml
996
1107
  - spec/spec_tests/data/retryable_writes/findOneAndDelete-serverErrors.yml
997
1108
  - spec/spec_tests/data/retryable_writes/findOneAndDelete.yml
1109
+ - spec/spec_tests/data/retryable_writes/findOneAndReplace-errorLabels.yml
998
1110
  - spec/spec_tests/data/retryable_writes/findOneAndReplace-serverErrors.yml
999
1111
  - spec/spec_tests/data/retryable_writes/findOneAndReplace.yml
1112
+ - spec/spec_tests/data/retryable_writes/findOneAndUpdate-errorLabels.yml
1000
1113
  - spec/spec_tests/data/retryable_writes/findOneAndUpdate-serverErrors.yml
1001
1114
  - spec/spec_tests/data/retryable_writes/findOneAndUpdate.yml
1115
+ - spec/spec_tests/data/retryable_writes/insertMany-errorLabels.yml
1002
1116
  - spec/spec_tests/data/retryable_writes/insertMany-serverErrors.yml
1003
1117
  - spec/spec_tests/data/retryable_writes/insertMany.yml
1118
+ - spec/spec_tests/data/retryable_writes/insertOne-errorLabels.yml
1004
1119
  - spec/spec_tests/data/retryable_writes/insertOne-serverErrors.yml
1005
1120
  - spec/spec_tests/data/retryable_writes/insertOne.yml
1121
+ - spec/spec_tests/data/retryable_writes/replaceOne-errorLabels.yml
1006
1122
  - spec/spec_tests/data/retryable_writes/replaceOne-serverErrors.yml
1007
1123
  - spec/spec_tests/data/retryable_writes/replaceOne.yml
1008
1124
  - spec/spec_tests/data/retryable_writes/updateMany.yml
1125
+ - spec/spec_tests/data/retryable_writes/updateOne-errorLabels.yml
1009
1126
  - spec/spec_tests/data/retryable_writes/updateOne-serverErrors.yml
1010
1127
  - spec/spec_tests/data/retryable_writes/updateOne.yml
1128
+ - spec/spec_tests/data/sdam/errors/error_handling_handshake.yml
1129
+ - spec/spec_tests/data/sdam/errors/non-stale-network-error.yml
1130
+ - spec/spec_tests/data/sdam/errors/non-stale-network-timeout-error.yml
1131
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedAtShutdown.yml
1132
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedDueToReplStateChange.yml
1133
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMaster.yml
1134
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMasterNoSlaveOk.yml
1135
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMasterOrSecondary.yml
1136
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-PrimarySteppedDown.yml
1137
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-ShutdownInProgress.yml
1138
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedAtShutdown.yml
1139
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedDueToReplStateChange.yml
1140
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMaster.yml
1141
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMasterNoSlaveOk.yml
1142
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMasterOrSecondary.yml
1143
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-PrimarySteppedDown.yml
1144
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-ShutdownInProgress.yml
1145
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedAtShutdown.yml
1146
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedDueToReplStateChange.yml
1147
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMaster.yml
1148
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMasterNoSlaveOk.yml
1149
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMasterOrSecondary.yml
1150
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-PrimarySteppedDown.yml
1151
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-ShutdownInProgress.yml
1152
+ - spec/spec_tests/data/sdam/errors/post-42-InterruptedAtShutdown.yml
1153
+ - spec/spec_tests/data/sdam/errors/post-42-InterruptedDueToReplStateChange.yml
1154
+ - spec/spec_tests/data/sdam/errors/post-42-NotMaster.yml
1155
+ - spec/spec_tests/data/sdam/errors/post-42-NotMasterNoSlaveOk.yml
1156
+ - spec/spec_tests/data/sdam/errors/post-42-NotMasterOrSecondary.yml
1157
+ - spec/spec_tests/data/sdam/errors/post-42-PrimarySteppedDown.yml
1158
+ - spec/spec_tests/data/sdam/errors/post-42-ShutdownInProgress.yml
1159
+ - spec/spec_tests/data/sdam/errors/pre-42-InterruptedAtShutdown.yml
1160
+ - spec/spec_tests/data/sdam/errors/pre-42-InterruptedDueToReplStateChange.yml
1161
+ - spec/spec_tests/data/sdam/errors/pre-42-NotMaster.yml
1162
+ - spec/spec_tests/data/sdam/errors/pre-42-NotMasterNoSlaveOk.yml
1163
+ - spec/spec_tests/data/sdam/errors/pre-42-NotMasterOrSecondary.yml
1164
+ - spec/spec_tests/data/sdam/errors/pre-42-PrimarySteppedDown.yml
1165
+ - spec/spec_tests/data/sdam/errors/pre-42-ShutdownInProgress.yml
1166
+ - spec/spec_tests/data/sdam/errors/stale-generation-InterruptedAtShutdown.yml
1167
+ - spec/spec_tests/data/sdam/errors/stale-generation-InterruptedDueToReplStateChange.yml
1168
+ - spec/spec_tests/data/sdam/errors/stale-generation-NotMaster.yml
1169
+ - spec/spec_tests/data/sdam/errors/stale-generation-NotMasterNoSlaveOk.yml
1170
+ - spec/spec_tests/data/sdam/errors/stale-generation-NotMasterOrSecondary.yml
1171
+ - spec/spec_tests/data/sdam/errors/stale-generation-PrimarySteppedDown.yml
1172
+ - spec/spec_tests/data/sdam/errors/stale-generation-ShutdownInProgress.yml
1173
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedAtShutdown.yml
1174
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedDueToReplStateChange.yml
1175
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMaster.yml
1176
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMasterNoSlaveOk.yml
1177
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMasterOrSecondary.yml
1178
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-PrimarySteppedDown.yml
1179
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-ShutdownInProgress.yml
1180
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-network.yml
1181
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-timeout.yml
1182
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedAtShutdown.yml
1183
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedDueToReplStateChange.yml
1184
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMaster.yml
1185
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMasterNoSlaveOk.yml
1186
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMasterOrSecondary.yml
1187
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-PrimarySteppedDown.yml
1188
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-ShutdownInProgress.yml
1189
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-network.yml
1190
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-timeout.yml
1191
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedAtShutdown.yml
1192
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedDueToReplStateChange.yml
1193
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMaster.yml
1194
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMasterNoSlaveOk.yml
1195
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMasterOrSecondary.yml
1196
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-PrimarySteppedDown.yml
1197
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-ShutdownInProgress.yml
1011
1198
  - spec/spec_tests/data/sdam/rs/compatible.yml
1012
1199
  - spec/spec_tests/data/sdam/rs/compatible_unknown.yml
1013
1200
  - spec/spec_tests/data/sdam/rs/discover_arbiters.yml
1201
+ - spec/spec_tests/data/sdam/rs/discover_arbiters_replicaset.yml
1202
+ - spec/spec_tests/data/sdam/rs/discover_ghost.yml
1203
+ - spec/spec_tests/data/sdam/rs/discover_ghost_replicaset.yml
1204
+ - spec/spec_tests/data/sdam/rs/discover_hidden.yml
1205
+ - spec/spec_tests/data/sdam/rs/discover_hidden_replicaset.yml
1014
1206
  - spec/spec_tests/data/sdam/rs/discover_passives.yml
1207
+ - spec/spec_tests/data/sdam/rs/discover_passives_replicaset.yml
1015
1208
  - spec/spec_tests/data/sdam/rs/discover_primary.yml
1209
+ - spec/spec_tests/data/sdam/rs/discover_primary_replicaset.yml
1210
+ - spec/spec_tests/data/sdam/rs/discover_rsother.yml
1211
+ - spec/spec_tests/data/sdam/rs/discover_rsother_replicaset.yml
1016
1212
  - spec/spec_tests/data/sdam/rs/discover_secondary.yml
1213
+ - spec/spec_tests/data/sdam/rs/discover_secondary_replicaset.yml
1017
1214
  - spec/spec_tests/data/sdam/rs/discovery.yml
1018
1215
  - spec/spec_tests/data/sdam/rs/equal_electionids.yml
1019
- - spec/spec_tests/data/sdam/rs/ghost_discovered.yml
1020
1216
  - spec/spec_tests/data/sdam/rs/hosts_differ_from_seeds.yml
1021
1217
  - spec/spec_tests/data/sdam/rs/incompatible_arbiter.yml
1022
1218
  - spec/spec_tests/data/sdam/rs/incompatible_ghost.yml
@@ -1046,8 +1242,8 @@ files:
1046
1242
  - spec/spec_tests/data/sdam/rs/primary_to_no_primary_mismatched_me.yml
1047
1243
  - spec/spec_tests/data/sdam/rs/primary_wrong_set_name.yml
1048
1244
  - spec/spec_tests/data/sdam/rs/repeated.yml
1245
+ - spec/spec_tests/data/sdam/rs/replicaset_rsnp.yml
1049
1246
  - spec/spec_tests/data/sdam/rs/response_from_removed.yml
1050
- - spec/spec_tests/data/sdam/rs/rsother_discovered.yml
1051
1247
  - spec/spec_tests/data/sdam/rs/ruby_primary_address_change.yml
1052
1248
  - spec/spec_tests/data/sdam/rs/ruby_secondary_wrong_set_name_with_primary_second.yml
1053
1249
  - spec/spec_tests/data/sdam/rs/sec_not_auth.yml
@@ -1059,16 +1255,19 @@ files:
1059
1255
  - spec/spec_tests/data/sdam/rs/stepdown_change_set_name.yml
1060
1256
  - spec/spec_tests/data/sdam/rs/too_new.yml
1061
1257
  - spec/spec_tests/data/sdam/rs/too_old.yml
1258
+ - spec/spec_tests/data/sdam/rs/topology_version_equal.yml
1259
+ - spec/spec_tests/data/sdam/rs/topology_version_greater.yml
1260
+ - spec/spec_tests/data/sdam/rs/topology_version_less.yml
1062
1261
  - spec/spec_tests/data/sdam/rs/unexpected_mongos.yml
1063
1262
  - spec/spec_tests/data/sdam/rs/use_setversion_without_electionid.yml
1064
1263
  - spec/spec_tests/data/sdam/rs/wrong_set_name.yml
1065
1264
  - spec/spec_tests/data/sdam/sharded/compatible.yml
1265
+ - spec/spec_tests/data/sdam/sharded/discover_single_mongos.yml
1066
1266
  - spec/spec_tests/data/sdam/sharded/ls_timeout_mongos.yml
1067
1267
  - spec/spec_tests/data/sdam/sharded/mongos_disconnect.yml
1068
1268
  - spec/spec_tests/data/sdam/sharded/multiple_mongoses.yml
1069
1269
  - spec/spec_tests/data/sdam/sharded/non_mongos_removed.yml
1070
1270
  - spec/spec_tests/data/sdam/sharded/normalize_uri_case.yml
1071
- - spec/spec_tests/data/sdam/sharded/ruby_discovered_single_mongos.yml
1072
1271
  - spec/spec_tests/data/sdam/sharded/ruby_primary_different_address.yml
1073
1272
  - spec/spec_tests/data/sdam/sharded/ruby_primary_mismatched_me.yml
1074
1273
  - spec/spec_tests/data/sdam/sharded/too_new.yml
@@ -1076,11 +1275,16 @@ files:
1076
1275
  - spec/spec_tests/data/sdam/single/compatible.yml
1077
1276
  - spec/spec_tests/data/sdam/single/direct_connection_external_ip.yml
1078
1277
  - spec/spec_tests/data/sdam/single/direct_connection_mongos.yml
1278
+ - spec/spec_tests/data/sdam/single/direct_connection_replicaset.yml
1079
1279
  - spec/spec_tests/data/sdam/single/direct_connection_rsarbiter.yml
1080
1280
  - spec/spec_tests/data/sdam/single/direct_connection_rsprimary.yml
1081
1281
  - spec/spec_tests/data/sdam/single/direct_connection_rssecondary.yml
1082
1282
  - spec/spec_tests/data/sdam/single/direct_connection_slave.yml
1083
1283
  - spec/spec_tests/data/sdam/single/direct_connection_standalone.yml
1284
+ - spec/spec_tests/data/sdam/single/direct_connection_unavailable_seed.yml
1285
+ - spec/spec_tests/data/sdam/single/direct_connection_wrong_set_name.yml
1286
+ - spec/spec_tests/data/sdam/single/discover_standalone.yml
1287
+ - spec/spec_tests/data/sdam/single/discover_unavailable_seed.yml
1084
1288
  - spec/spec_tests/data/sdam/single/ls_timeout_standalone.yml
1085
1289
  - spec/spec_tests/data/sdam/single/not_ok_response.yml
1086
1290
  - spec/spec_tests/data/sdam/single/ruby_primary_different_address.yml
@@ -1088,7 +1292,17 @@ files:
1088
1292
  - spec/spec_tests/data/sdam/single/standalone_removed.yml
1089
1293
  - spec/spec_tests/data/sdam/single/too_new.yml
1090
1294
  - spec/spec_tests/data/sdam/single/too_old.yml
1091
- - spec/spec_tests/data/sdam/single/unavailable_seed.yml
1295
+ - spec/spec_tests/data/sdam/single/too_old_then_upgraded.yml
1296
+ - spec/spec_tests/data/sdam_integration/cancel-server-check.yml
1297
+ - spec/spec_tests/data/sdam_integration/connectTimeoutMS.yml
1298
+ - spec/spec_tests/data/sdam_integration/find-network-error.yml
1299
+ - spec/spec_tests/data/sdam_integration/find-shutdown-error.yml
1300
+ - spec/spec_tests/data/sdam_integration/insert-network-error.yml
1301
+ - spec/spec_tests/data/sdam_integration/insert-shutdown-error.yml
1302
+ - spec/spec_tests/data/sdam_integration/isMaster-command-error.yml
1303
+ - spec/spec_tests/data/sdam_integration/isMaster-network-error.yml
1304
+ - spec/spec_tests/data/sdam_integration/isMaster-timeout.yml
1305
+ - spec/spec_tests/data/sdam_integration/rediscover-quickly-after-step-down.yml
1092
1306
  - spec/spec_tests/data/sdam_monitoring/discovered_standalone.yml
1093
1307
  - spec/spec_tests/data/sdam_monitoring/replica_set_other_chain.yml
1094
1308
  - spec/spec_tests/data/sdam_monitoring/replica_set_other_change.yml
@@ -1149,6 +1363,8 @@ files:
1149
1363
  - spec/spec_tests/data/transactions/causal-consistency.yml
1150
1364
  - spec/spec_tests/data/transactions/commit.yml
1151
1365
  - spec/spec_tests/data/transactions/count.yml
1366
+ - spec/spec_tests/data/transactions/create-collection.yml
1367
+ - spec/spec_tests/data/transactions/create-index.yml
1152
1368
  - spec/spec_tests/data/transactions/delete.yml
1153
1369
  - spec/spec_tests/data/transactions/error-labels.yml
1154
1370
  - spec/spec_tests/data/transactions/errors-client.yml
@@ -1164,7 +1380,9 @@ files:
1164
1380
  - spec/spec_tests/data/transactions/read-concern.yml
1165
1381
  - spec/spec_tests/data/transactions/read-pref.yml
1166
1382
  - spec/spec_tests/data/transactions/reads.yml
1383
+ - spec/spec_tests/data/transactions/retryable-abort-errorLabels.yml
1167
1384
  - spec/spec_tests/data/transactions/retryable-abort.yml
1385
+ - spec/spec_tests/data/transactions/retryable-commit-errorLabels.yml
1168
1386
  - spec/spec_tests/data/transactions/retryable-commit.yml
1169
1387
  - spec/spec_tests/data/transactions/retryable-writes.yml
1170
1388
  - spec/spec_tests/data/transactions/run-command.yml
@@ -1187,14 +1405,18 @@ files:
1187
1405
  - spec/spec_tests/data/uri_options/connection-options.yml
1188
1406
  - spec/spec_tests/data/uri_options/connection-pool-options.yml
1189
1407
  - spec/spec_tests/data/uri_options/read-preference-options.yml
1408
+ - spec/spec_tests/data/uri_options/ruby-auth-options.yml
1409
+ - spec/spec_tests/data/uri_options/ruby-connection-options.yml
1190
1410
  - spec/spec_tests/data/uri_options/tls-options.yml
1191
1411
  - spec/spec_tests/dns_seedlist_discovery_spec.rb
1192
1412
  - spec/spec_tests/gridfs_spec.rb
1193
1413
  - spec/spec_tests/max_staleness_spec.rb
1194
1414
  - spec/spec_tests/read_write_concern_connection_string_spec.rb
1195
1415
  - spec/spec_tests/read_write_concern_document_spec.rb
1416
+ - spec/spec_tests/read_write_concern_operaton_spec.rb
1196
1417
  - spec/spec_tests/retryable_reads_spec.rb
1197
1418
  - spec/spec_tests/retryable_writes_spec.rb
1419
+ - spec/spec_tests/sdam_integration_spec.rb
1198
1420
  - spec/spec_tests/sdam_monitoring_spec.rb
1199
1421
  - spec/spec_tests/sdam_spec.rb
1200
1422
  - spec/spec_tests/server_selection_rtt_spec.rb
@@ -1202,9 +1424,16 @@ files:
1202
1424
  - spec/spec_tests/transactions_api_spec.rb
1203
1425
  - spec/spec_tests/transactions_spec.rb
1204
1426
  - spec/spec_tests/uri_options_spec.rb
1427
+ - spec/stress/cleanup_spec.rb
1205
1428
  - spec/stress/connection_pool_stress_spec.rb
1206
1429
  - spec/stress/connection_pool_timing_spec.rb
1430
+ - spec/stress/fork_reconnect_stress_spec.rb
1207
1431
  - spec/support/authorization.rb
1432
+ - spec/support/aws_utils.rb
1433
+ - spec/support/aws_utils/base.rb
1434
+ - spec/support/aws_utils/inspector.rb
1435
+ - spec/support/aws_utils/orchestrator.rb
1436
+ - spec/support/aws_utils/provisioner.rb
1208
1437
  - spec/support/background_thread_registry.rb
1209
1438
  - spec/support/certificates/README.md
1210
1439
  - spec/support/certificates/ca.crt
@@ -1230,6 +1459,7 @@ files:
1230
1459
  - spec/support/certificates/server-second-level.key
1231
1460
  - spec/support/certificates/server-second-level.pem
1232
1461
  - spec/support/certificates/server.pem
1462
+ - spec/support/child_process_helper.rb
1233
1463
  - spec/support/client_registry.rb
1234
1464
  - spec/support/client_registry_macros.rb
1235
1465
  - spec/support/cluster_config.rb
@@ -1256,6 +1486,7 @@ files:
1256
1486
  - spec/support/dns.rb
1257
1487
  - spec/support/event_subscriber.rb
1258
1488
  - spec/support/json_ext_formatter.rb
1489
+ - spec/support/keyword_struct.rb
1259
1490
  - spec/support/lite_constraints.rb
1260
1491
  - spec/support/local_resource_registry.rb
1261
1492
  - spec/support/matchers.rb
@@ -1263,9 +1494,11 @@ files:
1263
1494
  - spec/support/primary_socket.rb
1264
1495
  - spec/support/sdam_formatter_integration.rb
1265
1496
  - spec/support/shared/protocol.rb
1497
+ - spec/support/shared/scram_conversation.rb
1266
1498
  - spec/support/shared/server_selector.rb
1267
1499
  - spec/support/shared/session.rb
1268
1500
  - spec/support/spec_config.rb
1501
+ - spec/support/spec_organizer.rb
1269
1502
  - spec/support/spec_setup.rb
1270
1503
  - spec/support/utils.rb
1271
1504
  homepage: https://docs.mongodb.com/ruby-driver/
@@ -1292,811 +1525,1019 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1292
1525
  - !ruby/object:Gem::Version
1293
1526
  version: '0'
1294
1527
  requirements: []
1295
- rubygems_version: 3.1.2
1528
+ rubyforge_project:
1529
+ rubygems_version: 2.7.6.2
1296
1530
  signing_key:
1297
1531
  specification_version: 4
1298
1532
  summary: Ruby driver for MongoDB
1299
1533
  test_files:
1300
- - spec/kerberos/kerberos_spec.rb
1301
- - spec/spec_helper.rb
1302
- - spec/integration/read_preference_spec.rb
1303
- - spec/integration/sdam_events_spec.rb
1304
- - spec/integration/connect_single_rs_name_spec.rb
1305
- - spec/integration/docs_examples_spec.rb
1306
- - spec/integration/time_zone_querying_spec.rb
1307
- - spec/integration/client_spec.rb
1308
- - spec/integration/operation_failure_code_spec.rb
1309
- - spec/integration/server_spec.rb
1310
- - spec/integration/crud_spec.rb
1311
- - spec/integration/cursor_reaping_spec.rb
1312
- - spec/integration/connection_pool_populator_spec.rb
1313
- - spec/integration/size_limit_spec.rb
1314
- - spec/integration/change_stream_spec.rb
1315
- - spec/integration/bulk_insert_spec.rb
1316
- - spec/integration/bson_symbol_spec.rb
1317
- - spec/integration/reconnect_spec.rb
1318
- - spec/integration/error_detection_spec.rb
1319
- - spec/integration/retryable_writes_errors_spec.rb
1320
- - spec/integration/retryable_writes_spec.rb
1321
- - spec/integration/mmapv1_spec.rb
1322
- - spec/integration/client_side_encryption/explicit_encryption_spec.rb
1323
- - spec/integration/client_side_encryption/data_key_spec.rb
1324
- - spec/integration/client_side_encryption/corpus_spec.rb
1325
- - spec/integration/client_side_encryption/client_close_spec.rb
1326
- - spec/integration/client_side_encryption/custom_endpoint_spec.rb
1327
- - spec/integration/client_side_encryption/auto_encryption_command_monitoring_spec.rb
1328
- - spec/integration/client_side_encryption/bson_size_limit_spec.rb
1329
- - spec/integration/client_side_encryption/external_key_vault_spec.rb
1330
- - spec/integration/client_side_encryption/auto_encryption_old_wire_version_spec.rb
1331
- - spec/integration/client_side_encryption/bypass_mongocryptd_spawn_spec.rb
1332
- - spec/integration/client_side_encryption/auto_encryption_bulk_writes_spec.rb
1333
- - spec/integration/client_side_encryption/auto_encryption_reconnect_spec.rb
1334
- - spec/integration/client_side_encryption/auto_encryption_mongocryptd_spawn_spec.rb
1335
- - spec/integration/client_side_encryption/auto_encryption_spec.rb
1336
- - spec/integration/client_side_encryption/views_spec.rb
1337
- - spec/integration/mongos_pinning_spec.rb
1338
- - spec/integration/heartbeat_events_spec.rb
1339
- - spec/integration/sdam_error_handling_spec.rb
1340
- - spec/integration/retryable_errors_spec.rb
1341
- - spec/integration/command_spec.rb
1342
- - spec/integration/grid_fs_bucket_spec.rb
1343
- - spec/integration/get_more_spec.rb
1344
- - spec/integration/shell_examples_spec.rb
1345
- - spec/integration/client_construction_spec.rb
1346
- - spec/integration/read_concern_spec.rb
1347
- - spec/integration/transactions_examples_spec.rb
1348
- - spec/integration/bulk_write_spec.rb
1349
- - spec/integration/change_stream_examples_spec.rb
1350
- - spec/integration/connection_spec.rb
1351
- - spec/integration/client_authentication_options_spec.rb
1352
- - spec/integration/command_monitoring_spec.rb
1353
- - spec/integration/ssl_uri_options_spec.rb
1354
- - spec/integration/step_down_spec.rb
1355
- - spec/integration/client_connectivity_spec.rb
1356
- - spec/integration/client_update_spec.rb
1357
- - spec/integration/server_monitor_spec.rb
1358
- - spec/integration/srv_monitoring_spec.rb
1359
- - spec/integration/server_description_spec.rb
1360
- - spec/integration/auth_spec.rb
1361
- - spec/integration/server_selector_spec.rb
1362
- - spec/integration/zlib_compression_spec.rb
1363
- - spec/lite_spec_helper.rb
1364
- - spec/README.md
1365
- - spec/USERS.md
1366
- - spec/support/client_registry_macros.rb
1367
- - spec/support/common_shortcuts.rb
1368
- - spec/support/constraints.rb
1369
- - spec/support/matchers.rb
1370
- - spec/support/background_thread_registry.rb
1371
- - spec/support/monitoring_ext.rb
1372
- - spec/support/client_registry.rb
1373
- - spec/support/lite_constraints.rb
1374
- - spec/support/crypt/corpus/corpus-key-local.json
1375
- - spec/support/crypt/corpus/corpus.json
1376
- - spec/support/crypt/corpus/corpus-key-aws.json
1377
- - spec/support/crypt/corpus/corpus-schema.json
1378
- - spec/support/crypt/corpus/corpus_encrypted.json
1379
- - spec/support/crypt/schema_maps/schema_map_local.json
1380
- - spec/support/crypt/schema_maps/schema_map_aws_key_alt_names.json
1381
- - spec/support/crypt/schema_maps/schema_map_aws.json
1382
- - spec/support/crypt/schema_maps/schema_map_local_key_alt_names.json
1383
- - spec/support/crypt/limits/limits-doc.json
1384
- - spec/support/crypt/limits/limits-key.json
1385
- - spec/support/crypt/limits/limits-schema.json
1386
- - spec/support/crypt/data_keys/key_document_local.json
1387
- - spec/support/crypt/data_keys/key_document_aws.json
1388
- - spec/support/crypt/external/external-schema.json
1389
- - spec/support/crypt/external/external-key.json
1390
- - spec/support/json_ext_formatter.rb
1391
- - spec/support/sdam_formatter_integration.rb
1392
- - spec/support/primary_socket.rb
1393
- - spec/support/shared/server_selector.rb
1394
- - spec/support/shared/session.rb
1395
- - spec/support/shared/protocol.rb
1396
- - spec/support/certificates/client-second-level.key
1397
- - spec/support/certificates/client-second-level-bundle.pem
1398
- - spec/support/certificates/server-second-level.crt
1399
- - spec/support/certificates/client.crt
1400
- - spec/support/certificates/client-x509.crt
1401
- - spec/support/certificates/server.pem
1402
- - spec/support/certificates/ca.crt
1403
- - spec/support/certificates/crl.pem
1404
- - spec/support/certificates/server-second-level-bundle.pem
1405
- - spec/support/certificates/client-second-level.pem
1406
- - spec/support/certificates/client.pem
1407
- - spec/support/certificates/README.md
1408
- - spec/support/certificates/server-second-level.key
1409
- - spec/support/certificates/client-x509.pem
1410
- - spec/support/certificates/client-encrypted.key
1411
- - spec/support/certificates/client-second-level.crt
1412
- - spec/support/certificates/server-int.crt
1413
- - spec/support/certificates/client-int.crt
1414
- - spec/support/certificates/crl_client_revoked.pem
1415
- - spec/support/certificates/python-ca.crt
1416
- - spec/support/certificates/client-x509.key
1417
- - spec/support/certificates/server-second-level.pem
1418
- - spec/support/certificates/multi-ca.crt
1419
- - spec/support/certificates/client.key
1420
- - spec/support/utils.rb
1421
- - spec/support/authorization.rb
1422
- - spec/support/spec_config.rb
1423
- - spec/support/spec_setup.rb
1424
- - spec/support/cluster_tools.rb
1425
- - spec/support/dns.rb
1426
- - spec/support/local_resource_registry.rb
1427
- - spec/support/event_subscriber.rb
1428
- - spec/support/crypt.rb
1429
- - spec/support/cluster_config.rb
1430
- - spec/mongo/operation/collections_info_spec.rb
1431
- - spec/mongo/operation/delete_spec.rb
1432
- - spec/mongo/operation/drop_index_spec.rb
1433
- - spec/mongo/operation/insert/bulk_spec.rb
1434
- - spec/mongo/operation/insert/command_spec.rb
1435
- - spec/mongo/operation/insert/op_msg_spec.rb
1436
- - spec/mongo/operation/aggregate_spec.rb
1437
- - spec/mongo/operation/update/bulk_spec.rb
1438
- - spec/mongo/operation/update/command_spec.rb
1439
- - spec/mongo/operation/update/op_msg_spec.rb
1440
- - spec/mongo/operation/delete/bulk_spec.rb
1441
- - spec/mongo/operation/delete/command_spec.rb
1442
- - spec/mongo/operation/delete/op_msg_spec.rb
1443
- - spec/mongo/operation/aggregate/result_spec.rb
1444
- - spec/mongo/operation/map_reduce_spec.rb
1445
- - spec/mongo/operation/create_index_spec.rb
1446
- - spec/mongo/operation/update_spec.rb
1447
- - spec/mongo/operation/remove_user_spec.rb
1448
- - spec/mongo/operation/read_preference_legacy_spec.rb
1449
- - spec/mongo/operation/specifiable_spec.rb
1450
- - spec/mongo/operation/result_spec.rb
1451
- - spec/mongo/operation/command_spec.rb
1452
- - spec/mongo/operation/read_preference_op_msg_spec.rb
1453
- - spec/mongo/operation/get_more_spec.rb
1454
- - spec/mongo/operation/insert_spec.rb
1455
- - spec/mongo/operation/limited_spec.rb
1456
- - spec/mongo/operation/indexes_spec.rb
1457
- - spec/mongo/operation/find/legacy_spec.rb
1458
- - spec/mongo/operation/update_user_spec.rb
1459
- - spec/mongo/operation/create_user_spec.rb
1460
- - spec/mongo/operation/kill_cursors_spec.rb
1461
- - spec/mongo/session_spec.rb
1462
- - spec/mongo/collection_spec.rb
1463
- - spec/mongo/options/redacted_spec.rb
1464
- - spec/mongo/cursor_spec.rb
1465
- - spec/mongo/write_concern/unacknowledged_spec.rb
1466
- - spec/mongo/write_concern/acknowledged_spec.rb
1534
+ - spec/mongo/cluster/cursor_reaper_spec.rb
1535
+ - spec/mongo/cluster/periodic_executor_spec.rb
1536
+ - spec/mongo/cluster/topology_spec.rb
1467
1537
  - spec/mongo/cluster/topology/sharded_spec.rb
1468
1538
  - spec/mongo/cluster/topology/single_spec.rb
1469
1539
  - spec/mongo/cluster/topology/replica_set_spec.rb
1470
1540
  - spec/mongo/cluster/topology/unknown_spec.rb
1471
- - spec/mongo/cluster/cursor_reaper_spec.rb
1472
- - spec/mongo/cluster/periodic_executor_spec.rb
1473
- - spec/mongo/cluster/topology_spec.rb
1474
1541
  - spec/mongo/cluster/socket_reaper_spec.rb
1475
- - spec/mongo/server_selector/primary_preferred_spec.rb
1476
- - spec/mongo/server_selector/secondary_preferred_spec.rb
1477
- - spec/mongo/server_selector/primary_spec.rb
1478
- - spec/mongo/server_selector/secondary_spec.rb
1479
- - spec/mongo/server_selector/nearest_spec.rb
1480
- - spec/mongo/client_spec.rb
1542
+ - spec/mongo/semaphore_spec.rb
1543
+ - spec/mongo/server/monitor/connection_spec.rb
1544
+ - spec/mongo/server/monitor/app_metadata_spec.rb
1545
+ - spec/mongo/server/description_spec.rb
1546
+ - spec/mongo/server/connection_pool/populator_spec.rb
1547
+ - spec/mongo/server/connection_spec.rb
1548
+ - spec/mongo/server/description_query_methods_spec.rb
1549
+ - spec/mongo/server/app_metadata_shared.rb
1550
+ - spec/mongo/server/description/features_spec.rb
1551
+ - spec/mongo/server/connection_auth_spec.rb
1552
+ - spec/mongo/server/app_metadata_spec.rb
1553
+ - spec/mongo/server/round_trip_time_averager_spec.rb
1554
+ - spec/mongo/server/connection_pool_spec.rb
1555
+ - spec/mongo/server/monitor_spec.rb
1556
+ - spec/mongo/event/publisher_spec.rb
1557
+ - spec/mongo/event/subscriber_spec.rb
1481
1558
  - spec/mongo/collection/view_spec.rb
1482
1559
  - spec/mongo/collection/view/aggregation_spec.rb
1483
- - spec/mongo/collection/view/change_stream_spec.rb
1484
- - spec/mongo/collection/view/map_reduce_spec.rb
1485
1560
  - spec/mongo/collection/view/readable_spec.rb
1486
- - spec/mongo/collection/view/immutable_spec.rb
1561
+ - spec/mongo/collection/view/map_reduce_spec.rb
1487
1562
  - spec/mongo/collection/view/explainable_spec.rb
1488
- - spec/mongo/collection/view/builder/modifiers_spec.rb
1489
- - spec/mongo/collection/view/builder/find_command_spec.rb
1563
+ - spec/mongo/collection/view/change_stream_resume_spec.rb
1490
1564
  - spec/mongo/collection/view/builder/op_query_spec.rb
1491
1565
  - spec/mongo/collection/view/builder/flags_spec.rb
1566
+ - spec/mongo/collection/view/builder/find_command_spec.rb
1567
+ - spec/mongo/collection/view/builder/modifiers_spec.rb
1568
+ - spec/mongo/collection/view/change_stream_spec.rb
1569
+ - spec/mongo/collection/view/iterable_spec.rb
1570
+ - spec/mongo/collection/view/immutable_spec.rb
1492
1571
  - spec/mongo/collection/view/writable_spec.rb
1493
- - spec/mongo/server_spec.rb
1494
- - spec/mongo/logger_spec.rb
1495
- - spec/mongo/cursor/builder/get_more_command_spec.rb
1496
- - spec/mongo/cursor/builder/op_kill_cursors_spec.rb
1497
- - spec/mongo/cursor/builder/op_get_more_spec.rb
1498
- - spec/mongo/cluster_time_spec.rb
1499
- - spec/mongo/auth/cr_spec.rb
1500
- - spec/mongo/auth/ldap/conversation_spec.rb
1501
- - spec/mongo/auth/user/view_spec.rb
1502
- - spec/mongo/auth/x509/conversation_spec.rb
1503
- - spec/mongo/auth/ldap_spec.rb
1504
- - spec/mongo/auth/scram/conversation_spec.rb
1505
- - spec/mongo/auth/scram/negotiation_spec.rb
1506
- - spec/mongo/auth/invalid_mechanism_spec.rb
1507
- - spec/mongo/auth/scram_spec.rb
1508
- - spec/mongo/auth/stringprep_spec.rb
1509
- - spec/mongo/auth/user_spec.rb
1510
- - spec/mongo/auth/x509_spec.rb
1511
- - spec/mongo/auth/stringprep/profiles/sasl_spec.rb
1512
1572
  - spec/mongo/database_spec.rb
1513
- - spec/mongo/crypt/encryption_io_spec.rb
1514
- - spec/mongo/crypt/auto_decryption_context_spec.rb
1515
- - spec/mongo/crypt/data_key_context_spec.rb
1516
- - spec/mongo/crypt/auto_encryption_context_spec.rb
1517
- - spec/mongo/crypt/binding_unloaded_spec.rb
1518
- - spec/mongo/crypt/binding/mongocrypt_spec.rb
1519
- - spec/mongo/crypt/binding/context_spec.rb
1520
- - spec/mongo/crypt/binding/version_spec.rb
1573
+ - spec/mongo/cursor_spec.rb
1574
+ - spec/mongo/lint_spec.rb
1575
+ - spec/mongo/server_selector/secondary_spec.rb
1576
+ - spec/mongo/server_selector/primary_preferred_spec.rb
1577
+ - spec/mongo/server_selector/primary_spec.rb
1578
+ - spec/mongo/server_selector/secondary_preferred_spec.rb
1579
+ - spec/mongo/server_selector/nearest_spec.rb
1521
1580
  - spec/mongo/crypt/binding/helpers_spec.rb
1522
- - spec/mongo/crypt/binding/binary_spec.rb
1581
+ - spec/mongo/crypt/binding/version_spec.rb
1523
1582
  - spec/mongo/crypt/binding/status_spec.rb
1524
- - spec/mongo/crypt/binary_spec.rb
1583
+ - spec/mongo/crypt/binding/context_spec.rb
1584
+ - spec/mongo/crypt/binding/binary_spec.rb
1585
+ - spec/mongo/crypt/binding/mongocrypt_spec.rb
1586
+ - spec/mongo/crypt/explicit_encryption_context_spec.rb
1587
+ - spec/mongo/crypt/auto_encryption_context_spec.rb
1588
+ - spec/mongo/crypt/encryption_io_spec.rb
1589
+ - spec/mongo/crypt/helpers/mongo_crypt_spec_helper.rb
1590
+ - spec/mongo/crypt/binding_unloaded_spec.rb
1525
1591
  - spec/mongo/crypt/status_spec.rb
1526
- - spec/mongo/crypt/handle_spec.rb
1527
1592
  - spec/mongo/crypt/explicit_decryption_context_spec.rb
1593
+ - spec/mongo/crypt/data_key_context_spec.rb
1594
+ - spec/mongo/crypt/binary_spec.rb
1528
1595
  - spec/mongo/crypt/auto_encrypter_spec.rb
1529
- - spec/mongo/crypt/helpers/mongo_crypt_spec_helper.rb
1530
- - spec/mongo/crypt/explicit_encryption_context_spec.rb
1531
- - spec/mongo/socket_spec.rb
1532
- - spec/mongo/id_spec.rb
1533
- - spec/mongo/bson_spec.rb
1534
- - spec/mongo/server/app_metadata_spec.rb
1535
- - spec/mongo/server/connection_pool_spec.rb
1536
- - spec/mongo/server/monitor/app_metadata_spec.rb
1537
- - spec/mongo/server/monitor/connection_spec.rb
1538
- - spec/mongo/server/monitor_spec.rb
1539
- - spec/mongo/server/connection_pool/populator_spec.rb
1540
- - spec/mongo/server/round_trip_time_averager_spec.rb
1541
- - spec/mongo/server/description/features_spec.rb
1542
- - spec/mongo/server/connection_spec.rb
1543
- - spec/mongo/server/description_spec.rb
1544
- - spec/mongo/server/connection_auth_spec.rb
1545
- - spec/mongo/server/description_query_methods_spec.rb
1546
- - spec/mongo/dbref_spec.rb
1547
- - spec/mongo/client_encryption_spec.rb
1548
- - spec/mongo/protocol/compressed_spec.rb
1549
- - spec/mongo/protocol/delete_spec.rb
1550
- - spec/mongo/protocol/msg_spec.rb
1551
- - spec/mongo/protocol/update_spec.rb
1552
- - spec/mongo/protocol/reply_spec.rb
1553
- - spec/mongo/protocol/registry_spec.rb
1554
- - spec/mongo/protocol/get_more_spec.rb
1555
- - spec/mongo/protocol/insert_spec.rb
1556
- - spec/mongo/protocol/query_spec.rb
1557
- - spec/mongo/protocol/kill_cursors_spec.rb
1558
- - spec/mongo/timeout_spec.rb
1559
- - spec/mongo/session_transaction_spec.rb
1560
- - spec/mongo/uri_option_parsing_spec.rb
1561
- - spec/mongo/write_concern_spec.rb
1562
- - spec/mongo/client_construction_spec.rb
1563
- - spec/mongo/bulk_write_spec.rb
1564
- - spec/mongo/address/ipv6_spec.rb
1565
- - spec/mongo/address/unix_spec.rb
1596
+ - spec/mongo/crypt/auto_decryption_context_spec.rb
1597
+ - spec/mongo/crypt/handle_spec.rb
1598
+ - spec/mongo/uri/srv_protocol_spec.rb
1566
1599
  - spec/mongo/address/validator_spec.rb
1567
1600
  - spec/mongo/address/ipv4_spec.rb
1568
- - spec/mongo/monitoring_spec.rb
1569
- - spec/mongo/bulk_write/ordered_combiner_spec.rb
1570
- - spec/mongo/bulk_write/result_spec.rb
1571
- - spec/mongo/bulk_write/unordered_combiner_spec.rb
1572
- - spec/mongo/lint_spec.rb
1573
- - spec/mongo/index/view_spec.rb
1574
- - spec/mongo/uri_spec.rb
1575
- - spec/mongo/monitoring/command_log_subscriber_spec.rb
1576
- - spec/mongo/monitoring/event/command_failed_spec.rb
1577
- - spec/mongo/monitoring/event/server_heartbeat_started_spec.rb
1578
- - spec/mongo/monitoring/event/topology_changed_spec.rb
1579
- - spec/mongo/monitoring/event/secure_spec.rb
1580
- - spec/mongo/monitoring/event/server_opening_spec.rb
1581
- - spec/mongo/monitoring/event/server_heartbeat_failed_spec.rb
1601
+ - spec/mongo/address/ipv6_spec.rb
1602
+ - spec/mongo/address/unix_spec.rb
1603
+ - spec/mongo/timeout_spec.rb
1604
+ - spec/mongo/auth/stringprep_spec.rb
1605
+ - spec/mongo/auth/ldap_spec.rb
1606
+ - spec/mongo/auth/scram256/conversation_spec.rb
1607
+ - spec/mongo/auth/x509_spec.rb
1608
+ - spec/mongo/auth/scram_spec.rb
1609
+ - spec/mongo/auth/stringprep/profiles/sasl_spec.rb
1610
+ - spec/mongo/auth/invalid_mechanism_spec.rb
1611
+ - spec/mongo/auth/x509/conversation_spec.rb
1612
+ - spec/mongo/auth/aws/request_region_spec.rb
1613
+ - spec/mongo/auth/aws/request_spec.rb
1614
+ - spec/mongo/auth/scram/conversation_spec.rb
1615
+ - spec/mongo/auth/gssapi/conversation_spec.rb
1616
+ - spec/mongo/auth/ldap/conversation_spec.rb
1617
+ - spec/mongo/auth/user_spec.rb
1618
+ - spec/mongo/auth/cr_spec.rb
1619
+ - spec/mongo/auth/user/view_spec.rb
1620
+ - spec/mongo/auth/scram_negotiation_spec.rb
1621
+ - spec/mongo/client_encryption_spec.rb
1622
+ - spec/mongo/socket_spec.rb
1623
+ - spec/mongo/bulk_write_spec.rb
1624
+ - spec/mongo/socket/ssl_spec.rb
1625
+ - spec/mongo/socket/tcp_spec.rb
1626
+ - spec/mongo/socket/unix_spec.rb
1627
+ - spec/mongo/id_spec.rb
1628
+ - spec/mongo/cluster_spec.rb
1629
+ - spec/mongo/server_selector_spec.rb
1630
+ - spec/mongo/client_spec.rb
1631
+ - spec/mongo/cursor/builder/op_get_more_spec.rb
1632
+ - spec/mongo/cursor/builder/get_more_command_spec.rb
1633
+ - spec/mongo/cursor/builder/op_kill_cursors_spec.rb
1634
+ - spec/mongo/monitoring/event/server_heartbeat_succeeded_spec.rb
1582
1635
  - spec/mongo/monitoring/event/server_description_changed_spec.rb
1583
- - spec/mongo/monitoring/event/cmap/connection_checked_in_spec.rb
1636
+ - spec/mongo/monitoring/event/secure_spec.rb
1637
+ - spec/mongo/monitoring/event/server_closed_spec.rb
1638
+ - spec/mongo/monitoring/event/topology_opening_spec.rb
1639
+ - spec/mongo/monitoring/event/cmap/pool_cleared_spec.rb
1640
+ - spec/mongo/monitoring/event/cmap/connection_check_out_started_spec.rb
1584
1641
  - spec/mongo/monitoring/event/cmap/connection_created_spec.rb
1585
1642
  - spec/mongo/monitoring/event/cmap/pool_closed_spec.rb
1586
- - spec/mongo/monitoring/event/cmap/connection_checked_out_spec.rb
1587
- - spec/mongo/monitoring/event/cmap/connection_check_out_started_spec.rb
1588
- - spec/mongo/monitoring/event/cmap/pool_created_spec.rb
1589
- - spec/mongo/monitoring/event/cmap/pool_cleared_spec.rb
1590
- - spec/mongo/monitoring/event/cmap/connection_ready_spec.rb
1591
1643
  - spec/mongo/monitoring/event/cmap/connection_closed_spec.rb
1592
1644
  - spec/mongo/monitoring/event/cmap/connection_check_out_failed_spec.rb
1645
+ - spec/mongo/monitoring/event/cmap/pool_created_spec.rb
1646
+ - spec/mongo/monitoring/event/cmap/connection_checked_in_spec.rb
1647
+ - spec/mongo/monitoring/event/cmap/connection_ready_spec.rb
1648
+ - spec/mongo/monitoring/event/cmap/connection_checked_out_spec.rb
1649
+ - spec/mongo/monitoring/event/server_heartbeat_started_spec.rb
1593
1650
  - spec/mongo/monitoring/event/command_started_spec.rb
1594
- - spec/mongo/monitoring/event/server_closed_spec.rb
1595
- - spec/mongo/monitoring/event/topology_opening_spec.rb
1596
1651
  - spec/mongo/monitoring/event/command_succeeded_spec.rb
1597
- - spec/mongo/monitoring/event/server_heartbeat_succeeded_spec.rb
1652
+ - spec/mongo/monitoring/event/server_heartbeat_failed_spec.rb
1653
+ - spec/mongo/monitoring/event/topology_changed_spec.rb
1598
1654
  - spec/mongo/monitoring/event/topology_closed_spec.rb
1599
- - spec/mongo/uri/srv_protocol_spec.rb
1655
+ - spec/mongo/monitoring/event/server_opening_spec.rb
1656
+ - spec/mongo/monitoring/event/command_failed_spec.rb
1657
+ - spec/mongo/monitoring/command_log_subscriber_spec.rb
1658
+ - spec/mongo/write_concern_spec.rb
1659
+ - spec/mongo/retryable_spec.rb
1660
+ - spec/mongo/client_construction_spec.rb
1661
+ - spec/mongo/collection_spec.rb
1662
+ - spec/mongo/session_transaction_spec.rb
1663
+ - spec/mongo/monitoring_spec.rb
1664
+ - spec/mongo/grid/fs_bucket_spec.rb
1665
+ - spec/mongo/grid/stream_spec.rb
1666
+ - spec/mongo/grid/file/chunk_spec.rb
1667
+ - spec/mongo/grid/file/info_spec.rb
1668
+ - spec/mongo/grid/file_spec.rb
1669
+ - spec/mongo/grid/stream/write_spec.rb
1670
+ - spec/mongo/grid/stream/read_spec.rb
1671
+ - spec/mongo/error/crypt_error_spec.rb
1600
1672
  - spec/mongo/error/no_server_available_spec.rb
1673
+ - spec/mongo/error/max_bson_size_spec.rb
1674
+ - spec/mongo/error/unsupported_option_spec.rb
1675
+ - spec/mongo/error/operation_failure_spec.rb
1676
+ - spec/mongo/error/operation_failure_heavy_spec.rb
1601
1677
  - spec/mongo/error/bulk_write_error_spec.rb
1602
1678
  - spec/mongo/error/notable_spec.rb
1603
1679
  - spec/mongo/error/parser_spec.rb
1604
- - spec/mongo/error/max_bson_size_spec.rb
1605
- - spec/mongo/error/crypt_error_spec.rb
1606
- - spec/mongo/error/operation_failure_spec.rb
1607
- - spec/mongo/event/subscriber_spec.rb
1608
- - spec/mongo/event/publisher_spec.rb
1609
- - spec/mongo/auth_spec.rb
1610
- - spec/mongo/server_selector_spec.rb
1611
- - spec/mongo/srv/monitor_spec.rb
1612
1680
  - spec/mongo/srv/result_spec.rb
1613
- - spec/mongo/socket/ssl_spec.rb
1614
- - spec/mongo/socket/unix_spec.rb
1615
- - spec/mongo/socket/tcp_spec.rb
1616
- - spec/mongo/cluster_spec.rb
1681
+ - spec/mongo/srv/monitor_spec.rb
1682
+ - spec/mongo/distinguishing_semaphore_spec.rb
1683
+ - spec/mongo/session_spec.rb
1617
1684
  - spec/mongo/address_spec.rb
1618
- - spec/mongo/grid/file/chunk_spec.rb
1619
- - spec/mongo/grid/file/info_spec.rb
1620
- - spec/mongo/grid/fs_bucket_spec.rb
1621
- - spec/mongo/grid/stream/write_spec.rb
1622
- - spec/mongo/grid/stream/read_spec.rb
1623
- - spec/mongo/grid/stream_spec.rb
1624
- - spec/mongo/grid/file_spec.rb
1685
+ - spec/mongo/bulk_write/ordered_combiner_spec.rb
1686
+ - spec/mongo/bulk_write/unordered_combiner_spec.rb
1687
+ - spec/mongo/bulk_write/result_spec.rb
1688
+ - spec/mongo/protocol/delete_spec.rb
1689
+ - spec/mongo/protocol/registry_spec.rb
1690
+ - spec/mongo/protocol/query_spec.rb
1691
+ - spec/mongo/protocol/compressed_spec.rb
1692
+ - spec/mongo/protocol/kill_cursors_spec.rb
1693
+ - spec/mongo/protocol/msg_spec.rb
1694
+ - spec/mongo/protocol/reply_spec.rb
1695
+ - spec/mongo/protocol/get_more_spec.rb
1696
+ - spec/mongo/protocol/update_spec.rb
1697
+ - spec/mongo/protocol/insert_spec.rb
1698
+ - spec/mongo/auth_spec.rb
1699
+ - spec/mongo/uri_option_parsing_spec.rb
1625
1700
  - spec/mongo/session/session_pool_spec.rb
1626
1701
  - spec/mongo/session/server_session_spec.rb
1627
- - spec/mongo/retryable_spec.rb
1628
- - spec/runners/crud.rb
1629
- - spec/runners/gridfs.rb
1630
- - spec/runners/change_streams/operation.rb
1631
- - spec/runners/read_write_concern_document.rb
1632
- - spec/runners/server_selection_rtt.rb
1633
- - spec/runners/cmap/verifier.rb
1634
- - spec/runners/transactions/context.rb
1635
- - spec/runners/transactions/spec.rb
1636
- - spec/runners/transactions/operation.rb
1637
- - spec/runners/transactions/test.rb
1638
- - spec/runners/sdam_monitoring.rb
1639
- - spec/runners/server_discovery_and_monitoring.rb
1640
- - spec/runners/transactions.rb
1641
- - spec/runners/sdam/verifier.rb
1642
- - spec/runners/crud/verifier.rb
1643
- - spec/runners/crud/test_base.rb
1644
- - spec/runners/crud/context.rb
1645
- - spec/runners/crud/spec.rb
1646
- - spec/runners/crud/outcome.rb
1647
- - spec/runners/crud/operation.rb
1648
- - spec/runners/crud/test.rb
1649
- - spec/runners/crud/requirement.rb
1650
- - spec/runners/connection_string.rb
1651
- - spec/runners/change_streams.rb
1652
- - spec/runners/server_selection.rb
1653
- - spec/runners/cmap.rb
1654
- - spec/runners/command_monitoring.rb
1655
- - spec/runners/auth.rb
1656
- - spec/atlas/operations_spec.rb
1657
- - spec/atlas/atlas_connectivity_spec.rb
1658
- - spec/spec_tests/dns_seedlist_discovery_spec.rb
1659
- - spec/spec_tests/gridfs_spec.rb
1660
- - spec/spec_tests/crud_spec.rb
1661
- - spec/spec_tests/retryable_reads_spec.rb
1662
- - spec/spec_tests/sdam_spec.rb
1663
- - spec/spec_tests/read_write_concern_document_spec.rb
1664
- - spec/spec_tests/server_selection_rtt_spec.rb
1665
- - spec/spec_tests/server_selection_spec.rb
1666
- - spec/spec_tests/change_streams_spec.rb
1667
- - spec/spec_tests/transactions_api_spec.rb
1668
- - spec/spec_tests/cmap_spec.rb
1669
- - spec/spec_tests/read_write_concern_connection_string_spec.rb
1670
- - spec/spec_tests/retryable_writes_spec.rb
1671
- - spec/spec_tests/client_side_encryption_spec.rb
1672
- - spec/spec_tests/max_staleness_spec.rb
1673
- - spec/spec_tests/sdam_monitoring_spec.rb
1674
- - spec/spec_tests/connection_string_spec.rb
1675
- - spec/spec_tests/command_monitoring_spec.rb
1676
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_second_seed_removal.yml
1677
- - spec/spec_tests/data/sdam_monitoring/standalone_suppress_equal_description_changes.yml
1678
- - spec/spec_tests/data/sdam_monitoring/replica_set_other_change.yml
1679
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_primary_removal.yml
1680
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_no_primary.yml
1681
- - spec/spec_tests/data/sdam_monitoring/standalone.yml
1682
- - spec/spec_tests/data/sdam_monitoring/standalone_to_rs_with_me_mismatch.yml
1683
- - spec/spec_tests/data/sdam_monitoring/discovered_standalone.yml
1684
- - spec/spec_tests/data/sdam_monitoring/replica_set_other_chain.yml
1685
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_primary_and_secondary.yml
1686
- - spec/spec_tests/data/sdam_monitoring/standalone_repeated.yml
1687
- - spec/spec_tests/data/sdam_monitoring/replica_set_primary_address_change.yml
1688
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_removal.yml
1689
- - spec/spec_tests/data/sdam_monitoring/required_replica_set.yml
1690
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_me_mismatch.yml
1691
- - spec/spec_tests/data/sdam_monitoring/replica_set_with_primary.yml
1692
- - spec/spec_tests/data/server_selection_rtt/first_value.yml
1693
- - spec/spec_tests/data/server_selection_rtt/value_test_2.yml
1694
- - spec/spec_tests/data/server_selection_rtt/value_test_3.yml
1695
- - spec/spec_tests/data/server_selection_rtt/value_test_1.yml
1696
- - spec/spec_tests/data/server_selection_rtt/value_test_4.yml
1697
- - spec/spec_tests/data/server_selection_rtt/value_test_5.yml
1698
- - spec/spec_tests/data/server_selection_rtt/first_value_zero.yml
1699
- - spec/spec_tests/data/connection_string/valid-unix_socket-relative.yml
1700
- - spec/spec_tests/data/connection_string/valid-auth.yml
1701
- - spec/spec_tests/data/connection_string/valid-db-with-dotted-name.yml
1702
- - spec/spec_tests/data/connection_string/valid-host_identifiers.yml
1703
- - spec/spec_tests/data/connection_string/valid-warnings.yml
1704
- - spec/spec_tests/data/connection_string/valid-options.yml
1705
- - spec/spec_tests/data/connection_string/valid-unix_socket-absolute.yml
1706
- - spec/spec_tests/data/connection_string/invalid-uris.yml
1707
- - spec/spec_tests/data/change_streams/change-streams.yml
1708
- - spec/spec_tests/data/change_streams/change-streams-errors.yml
1709
- - spec/spec_tests/data/retryable_reads/listDatabases.yml
1710
- - spec/spec_tests/data/retryable_reads/listIndexes.yml
1711
- - spec/spec_tests/data/retryable_reads/listDatabaseObjects.yml
1712
- - spec/spec_tests/data/retryable_reads/aggregate.yml
1713
- - spec/spec_tests/data/retryable_reads/count-serverErrors.yml
1714
- - spec/spec_tests/data/retryable_reads/changeStreams-db.coll.watch.yml
1715
- - spec/spec_tests/data/retryable_reads/gridfs-download.yml
1716
- - spec/spec_tests/data/retryable_reads/gridfs-downloadByName.yml
1717
- - spec/spec_tests/data/retryable_reads/find.yml
1718
- - spec/spec_tests/data/retryable_reads/listDatabaseNames.yml
1719
- - spec/spec_tests/data/retryable_reads/changeStreams-db.watch-serverErrors.yml
1720
- - spec/spec_tests/data/retryable_reads/gridfs-downloadByName-serverErrors.yml
1721
- - spec/spec_tests/data/retryable_reads/count.yml
1722
- - spec/spec_tests/data/retryable_reads/changeStreams-client.watch-serverErrors.yml
1723
- - spec/spec_tests/data/retryable_reads/estimatedDocumentCount-serverErrors.yml
1724
- - spec/spec_tests/data/retryable_reads/gridfs-download-serverErrors.yml
1725
- - spec/spec_tests/data/retryable_reads/estimatedDocumentCount.yml
1726
- - spec/spec_tests/data/retryable_reads/changeStreams-db.coll.watch-serverErrors.yml
1727
- - spec/spec_tests/data/retryable_reads/findOne-serverErrors.yml
1728
- - spec/spec_tests/data/retryable_reads/mapReduce.yml
1729
- - spec/spec_tests/data/retryable_reads/listCollectionNames.yml
1730
- - spec/spec_tests/data/retryable_reads/aggregate-serverErrors.yml
1731
- - spec/spec_tests/data/retryable_reads/changeStreams-client.watch.yml
1732
- - spec/spec_tests/data/retryable_reads/listDatabases-serverErrors.yml
1733
- - spec/spec_tests/data/retryable_reads/aggregate-merge.yml
1734
- - spec/spec_tests/data/retryable_reads/findOne.yml
1702
+ - spec/mongo/write_concern/unacknowledged_spec.rb
1703
+ - spec/mongo/write_concern/acknowledged_spec.rb
1704
+ - spec/mongo/cluster_time_spec.rb
1705
+ - spec/mongo/options/redacted_spec.rb
1706
+ - spec/mongo/uri_spec.rb
1707
+ - spec/mongo/dbref_spec.rb
1708
+ - spec/mongo/index/view_spec.rb
1709
+ - spec/mongo/logger_spec.rb
1710
+ - spec/mongo/server_spec.rb
1711
+ - spec/mongo/bson_spec.rb
1712
+ - spec/mongo/operation/read_preference_legacy_spec.rb
1713
+ - spec/mongo/operation/map_reduce_spec.rb
1714
+ - spec/mongo/operation/read_preference_op_msg_spec.rb
1715
+ - spec/mongo/operation/delete_spec.rb
1716
+ - spec/mongo/operation/insert/command_spec.rb
1717
+ - spec/mongo/operation/insert/bulk_spec.rb
1718
+ - spec/mongo/operation/insert/op_msg_spec.rb
1719
+ - spec/mongo/operation/delete/command_spec.rb
1720
+ - spec/mongo/operation/delete/bulk_spec.rb
1721
+ - spec/mongo/operation/delete/op_msg_spec.rb
1722
+ - spec/mongo/operation/remove_user_spec.rb
1723
+ - spec/mongo/operation/specifiable_spec.rb
1724
+ - spec/mongo/operation/collections_info_spec.rb
1725
+ - spec/mongo/operation/command_spec.rb
1726
+ - spec/mongo/operation/limited_spec.rb
1727
+ - spec/mongo/operation/drop_index_spec.rb
1728
+ - spec/mongo/operation/aggregate/result_spec.rb
1729
+ - spec/mongo/operation/create_user_spec.rb
1730
+ - spec/mongo/operation/result_spec.rb
1731
+ - spec/mongo/operation/kill_cursors_spec.rb
1732
+ - spec/mongo/operation/aggregate_spec.rb
1733
+ - spec/mongo/operation/get_more_spec.rb
1734
+ - spec/mongo/operation/create_index_spec.rb
1735
+ - spec/mongo/operation/update_spec.rb
1736
+ - spec/mongo/operation/update_user_spec.rb
1737
+ - spec/mongo/operation/update/command_spec.rb
1738
+ - spec/mongo/operation/update/bulk_spec.rb
1739
+ - spec/mongo/operation/update/op_msg_spec.rb
1740
+ - spec/mongo/operation/indexes_spec.rb
1741
+ - spec/mongo/operation/find/legacy_spec.rb
1742
+ - spec/mongo/operation/insert_spec.rb
1743
+ - spec/kerberos/kerberos_spec.rb
1744
+ - spec/integration/check_clean_slate_spec.rb
1745
+ - spec/integration/aws_auth_request_spec.rb
1746
+ - spec/integration/retryable_errors_spec.rb
1747
+ - spec/integration/shell_examples_spec.rb
1748
+ - spec/integration/retryable_writes_errors_spec.rb
1749
+ - spec/integration/mongos_pinning_spec.rb
1750
+ - spec/integration/client_update_spec.rb
1751
+ - spec/integration/bulk_insert_spec.rb
1752
+ - spec/integration/connection_pool_populator_spec.rb
1753
+ - spec/integration/connection_spec.rb
1754
+ - spec/integration/server_monitor_spec.rb
1755
+ - spec/integration/read_preference_spec.rb
1756
+ - spec/integration/client_side_encryption/client_close_spec.rb
1757
+ - spec/integration/client_side_encryption/auto_encryption_mongocryptd_spawn_spec.rb
1758
+ - spec/integration/client_side_encryption/views_spec.rb
1759
+ - spec/integration/client_side_encryption/auto_encryption_spec.rb
1760
+ - spec/integration/client_side_encryption/custom_endpoint_spec.rb
1761
+ - spec/integration/client_side_encryption/bson_size_limit_spec.rb
1762
+ - spec/integration/client_side_encryption/auto_encryption_bulk_writes_spec.rb
1763
+ - spec/integration/client_side_encryption/corpus_spec.rb
1764
+ - spec/integration/client_side_encryption/auto_encryption_old_wire_version_spec.rb
1765
+ - spec/integration/client_side_encryption/auto_encryption_command_monitoring_spec.rb
1766
+ - spec/integration/client_side_encryption/explicit_encryption_spec.rb
1767
+ - spec/integration/client_side_encryption/auto_encryption_reconnect_spec.rb
1768
+ - spec/integration/client_side_encryption/bypass_mongocryptd_spawn_spec.rb
1769
+ - spec/integration/client_side_encryption/data_key_spec.rb
1770
+ - spec/integration/client_side_encryption/external_key_vault_spec.rb
1771
+ - spec/integration/x509_auth_spec.rb
1772
+ - spec/integration/grid_fs_bucket_spec.rb
1773
+ - spec/integration/docs_examples_spec.rb
1774
+ - spec/integration/size_limit_spec.rb
1775
+ - spec/integration/bulk_write_spec.rb
1776
+ - spec/integration/change_stream_examples_spec.rb
1777
+ - spec/integration/server_selector_spec.rb
1778
+ - spec/integration/client_spec.rb
1779
+ - spec/integration/command_spec.rb
1780
+ - spec/integration/client_authentication_options_spec.rb
1781
+ - spec/integration/command_monitoring_spec.rb
1782
+ - spec/integration/time_zone_querying_spec.rb
1783
+ - spec/integration/client_construction_spec.rb
1784
+ - spec/integration/aws_credentials_retriever_spec.rb
1785
+ - spec/integration/transactions_examples_spec.rb
1786
+ - spec/integration/sdam_events_spec.rb
1787
+ - spec/integration/operation_failure_code_spec.rb
1788
+ - spec/integration/client_connectivity_spec.rb
1789
+ - spec/integration/error_detection_spec.rb
1790
+ - spec/integration/retryable_writes/shared/only_supports_legacy_retries.rb
1791
+ - spec/integration/retryable_writes/shared/supports_retries.rb
1792
+ - spec/integration/retryable_writes/shared/does_not_support_retries.rb
1793
+ - spec/integration/retryable_writes/shared/performs_modern_retries.rb
1794
+ - spec/integration/retryable_writes/shared/supports_modern_retries.rb
1795
+ - spec/integration/retryable_writes/shared/adds_diagnostics.rb
1796
+ - spec/integration/retryable_writes/shared/performs_no_retries.rb
1797
+ - spec/integration/retryable_writes/shared/supports_legacy_retries.rb
1798
+ - spec/integration/retryable_writes/shared/performs_legacy_retries.rb
1799
+ - spec/integration/retryable_writes/retryable_writes_40_and_newer_spec.rb
1800
+ - spec/integration/retryable_writes/retryable_writes_36_and_older_spec.rb
1801
+ - spec/integration/sdam_error_handling_spec.rb
1802
+ - spec/integration/zlib_compression_spec.rb
1803
+ - spec/integration/change_stream_spec.rb
1804
+ - spec/integration/heartbeat_events_spec.rb
1805
+ - spec/integration/connect_single_rs_name_spec.rb
1806
+ - spec/integration/awaited_ismaster_spec.rb
1807
+ - spec/integration/crud_spec.rb
1808
+ - spec/integration/client_construction_aws_auth_spec.rb
1809
+ - spec/integration/ssl_uri_options_spec.rb
1810
+ - spec/integration/collection_indexes_prose_spec.rb
1811
+ - spec/integration/bson_symbol_spec.rb
1812
+ - spec/integration/fork_reconnect_spec.rb
1813
+ - spec/integration/auth_spec.rb
1814
+ - spec/integration/server_description_spec.rb
1815
+ - spec/integration/get_more_spec.rb
1816
+ - spec/integration/read_concern_spec.rb
1817
+ - spec/integration/srv_monitoring_spec.rb
1818
+ - spec/integration/reconnect_spec.rb
1819
+ - spec/integration/sdam_prose_spec.rb
1820
+ - spec/integration/cursor_reaping_spec.rb
1821
+ - spec/integration/mmapv1_spec.rb
1822
+ - spec/integration/server_spec.rb
1823
+ - spec/integration/step_down_spec.rb
1824
+ - spec/integration/transactions_api_examples_spec.rb
1825
+ - spec/spec_tests/read_write_concern_document_spec.rb
1826
+ - spec/spec_tests/uri_options_spec.rb
1827
+ - spec/spec_tests/server_selection_rtt_spec.rb
1828
+ - spec/spec_tests/server_selection_spec.rb
1829
+ - spec/spec_tests/retryable_reads_spec.rb
1830
+ - spec/spec_tests/dns_seedlist_discovery_spec.rb
1831
+ - spec/spec_tests/transactions_api_spec.rb
1832
+ - spec/spec_tests/command_monitoring_spec.rb
1833
+ - spec/spec_tests/cmap_spec.rb
1834
+ - spec/spec_tests/gridfs_spec.rb
1835
+ - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch1.yml
1836
+ - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch3.yml
1837
+ - spec/spec_tests/data/dns_seedlist_discovery/direct-connection-true.yml
1838
+ - spec/spec_tests/data/dns_seedlist_discovery/returned-parent-wrong.yml
1839
+ - spec/spec_tests/data/dns_seedlist_discovery/no-results.yml
1840
+ - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch5.yml
1841
+ - spec/spec_tests/data/dns_seedlist_discovery/direct-connection-false.yml
1842
+ - spec/spec_tests/data/dns_seedlist_discovery/txt-record-with-unallowed-option.yml
1843
+ - spec/spec_tests/data/dns_seedlist_discovery/two-results-nonstandard-port.yml
1844
+ - spec/spec_tests/data/dns_seedlist_discovery/misformatted-option.yml
1845
+ - spec/spec_tests/data/dns_seedlist_discovery/uri-with-two-hosts.yml
1846
+ - spec/spec_tests/data/dns_seedlist_discovery/returned-parent-too-short.yml
1847
+ - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch4.yml
1848
+ - spec/spec_tests/data/dns_seedlist_discovery/two-txt-records.yml
1849
+ - spec/spec_tests/data/dns_seedlist_discovery/txt-record-not-allowed-option.yml
1850
+ - spec/spec_tests/data/dns_seedlist_discovery/txt-record-with-overridden-ssl-option.yml
1851
+ - spec/spec_tests/data/dns_seedlist_discovery/one-txt-record.yml
1852
+ - spec/spec_tests/data/dns_seedlist_discovery/one-result-default-port.yml
1853
+ - spec/spec_tests/data/dns_seedlist_discovery/uri-with-port.yml
1854
+ - spec/spec_tests/data/dns_seedlist_discovery/two-results-default-port.yml
1855
+ - spec/spec_tests/data/dns_seedlist_discovery/txt-record-with-overridden-uri-option.yml
1856
+ - spec/spec_tests/data/dns_seedlist_discovery/longer-parent-in-return.yml
1857
+ - spec/spec_tests/data/dns_seedlist_discovery/not-enough-parts.yml
1858
+ - spec/spec_tests/data/dns_seedlist_discovery/one-txt-record-multiple-strings.yml
1859
+ - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch2.yml
1860
+ - spec/spec_tests/data/sdam_monitoring/standalone_repeated.yml
1861
+ - spec/spec_tests/data/sdam_monitoring/required_replica_set.yml
1862
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_primary_and_secondary.yml
1863
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_second_seed_removal.yml
1864
+ - spec/spec_tests/data/sdam_monitoring/standalone_suppress_equal_description_changes.yml
1865
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_primary.yml
1866
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_me_mismatch.yml
1867
+ - spec/spec_tests/data/sdam_monitoring/replica_set_other_change.yml
1868
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_primary_removal.yml
1869
+ - spec/spec_tests/data/sdam_monitoring/replica_set_other_chain.yml
1870
+ - spec/spec_tests/data/sdam_monitoring/replica_set_primary_address_change.yml
1871
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_no_primary.yml
1872
+ - spec/spec_tests/data/sdam_monitoring/standalone_to_rs_with_me_mismatch.yml
1873
+ - spec/spec_tests/data/sdam_monitoring/replica_set_with_removal.yml
1874
+ - spec/spec_tests/data/sdam_monitoring/standalone.yml
1875
+ - spec/spec_tests/data/sdam_monitoring/discovered_standalone.yml
1735
1876
  - spec/spec_tests/data/retryable_reads/listCollectionObjects-serverErrors.yml
1736
- - spec/spec_tests/data/retryable_reads/find-serverErrors.yml
1737
- - spec/spec_tests/data/retryable_reads/changeStreams-db.watch.yml
1738
- - spec/spec_tests/data/retryable_reads/listCollections.yml
1739
- - spec/spec_tests/data/retryable_reads/listIndexNames.yml
1877
+ - spec/spec_tests/data/retryable_reads/find.yml
1878
+ - spec/spec_tests/data/retryable_reads/changeStreams-db.coll.watch.yml
1879
+ - spec/spec_tests/data/retryable_reads/listCollectionNames.yml
1880
+ - spec/spec_tests/data/retryable_reads/listIndexes.yml
1881
+ - spec/spec_tests/data/retryable_reads/distinct.yml
1882
+ - spec/spec_tests/data/retryable_reads/findOne-serverErrors.yml
1883
+ - spec/spec_tests/data/retryable_reads/changeStreams-db.watch-serverErrors.yml
1884
+ - spec/spec_tests/data/retryable_reads/gridfs-download-serverErrors.yml
1740
1885
  - spec/spec_tests/data/retryable_reads/listCollectionNames-serverErrors.yml
1741
- - spec/spec_tests/data/retryable_reads/listDatabaseNames-serverErrors.yml
1742
1886
  - spec/spec_tests/data/retryable_reads/countDocuments-serverErrors.yml
1743
- - spec/spec_tests/data/retryable_reads/listIndexNames-serverErrors.yml
1744
- - spec/spec_tests/data/retryable_reads/listDatabaseObjects-serverErrors.yml
1745
- - spec/spec_tests/data/retryable_reads/distinct-serverErrors.yml
1887
+ - spec/spec_tests/data/retryable_reads/changeStreams-client.watch-serverErrors.yml
1888
+ - spec/spec_tests/data/retryable_reads/countDocuments.yml
1889
+ - spec/spec_tests/data/retryable_reads/count-serverErrors.yml
1746
1890
  - spec/spec_tests/data/retryable_reads/listIndexes-serverErrors.yml
1747
- - spec/spec_tests/data/retryable_reads/distinct.yml
1891
+ - spec/spec_tests/data/retryable_reads/changeStreams-client.watch.yml
1892
+ - spec/spec_tests/data/retryable_reads/listDatabases.yml
1893
+ - spec/spec_tests/data/retryable_reads/mapReduce.yml
1748
1894
  - spec/spec_tests/data/retryable_reads/listCollections-serverErrors.yml
1895
+ - spec/spec_tests/data/retryable_reads/changeStreams-db.coll.watch-serverErrors.yml
1896
+ - spec/spec_tests/data/retryable_reads/findOne.yml
1897
+ - spec/spec_tests/data/retryable_reads/gridfs-downloadByName-serverErrors.yml
1898
+ - spec/spec_tests/data/retryable_reads/aggregate.yml
1899
+ - spec/spec_tests/data/retryable_reads/distinct-serverErrors.yml
1900
+ - spec/spec_tests/data/retryable_reads/gridfs-downloadByName.yml
1901
+ - spec/spec_tests/data/retryable_reads/listDatabaseNames.yml
1902
+ - spec/spec_tests/data/retryable_reads/estimatedDocumentCount.yml
1903
+ - spec/spec_tests/data/retryable_reads/listIndexNames-serverErrors.yml
1904
+ - spec/spec_tests/data/retryable_reads/aggregate-serverErrors.yml
1905
+ - spec/spec_tests/data/retryable_reads/listDatabaseObjects-serverErrors.yml
1906
+ - spec/spec_tests/data/retryable_reads/listDatabaseNames-serverErrors.yml
1907
+ - spec/spec_tests/data/retryable_reads/estimatedDocumentCount-serverErrors.yml
1908
+ - spec/spec_tests/data/retryable_reads/listDatabases-serverErrors.yml
1749
1909
  - spec/spec_tests/data/retryable_reads/listCollectionObjects.yml
1750
- - spec/spec_tests/data/retryable_reads/countDocuments.yml
1751
- - spec/spec_tests/data/transactions_api/commit-writeconcernerror.yml
1910
+ - spec/spec_tests/data/retryable_reads/listIndexNames.yml
1911
+ - spec/spec_tests/data/retryable_reads/listCollections.yml
1912
+ - spec/spec_tests/data/retryable_reads/listDatabaseObjects.yml
1913
+ - spec/spec_tests/data/retryable_reads/find-serverErrors.yml
1914
+ - spec/spec_tests/data/retryable_reads/gridfs-download.yml
1915
+ - spec/spec_tests/data/retryable_reads/count.yml
1916
+ - spec/spec_tests/data/retryable_reads/changeStreams-db.watch.yml
1917
+ - spec/spec_tests/data/retryable_reads/aggregate-merge.yml
1918
+ - spec/spec_tests/data/gridfs/download.yml
1919
+ - spec/spec_tests/data/gridfs/upload.yml
1920
+ - spec/spec_tests/data/gridfs/delete.yml
1921
+ - spec/spec_tests/data/gridfs/download_by_name.yml
1752
1922
  - spec/spec_tests/data/transactions_api/commit-transienttransactionerror-4.2.yml
1753
- - spec/spec_tests/data/transactions_api/commit-retry.yml
1754
- - spec/spec_tests/data/transactions_api/callback-commits.yml
1755
- - spec/spec_tests/data/transactions_api/callback-aborts.yml
1756
1923
  - spec/spec_tests/data/transactions_api/transaction-options.yml
1924
+ - spec/spec_tests/data/transactions_api/callback-commits.yml
1757
1925
  - spec/spec_tests/data/transactions_api/commit.yml
1758
- - spec/spec_tests/data/transactions_api/commit-transienttransactionerror.yml
1759
1926
  - spec/spec_tests/data/transactions_api/callback-retry.yml
1760
- - spec/spec_tests/data/auth/connection-string.yml
1761
- - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch2.yml
1762
- - spec/spec_tests/data/dns_seedlist_discovery/one-result-default-port.yml
1763
- - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch3.yml
1764
- - spec/spec_tests/data/dns_seedlist_discovery/uri-with-two-hosts.yml
1765
- - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch1.yml
1766
- - spec/spec_tests/data/dns_seedlist_discovery/returned-parent-wrong.yml
1767
- - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch4.yml
1768
- - spec/spec_tests/data/dns_seedlist_discovery/parent-part-mismatch5.yml
1769
- - spec/spec_tests/data/dns_seedlist_discovery/misformatted-option.yml
1770
- - spec/spec_tests/data/dns_seedlist_discovery/txt-record-with-overridden-ssl-option.yml
1771
- - spec/spec_tests/data/dns_seedlist_discovery/one-txt-record-multiple-strings.yml
1772
- - spec/spec_tests/data/dns_seedlist_discovery/txt-record-not-allowed-option.yml
1773
- - spec/spec_tests/data/dns_seedlist_discovery/two-results-default-port.yml
1774
- - spec/spec_tests/data/dns_seedlist_discovery/uri-with-port.yml
1775
- - spec/spec_tests/data/dns_seedlist_discovery/one-txt-record.yml
1776
- - spec/spec_tests/data/dns_seedlist_discovery/txt-record-with-overridden-uri-option.yml
1777
- - spec/spec_tests/data/dns_seedlist_discovery/two-txt-records.yml
1778
- - spec/spec_tests/data/dns_seedlist_discovery/returned-parent-too-short.yml
1779
- - spec/spec_tests/data/dns_seedlist_discovery/txt-record-with-unallowed-option.yml
1780
- - spec/spec_tests/data/dns_seedlist_discovery/two-results-nonstandard-port.yml
1781
- - spec/spec_tests/data/dns_seedlist_discovery/longer-parent-in-return.yml
1782
- - spec/spec_tests/data/dns_seedlist_discovery/not-enough-parts.yml
1783
- - spec/spec_tests/data/dns_seedlist_discovery/no-results.yml
1784
- - spec/spec_tests/data/max_staleness/Sharded/Incompatible.yml
1785
- - spec/spec_tests/data/max_staleness/Sharded/SmallMaxStaleness.yml
1786
- - spec/spec_tests/data/max_staleness/Single/Incompatible.yml
1787
- - spec/spec_tests/data/max_staleness/Single/SmallMaxStaleness.yml
1788
- - spec/spec_tests/data/max_staleness/Unknown/SmallMaxStaleness.yml
1789
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.yml
1790
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.yml
1791
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest_tags.yml
1792
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.yml
1793
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.yml
1794
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Incompatible.yml
1795
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.yml
1796
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.yml
1797
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.yml
1798
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest.yml
1799
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.yml
1800
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.yml
1801
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.yml
1802
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.yml
1803
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Secondary_tags.yml
1804
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.yml
1805
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.yml
1806
- - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest2.yml
1807
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.yml
1808
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.yml
1809
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.yml
1810
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Incompatible.yml
1811
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Secondary.yml
1812
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.yml
1813
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.yml
1814
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest.yml
1815
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/NoKnownServers.yml
1816
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.yml
1817
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.yml
1818
- - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest2.yml
1819
- - spec/spec_tests/data/read_write_concern/document/write-concern.yml
1820
- - spec/spec_tests/data/read_write_concern/document/read-concern.yml
1821
- - spec/spec_tests/data/read_write_concern/connection-string/write-concern.yml
1822
- - spec/spec_tests/data/read_write_concern/connection-string/read-concern.yml
1823
- - spec/spec_tests/data/uri_options/compression-options.yml
1824
- - spec/spec_tests/data/uri_options/concern-options.yml
1825
- - spec/spec_tests/data/uri_options/connection-options.yml
1826
- - spec/spec_tests/data/uri_options/read-preference-options.yml
1827
- - spec/spec_tests/data/uri_options/tls-options.yml
1828
- - spec/spec_tests/data/uri_options/auth-options.yml
1829
- - spec/spec_tests/data/uri_options/connection-pool-options.yml
1830
- - spec/spec_tests/data/cmap/pool-checkin-make-available.yml
1831
- - spec/spec_tests/data/cmap/pool-checkout-no-stale.yml
1832
- - spec/spec_tests/data/cmap/pool-checkout-no-idle.yml
1833
- - spec/spec_tests/data/cmap/connection-must-have-id.yml
1834
- - spec/spec_tests/data/cmap/pool-create.yml
1835
- - spec/spec_tests/data/cmap/pool-checkin-destroy-closed.yml
1836
- - spec/spec_tests/data/cmap/wait-queue-fairness.yml
1837
- - spec/spec_tests/data/cmap/pool-close.yml
1838
- - spec/spec_tests/data/cmap/connection-must-order-ids.yml
1839
- - spec/spec_tests/data/cmap/pool-create-with-options.yml
1840
- - spec/spec_tests/data/cmap/pool-create-min-size.yml
1841
- - spec/spec_tests/data/cmap/wait-queue-timeout.yml
1842
- - spec/spec_tests/data/cmap/pool-checkin-destroy-stale.yml
1843
- - spec/spec_tests/data/cmap/pool-checkout-multiple.yml
1844
- - spec/spec_tests/data/cmap/pool-checkin.yml
1845
- - spec/spec_tests/data/cmap/pool-checkout-error-closed.yml
1846
- - spec/spec_tests/data/cmap/pool-close-destroy-conns.yml
1847
- - spec/spec_tests/data/cmap/pool-checkout-connection.yml
1848
- - spec/spec_tests/data/cmap/pool-create-max-size.yml
1849
- - spec/spec_tests/data/client_side_encryption/types.yml
1850
- - spec/spec_tests/data/client_side_encryption/keyAltName.yml
1851
- - spec/spec_tests/data/client_side_encryption/unsupportedCommand.yml
1852
- - spec/spec_tests/data/client_side_encryption/bypassedCommand.yml
1853
- - spec/spec_tests/data/client_side_encryption/missingKey.yml
1854
- - spec/spec_tests/data/client_side_encryption/updateOne.yml
1855
- - spec/spec_tests/data/client_side_encryption/findOneAndDelete.yml
1856
- - spec/spec_tests/data/client_side_encryption/basic.yml
1857
- - spec/spec_tests/data/client_side_encryption/aggregate.yml
1858
- - spec/spec_tests/data/client_side_encryption/maxWireVersion.yml
1859
- - spec/spec_tests/data/client_side_encryption/badSchema.yml
1860
- - spec/spec_tests/data/client_side_encryption/find.yml
1861
- - spec/spec_tests/data/client_side_encryption/replaceOne.yml
1862
- - spec/spec_tests/data/client_side_encryption/count.yml
1927
+ - spec/spec_tests/data/transactions_api/commit-transienttransactionerror.yml
1928
+ - spec/spec_tests/data/transactions_api/commit-writeconcernerror.yml
1929
+ - spec/spec_tests/data/transactions_api/callback-aborts.yml
1930
+ - spec/spec_tests/data/transactions_api/commit-retry.yml
1863
1931
  - spec/spec_tests/data/client_side_encryption/localSchema.yml
1864
- - spec/spec_tests/data/client_side_encryption/malformedCiphertext.yml
1865
- - spec/spec_tests/data/client_side_encryption/getMore.yml
1866
- - spec/spec_tests/data/client_side_encryption/delete.yml
1867
- - spec/spec_tests/data/client_side_encryption/localKMS.yml
1868
- - spec/spec_tests/data/client_side_encryption/bulk.yml
1932
+ - spec/spec_tests/data/client_side_encryption/find.yml
1869
1933
  - spec/spec_tests/data/client_side_encryption/findOneAndUpdate.yml
1870
- - spec/spec_tests/data/client_side_encryption/badQueries.yml
1871
- - spec/spec_tests/data/client_side_encryption/updateMany.yml
1872
- - spec/spec_tests/data/client_side_encryption/insert.yml
1873
- - spec/spec_tests/data/client_side_encryption/explain.yml
1874
- - spec/spec_tests/data/client_side_encryption/findOneAndReplace.yml
1875
1934
  - spec/spec_tests/data/client_side_encryption/distinct.yml
1876
- - spec/spec_tests/data/client_side_encryption/bypassAutoEncryption.yml
1877
- - spec/spec_tests/data/client_side_encryption/countDocuments.yml
1878
- - spec/spec_tests/data/transactions/causal-consistency.yml
1879
- - spec/spec_tests/data/transactions/write-concern.yml
1880
- - spec/spec_tests/data/transactions/mongos-recovery-token.yml
1881
- - spec/spec_tests/data/transactions/findOneAndDelete.yml
1882
- - spec/spec_tests/data/transactions/reads.yml
1883
- - spec/spec_tests/data/transactions/retryable-abort.yml
1884
- - spec/spec_tests/data/transactions/count.yml
1885
- - spec/spec_tests/data/transactions/errors-client.yml
1886
- - spec/spec_tests/data/transactions/abort.yml
1887
- - spec/spec_tests/data/transactions/delete.yml
1888
- - spec/spec_tests/data/transactions/bulk.yml
1889
- - spec/spec_tests/data/transactions/findOneAndUpdate.yml
1890
- - spec/spec_tests/data/transactions/transaction-options.yml
1891
- - spec/spec_tests/data/transactions/commit.yml
1892
- - spec/spec_tests/data/transactions/run-command.yml
1893
- - spec/spec_tests/data/transactions/retryable-commit.yml
1894
- - spec/spec_tests/data/transactions/mongos-pin-auto.yml
1895
- - spec/spec_tests/data/transactions/insert.yml
1896
- - spec/spec_tests/data/transactions/errors.yml
1897
- - spec/spec_tests/data/transactions/transaction-options-repl.yml
1898
- - spec/spec_tests/data/transactions/findOneAndReplace.yml
1899
- - spec/spec_tests/data/transactions/update.yml
1900
- - spec/spec_tests/data/transactions/read-pref.yml
1901
- - spec/spec_tests/data/transactions/retryable-writes.yml
1902
- - spec/spec_tests/data/transactions/error-labels.yml
1903
- - spec/spec_tests/data/transactions/pin-mongos.yml
1904
- - spec/spec_tests/data/transactions/isolation.yml
1905
- - spec/spec_tests/data/transactions/read-concern.yml
1906
- - spec/spec_tests/data/server_selection/Sharded/read/Primary.yml
1907
- - spec/spec_tests/data/server_selection/Sharded/read/Secondary.yml
1908
- - spec/spec_tests/data/server_selection/Sharded/read/PrimaryPreferred.yml
1909
- - spec/spec_tests/data/server_selection/Sharded/read/Nearest.yml
1910
- - spec/spec_tests/data/server_selection/Sharded/read/SecondaryPreferred.yml
1911
- - spec/spec_tests/data/server_selection/Single/read/SecondaryPreferred.yml
1912
- - spec/spec_tests/data/server_selection/Unknown/read/SecondaryPreferred.yml
1913
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.yml
1914
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.yml
1915
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.yml
1916
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.yml
1917
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.yml
1918
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Primary.yml
1919
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Secondary.yml
1920
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.yml
1921
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest.yml
1922
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.yml
1923
- - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.yml
1924
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.yml
1925
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.yml
1926
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.yml
1927
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml
1928
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.yml
1929
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.yml
1930
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Primary.yml
1931
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.yml
1932
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary.yml
1933
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.yml
1934
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest.yml
1935
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.yml
1936
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.yml
1937
- - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.yml
1938
- - spec/spec_tests/data/gridfs/upload.yml
1939
- - spec/spec_tests/data/gridfs/download_by_name.yml
1940
- - spec/spec_tests/data/gridfs/delete.yml
1941
- - spec/spec_tests/data/gridfs/download.yml
1942
- - spec/spec_tests/data/sdam/sharded/ruby_discovered_single_mongos.yml
1943
- - spec/spec_tests/data/sdam/sharded/ruby_primary_different_address.yml
1944
- - spec/spec_tests/data/sdam/sharded/ls_timeout_mongos.yml
1945
- - spec/spec_tests/data/sdam/sharded/non_mongos_removed.yml
1946
- - spec/spec_tests/data/sdam/sharded/too_new.yml
1947
- - spec/spec_tests/data/sdam/sharded/normalize_uri_case.yml
1948
- - spec/spec_tests/data/sdam/sharded/ruby_primary_mismatched_me.yml
1949
- - spec/spec_tests/data/sdam/sharded/too_old.yml
1950
- - spec/spec_tests/data/sdam/sharded/multiple_mongoses.yml
1951
- - spec/spec_tests/data/sdam/sharded/mongos_disconnect.yml
1952
- - spec/spec_tests/data/sdam/sharded/compatible.yml
1953
- - spec/spec_tests/data/sdam/single/direct_connection_rsarbiter.yml
1954
- - spec/spec_tests/data/sdam/single/direct_connection_standalone.yml
1955
- - spec/spec_tests/data/sdam/single/ls_timeout_standalone.yml
1956
- - spec/spec_tests/data/sdam/single/standalone_removed.yml
1957
- - spec/spec_tests/data/sdam/single/direct_connection_slave.yml
1958
- - spec/spec_tests/data/sdam/single/ruby_primary_different_address.yml
1935
+ - spec/spec_tests/data/client_side_encryption/getMore.yml
1936
+ - spec/spec_tests/data/client_side_encryption/maxWireVersion.yml
1937
+ - spec/spec_tests/data/client_side_encryption/findOneAndDelete.yml
1938
+ - spec/spec_tests/data/client_side_encryption/types.yml
1939
+ - spec/spec_tests/data/client_side_encryption/countDocuments.yml
1940
+ - spec/spec_tests/data/client_side_encryption/badSchema.yml
1941
+ - spec/spec_tests/data/client_side_encryption/localKMS.yml
1942
+ - spec/spec_tests/data/client_side_encryption/findOneAndReplace.yml
1943
+ - spec/spec_tests/data/client_side_encryption/updateMany.yml
1944
+ - spec/spec_tests/data/client_side_encryption/aggregate.yml
1945
+ - spec/spec_tests/data/client_side_encryption/basic.yml
1946
+ - spec/spec_tests/data/client_side_encryption/keyAltName.yml
1947
+ - spec/spec_tests/data/client_side_encryption/delete.yml
1948
+ - spec/spec_tests/data/client_side_encryption/bypassAutoEncryption.yml
1949
+ - spec/spec_tests/data/client_side_encryption/unsupportedCommand.yml
1950
+ - spec/spec_tests/data/client_side_encryption/bypassedCommand.yml
1951
+ - spec/spec_tests/data/client_side_encryption/missingKey.yml
1952
+ - spec/spec_tests/data/client_side_encryption/badQueries.yml
1953
+ - spec/spec_tests/data/client_side_encryption/replaceOne.yml
1954
+ - spec/spec_tests/data/client_side_encryption/bulk.yml
1955
+ - spec/spec_tests/data/client_side_encryption/count.yml
1956
+ - spec/spec_tests/data/client_side_encryption/insert.yml
1957
+ - spec/spec_tests/data/client_side_encryption/explain.yml
1958
+ - spec/spec_tests/data/client_side_encryption/malformedCiphertext.yml
1959
+ - spec/spec_tests/data/client_side_encryption/updateOne.yml
1960
+ - spec/spec_tests/data/auth/connection-string.yml
1961
+ - spec/spec_tests/data/crud/read/find.yml
1962
+ - spec/spec_tests/data/crud/read/count-empty.yml
1963
+ - spec/spec_tests/data/crud/read/distinct.yml
1964
+ - spec/spec_tests/data/crud/read/aggregate-out.yml
1965
+ - spec/spec_tests/data/crud/read/find-collation.yml
1966
+ - spec/spec_tests/data/crud/read/aggregate.yml
1967
+ - spec/spec_tests/data/crud/read/distinct-collation.yml
1968
+ - spec/spec_tests/data/crud/read/aggregate-collation.yml
1969
+ - spec/spec_tests/data/crud/read/count.yml
1970
+ - spec/spec_tests/data/crud/read/count-collation.yml
1971
+ - spec/spec_tests/data/crud/write/updateOne-collation.yml
1972
+ - spec/spec_tests/data/crud/write/replaceOne-collation.yml
1973
+ - spec/spec_tests/data/crud/write/findOneAndUpdate.yml
1974
+ - spec/spec_tests/data/crud/write/deleteMany-collation.yml
1975
+ - spec/spec_tests/data/crud/write/findOneAndReplace-upsert.yml
1976
+ - spec/spec_tests/data/crud/write/insertMany.yml
1977
+ - spec/spec_tests/data/crud/write/replaceOne-upsert.yml
1978
+ - spec/spec_tests/data/crud/write/bulkWrite.yml
1979
+ - spec/spec_tests/data/crud/write/findOneAndDelete.yml
1980
+ - spec/spec_tests/data/crud/write/updateMany-collation.yml
1981
+ - spec/spec_tests/data/crud/write/updateOne-arrayFilters.yml
1982
+ - spec/spec_tests/data/crud/write/findOneAndDelete-collation.yml
1983
+ - spec/spec_tests/data/crud/write/findOneAndReplace.yml
1984
+ - spec/spec_tests/data/crud/write/deleteMany.yml
1985
+ - spec/spec_tests/data/crud/write/updateMany.yml
1986
+ - spec/spec_tests/data/crud/write/deleteOne-collation.yml
1987
+ - spec/spec_tests/data/crud/write/bulkWrite-collation.yml
1988
+ - spec/spec_tests/data/crud/write/updateOne-pre_2.6.yml
1989
+ - spec/spec_tests/data/crud/write/deleteOne.yml
1990
+ - spec/spec_tests/data/crud/write/updateMany-arrayFilters.yml
1991
+ - spec/spec_tests/data/crud/write/insertOne.yml
1992
+ - spec/spec_tests/data/crud/write/replaceOne-pre_2.6.yml
1993
+ - spec/spec_tests/data/crud/write/findOneAndReplace-upsert_pre_2.6.yml
1994
+ - spec/spec_tests/data/crud/write/updateMany-pre_2.6.yml
1995
+ - spec/spec_tests/data/crud/write/findOneAndUpdate-collation.yml
1996
+ - spec/spec_tests/data/crud/write/replaceOne.yml
1997
+ - spec/spec_tests/data/crud/write/bulkWrite-arrayFilters.yml
1998
+ - spec/spec_tests/data/crud/write/findOneAndUpdate-arrayFilters.yml
1999
+ - spec/spec_tests/data/crud/write/findOneAndReplace-collation.yml
2000
+ - spec/spec_tests/data/crud/write/updateOne.yml
2001
+ - spec/spec_tests/data/cmap/pool-checkout-no-idle.yml
2002
+ - spec/spec_tests/data/cmap/pool-checkin.yml
2003
+ - spec/spec_tests/data/cmap/pool-close-destroy-conns.yml
2004
+ - spec/spec_tests/data/cmap/pool-checkin-destroy-stale.yml
2005
+ - spec/spec_tests/data/cmap/pool-checkin-make-available.yml
2006
+ - spec/spec_tests/data/cmap/connection-must-have-id.yml
2007
+ - spec/spec_tests/data/cmap/pool-close.yml
2008
+ - spec/spec_tests/data/cmap/pool-checkout-no-stale.yml
2009
+ - spec/spec_tests/data/cmap/connection-must-order-ids.yml
2010
+ - spec/spec_tests/data/cmap/pool-checkout-connection.yml
2011
+ - spec/spec_tests/data/cmap/pool-checkout-multiple.yml
2012
+ - spec/spec_tests/data/cmap/pool-checkin-destroy-closed.yml
2013
+ - spec/spec_tests/data/cmap/pool-create-with-options.yml
2014
+ - spec/spec_tests/data/cmap/wait-queue-fairness.yml
2015
+ - spec/spec_tests/data/cmap/pool-create-min-size.yml
2016
+ - spec/spec_tests/data/cmap/pool-create-max-size.yml
2017
+ - spec/spec_tests/data/cmap/wait-queue-timeout.yml
2018
+ - spec/spec_tests/data/cmap/pool-create.yml
2019
+ - spec/spec_tests/data/cmap/pool-checkout-error-closed.yml
2020
+ - spec/spec_tests/data/uri_options/connection-pool-options.yml
2021
+ - spec/spec_tests/data/uri_options/tls-options.yml
2022
+ - spec/spec_tests/data/uri_options/ruby-auth-options.yml
2023
+ - spec/spec_tests/data/uri_options/compression-options.yml
2024
+ - spec/spec_tests/data/uri_options/concern-options.yml
2025
+ - spec/spec_tests/data/uri_options/connection-options.yml
2026
+ - spec/spec_tests/data/uri_options/read-preference-options.yml
2027
+ - spec/spec_tests/data/uri_options/auth-options.yml
2028
+ - spec/spec_tests/data/uri_options/ruby-connection-options.yml
2029
+ - spec/spec_tests/data/sdam_integration/isMaster-timeout.yml
2030
+ - spec/spec_tests/data/sdam_integration/rediscover-quickly-after-step-down.yml
2031
+ - spec/spec_tests/data/sdam_integration/insert-network-error.yml
2032
+ - spec/spec_tests/data/sdam_integration/find-shutdown-error.yml
2033
+ - spec/spec_tests/data/sdam_integration/cancel-server-check.yml
2034
+ - spec/spec_tests/data/sdam_integration/insert-shutdown-error.yml
2035
+ - spec/spec_tests/data/sdam_integration/isMaster-network-error.yml
2036
+ - spec/spec_tests/data/sdam_integration/isMaster-command-error.yml
2037
+ - spec/spec_tests/data/sdam_integration/find-network-error.yml
2038
+ - spec/spec_tests/data/sdam_integration/connectTimeoutMS.yml
2039
+ - spec/spec_tests/data/max_staleness/Sharded/Incompatible.yml
2040
+ - spec/spec_tests/data/max_staleness/Sharded/SmallMaxStaleness.yml
2041
+ - spec/spec_tests/data/max_staleness/Single/Incompatible.yml
2042
+ - spec/spec_tests/data/max_staleness/Single/SmallMaxStaleness.yml
2043
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.yml
2044
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.yml
2045
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.yml
2046
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest.yml
2047
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.yml
2048
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.yml
2049
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.yml
2050
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.yml
2051
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.yml
2052
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Incompatible.yml
2053
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.yml
2054
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.yml
2055
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Secondary_tags.yml
2056
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.yml
2057
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.yml
2058
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.yml
2059
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest_tags.yml
2060
+ - spec/spec_tests/data/max_staleness/ReplicaSetWithPrimary/Nearest2.yml
2061
+ - spec/spec_tests/data/max_staleness/Unknown/SmallMaxStaleness.yml
2062
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/MaxStalenessTooSmall.yml
2063
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.yml
2064
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest.yml
2065
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.yml
2066
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.yml
2067
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.yml
2068
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Secondary.yml
2069
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/NoKnownServers.yml
2070
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.yml
2071
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Incompatible.yml
2072
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.yml
2073
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.yml
2074
+ - spec/spec_tests/data/max_staleness/ReplicaSetNoPrimary/Nearest2.yml
2075
+ - spec/spec_tests/data/sdam/single/direct_connection_wrong_set_name.yml
2076
+ - spec/spec_tests/data/sdam/single/discover_standalone.yml
2077
+ - spec/spec_tests/data/sdam/single/direct_connection_mongos.yml
2078
+ - spec/spec_tests/data/sdam/single/not_ok_response.yml
1959
2079
  - spec/spec_tests/data/sdam/single/direct_connection_rssecondary.yml
1960
- - spec/spec_tests/data/sdam/single/unavailable_seed.yml
2080
+ - spec/spec_tests/data/sdam/single/direct_connection_unavailable_seed.yml
2081
+ - spec/spec_tests/data/sdam/single/direct_connection_external_ip.yml
1961
2082
  - spec/spec_tests/data/sdam/single/direct_connection_rsprimary.yml
1962
2083
  - spec/spec_tests/data/sdam/single/too_new.yml
1963
- - spec/spec_tests/data/sdam/single/direct_connection_external_ip.yml
1964
- - spec/spec_tests/data/sdam/single/not_ok_response.yml
2084
+ - spec/spec_tests/data/sdam/single/too_old_then_upgraded.yml
2085
+ - spec/spec_tests/data/sdam/single/standalone_removed.yml
1965
2086
  - spec/spec_tests/data/sdam/single/ruby_primary_mismatched_me.yml
2087
+ - spec/spec_tests/data/sdam/single/discover_unavailable_seed.yml
2088
+ - spec/spec_tests/data/sdam/single/direct_connection_standalone.yml
2089
+ - spec/spec_tests/data/sdam/single/ls_timeout_standalone.yml
2090
+ - spec/spec_tests/data/sdam/single/direct_connection_rsarbiter.yml
1966
2091
  - spec/spec_tests/data/sdam/single/too_old.yml
1967
- - spec/spec_tests/data/sdam/single/direct_connection_mongos.yml
2092
+ - spec/spec_tests/data/sdam/single/direct_connection_slave.yml
1968
2093
  - spec/spec_tests/data/sdam/single/compatible.yml
1969
- - spec/spec_tests/data/sdam/rs/primary_becomes_mongos.yml
1970
- - spec/spec_tests/data/sdam/rs/incompatible_ghost.yml
1971
- - spec/spec_tests/data/sdam/rs/member_standalone.yml
1972
- - spec/spec_tests/data/sdam/rs/wrong_set_name.yml
1973
- - spec/spec_tests/data/sdam/rs/secondary_wrong_set_name_with_primary.yml
1974
- - spec/spec_tests/data/sdam/rs/primary_hint_from_secondary_with_mismatched_me.yml
1975
- - spec/spec_tests/data/sdam/rs/primary_changes_set_name.yml
1976
- - spec/spec_tests/data/sdam/rs/member_reconfig.yml
1977
- - spec/spec_tests/data/sdam/rs/setversion_without_electionid.yml
1978
- - spec/spec_tests/data/sdam/rs/secondary_mismatched_me.yml
2094
+ - spec/spec_tests/data/sdam/single/ruby_primary_different_address.yml
2095
+ - spec/spec_tests/data/sdam/single/direct_connection_replicaset.yml
2096
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedDueToReplStateChange.yml
2097
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMaster.yml
2098
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-PrimarySteppedDown.yml
2099
+ - spec/spec_tests/data/sdam/errors/pre-42-InterruptedDueToReplStateChange.yml
2100
+ - spec/spec_tests/data/sdam/errors/post-42-InterruptedAtShutdown.yml
2101
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMaster.yml
2102
+ - spec/spec_tests/data/sdam/errors/post-42-NotMasterNoSlaveOk.yml
2103
+ - spec/spec_tests/data/sdam/errors/stale-generation-InterruptedDueToReplStateChange.yml
2104
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedDueToReplStateChange.yml
2105
+ - spec/spec_tests/data/sdam/errors/stale-generation-NotMaster.yml
2106
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedDueToReplStateChange.yml
2107
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-ShutdownInProgress.yml
2108
+ - spec/spec_tests/data/sdam/errors/post-42-ShutdownInProgress.yml
2109
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMasterOrSecondary.yml
2110
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-ShutdownInProgress.yml
2111
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-ShutdownInProgress.yml
2112
+ - spec/spec_tests/data/sdam/errors/non-stale-network-timeout-error.yml
2113
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-timeout.yml
2114
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMaster.yml
2115
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-timeout.yml
2116
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMasterNoSlaveOk.yml
2117
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMasterNoSlaveOk.yml
2118
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedDueToReplStateChange.yml
2119
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-PrimarySteppedDown.yml
2120
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-PrimarySteppedDown.yml
2121
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMasterNoSlaveOk.yml
2122
+ - spec/spec_tests/data/sdam/errors/pre-42-ShutdownInProgress.yml
2123
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedAtShutdown.yml
2124
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMasterNoSlaveOk.yml
2125
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMaster.yml
2126
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-InterruptedDueToReplStateChange.yml
2127
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-PrimarySteppedDown.yml
2128
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-NotMasterOrSecondary.yml
2129
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-InterruptedAtShutdown.yml
2130
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-PrimarySteppedDown.yml
2131
+ - spec/spec_tests/data/sdam/errors/stale-generation-NotMasterOrSecondary.yml
2132
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMasterOrSecondary.yml
2133
+ - spec/spec_tests/data/sdam/errors/error_handling_handshake.yml
2134
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedDueToReplStateChange.yml
2135
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-network.yml
2136
+ - spec/spec_tests/data/sdam/errors/stale-generation-InterruptedAtShutdown.yml
2137
+ - spec/spec_tests/data/sdam/errors/stale-generation-PrimarySteppedDown.yml
2138
+ - spec/spec_tests/data/sdam/errors/post-42-InterruptedDueToReplStateChange.yml
2139
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-ShutdownInProgress.yml
2140
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-ShutdownInProgress.yml
2141
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-NotMasterNoSlaveOk.yml
2142
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-network.yml
2143
+ - spec/spec_tests/data/sdam/errors/stale-generation-ShutdownInProgress.yml
2144
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMaster.yml
2145
+ - spec/spec_tests/data/sdam/errors/post-42-NotMasterOrSecondary.yml
2146
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-ShutdownInProgress.yml
2147
+ - spec/spec_tests/data/sdam/errors/stale-generation-NotMasterNoSlaveOk.yml
2148
+ - spec/spec_tests/data/sdam/errors/pre-42-NotMasterOrSecondary.yml
2149
+ - spec/spec_tests/data/sdam/errors/post-42-PrimarySteppedDown.yml
2150
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-InterruptedAtShutdown.yml
2151
+ - spec/spec_tests/data/sdam/errors/post-42-NotMaster.yml
2152
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-NotMasterOrSecondary.yml
2153
+ - spec/spec_tests/data/sdam/errors/pre-42-NotMasterNoSlaveOk.yml
2154
+ - spec/spec_tests/data/sdam/errors/stale-topologyVersion-PrimarySteppedDown.yml
2155
+ - spec/spec_tests/data/sdam/errors/pre-42-InterruptedAtShutdown.yml
2156
+ - spec/spec_tests/data/sdam/errors/non-stale-network-error.yml
2157
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMasterNoSlaveOk.yml
2158
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-InterruptedAtShutdown.yml
2159
+ - spec/spec_tests/data/sdam/errors/pre-42-NotMaster.yml
2160
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-proccessId-changed-NotMasterOrSecondary.yml
2161
+ - spec/spec_tests/data/sdam/errors/stale-generation-beforeHandshakeCompletes-NotMaster.yml
2162
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-greater-InterruptedAtShutdown.yml
2163
+ - spec/spec_tests/data/sdam/errors/pre-42-PrimarySteppedDown.yml
2164
+ - spec/spec_tests/data/sdam/errors/non-stale-topologyVersion-missing-InterruptedAtShutdown.yml
2165
+ - spec/spec_tests/data/sdam/errors/stale-generation-afterHandshakeCompletes-NotMasterOrSecondary.yml
2166
+ - spec/spec_tests/data/sdam/sharded/discover_single_mongos.yml
2167
+ - spec/spec_tests/data/sdam/sharded/ls_timeout_mongos.yml
2168
+ - spec/spec_tests/data/sdam/sharded/mongos_disconnect.yml
2169
+ - spec/spec_tests/data/sdam/sharded/too_new.yml
2170
+ - spec/spec_tests/data/sdam/sharded/non_mongos_removed.yml
2171
+ - spec/spec_tests/data/sdam/sharded/ruby_primary_mismatched_me.yml
2172
+ - spec/spec_tests/data/sdam/sharded/multiple_mongoses.yml
2173
+ - spec/spec_tests/data/sdam/sharded/normalize_uri_case.yml
2174
+ - spec/spec_tests/data/sdam/sharded/too_old.yml
2175
+ - spec/spec_tests/data/sdam/sharded/compatible.yml
2176
+ - spec/spec_tests/data/sdam/sharded/ruby_primary_different_address.yml
2177
+ - spec/spec_tests/data/sdam/rs/primary_becomes_standalone.yml
2178
+ - spec/spec_tests/data/sdam/rs/discover_hidden.yml
2179
+ - spec/spec_tests/data/sdam/rs/non_rs_member.yml
1979
2180
  - spec/spec_tests/data/sdam/rs/primary_wrong_set_name.yml
1980
- - spec/spec_tests/data/sdam/rs/discover_primary.yml
1981
- - spec/spec_tests/data/sdam/rs/ruby_primary_address_change.yml
1982
- - spec/spec_tests/data/sdam/rs/discover_passives.yml
1983
- - spec/spec_tests/data/sdam/rs/primary_mismatched_me.yml
1984
- - spec/spec_tests/data/sdam/rs/normalize_case.yml
1985
- - spec/spec_tests/data/sdam/rs/too_new.yml
1986
2181
  - spec/spec_tests/data/sdam/rs/discovery.yml
1987
- - spec/spec_tests/data/sdam/rs/ghost_discovered.yml
2182
+ - spec/spec_tests/data/sdam/rs/discover_rsother_replicaset.yml
2183
+ - spec/spec_tests/data/sdam/rs/primary_disconnect_electionid.yml
2184
+ - spec/spec_tests/data/sdam/rs/primary_becomes_ghost.yml
2185
+ - spec/spec_tests/data/sdam/rs/discover_ghost.yml
2186
+ - spec/spec_tests/data/sdam/rs/new_primary_new_electionid.yml
2187
+ - spec/spec_tests/data/sdam/rs/ruby_primary_address_change.yml
1988
2188
  - spec/spec_tests/data/sdam/rs/equal_electionids.yml
1989
- - spec/spec_tests/data/sdam/rs/primary_mismatched_me_not_removed.yml
1990
- - spec/spec_tests/data/sdam/rs/hosts_differ_from_seeds.yml
1991
- - spec/spec_tests/data/sdam/rs/primary_disconnect.yml
1992
- - spec/spec_tests/data/sdam/rs/rsother_discovered.yml
1993
- - spec/spec_tests/data/sdam/rs/discover_secondary.yml
2189
+ - spec/spec_tests/data/sdam/rs/unexpected_mongos.yml
1994
2190
  - spec/spec_tests/data/sdam/rs/stepdown_change_set_name.yml
1995
- - spec/spec_tests/data/sdam/rs/secondary_wrong_set_name.yml
1996
- - spec/spec_tests/data/sdam/rs/ls_timeout.yml
1997
- - spec/spec_tests/data/sdam/rs/primary_becomes_ghost.yml
1998
- - spec/spec_tests/data/sdam/rs/normalize_case_me.yml
1999
- - spec/spec_tests/data/sdam/rs/use_setversion_without_electionid.yml
2000
- - spec/spec_tests/data/sdam/rs/secondary_ignore_ok_0.yml
2001
- - spec/spec_tests/data/sdam/rs/primary_reports_new_member.yml
2002
- - spec/spec_tests/data/sdam/rs/compatible_unknown.yml
2003
- - spec/spec_tests/data/sdam/rs/too_old.yml
2004
- - spec/spec_tests/data/sdam/rs/primary_becomes_standalone.yml
2005
- - spec/spec_tests/data/sdam/rs/repeated.yml
2006
- - spec/spec_tests/data/sdam/rs/sec_not_auth.yml
2007
- - spec/spec_tests/data/sdam/rs/incompatible_arbiter.yml
2008
- - spec/spec_tests/data/sdam/rs/ruby_secondary_wrong_set_name_with_primary_second.yml
2009
2191
  - spec/spec_tests/data/sdam/rs/new_primary_wrong_set_name.yml
2010
- - spec/spec_tests/data/sdam/rs/primary_disconnect_electionid.yml
2011
- - spec/spec_tests/data/sdam/rs/primary_to_no_primary_mismatched_me.yml
2012
- - spec/spec_tests/data/sdam/rs/primary_disconnect_setversion.yml
2013
- - spec/spec_tests/data/sdam/rs/unexpected_mongos.yml
2014
- - spec/spec_tests/data/sdam/rs/non_rs_member.yml
2015
- - spec/spec_tests/data/sdam/rs/response_from_removed.yml
2016
- - spec/spec_tests/data/sdam/rs/new_primary.yml
2017
- - spec/spec_tests/data/sdam/rs/new_primary_new_setversion.yml
2192
+ - spec/spec_tests/data/sdam/rs/discover_hidden_replicaset.yml
2193
+ - spec/spec_tests/data/sdam/rs/discover_arbiters_replicaset.yml
2194
+ - spec/spec_tests/data/sdam/rs/discover_primary_replicaset.yml
2018
2195
  - spec/spec_tests/data/sdam/rs/incompatible_other.yml
2019
- - spec/spec_tests/data/sdam/rs/new_primary_new_electionid.yml
2196
+ - spec/spec_tests/data/sdam/rs/primary_disconnect.yml
2197
+ - spec/spec_tests/data/sdam/rs/primary_reports_new_member.yml
2198
+ - spec/spec_tests/data/sdam/rs/normalize_case_me.yml
2199
+ - spec/spec_tests/data/sdam/rs/primary_becomes_mongos.yml
2020
2200
  - spec/spec_tests/data/sdam/rs/null_election_id.yml
2021
- - spec/spec_tests/data/sdam/rs/compatible.yml
2022
- - spec/spec_tests/data/sdam/rs/discover_arbiters.yml
2023
- - spec/spec_tests/data/crud/write/updateOne-pre_2.6.yml
2024
- - spec/spec_tests/data/crud/write/findOneAndUpdate-collation.yml
2025
- - spec/spec_tests/data/crud/write/deleteOne.yml
2026
- - spec/spec_tests/data/crud/write/updateOne.yml
2027
- - spec/spec_tests/data/crud/write/updateMany-arrayFilters.yml
2028
- - spec/spec_tests/data/crud/write/findOneAndDelete.yml
2029
- - spec/spec_tests/data/crud/write/replaceOne-collation.yml
2030
- - spec/spec_tests/data/crud/write/updateOne-collation.yml
2031
- - spec/spec_tests/data/crud/write/insertMany.yml
2032
- - spec/spec_tests/data/crud/write/deleteMany-collation.yml
2033
- - spec/spec_tests/data/crud/write/bulkWrite.yml
2034
- - spec/spec_tests/data/crud/write/updateOne-arrayFilters.yml
2035
- - spec/spec_tests/data/crud/write/replaceOne.yml
2036
- - spec/spec_tests/data/crud/write/insertOne.yml
2037
- - spec/spec_tests/data/crud/write/updateMany-collation.yml
2038
- - spec/spec_tests/data/crud/write/findOneAndUpdate-arrayFilters.yml
2039
- - spec/spec_tests/data/crud/write/findOneAndUpdate.yml
2040
- - spec/spec_tests/data/crud/write/findOneAndDelete-collation.yml
2041
- - spec/spec_tests/data/crud/write/replaceOne-pre_2.6.yml
2042
- - spec/spec_tests/data/crud/write/replaceOne-upsert.yml
2043
- - spec/spec_tests/data/crud/write/updateMany.yml
2044
- - spec/spec_tests/data/crud/write/bulkWrite-arrayFilters.yml
2045
- - spec/spec_tests/data/crud/write/findOneAndReplace-upsert_pre_2.6.yml
2046
- - spec/spec_tests/data/crud/write/bulkWrite-collation.yml
2047
- - spec/spec_tests/data/crud/write/updateMany-pre_2.6.yml
2048
- - spec/spec_tests/data/crud/write/findOneAndReplace-collation.yml
2049
- - spec/spec_tests/data/crud/write/deleteOne-collation.yml
2050
- - spec/spec_tests/data/crud/write/findOneAndReplace.yml
2051
- - spec/spec_tests/data/crud/write/findOneAndReplace-upsert.yml
2052
- - spec/spec_tests/data/crud/write/deleteMany.yml
2053
- - spec/spec_tests/data/crud/read/aggregate.yml
2054
- - spec/spec_tests/data/crud/read/count-collation.yml
2055
- - spec/spec_tests/data/crud/read/find.yml
2056
- - spec/spec_tests/data/crud/read/aggregate-out.yml
2057
- - spec/spec_tests/data/crud/read/aggregate-collation.yml
2058
- - spec/spec_tests/data/crud/read/count.yml
2059
- - spec/spec_tests/data/crud/read/distinct-collation.yml
2060
- - spec/spec_tests/data/crud/read/find-collation.yml
2061
- - spec/spec_tests/data/crud/read/distinct.yml
2062
- - spec/spec_tests/data/crud/read/count-empty.yml
2063
- - spec/spec_tests/data/retryable_writes/deleteOne-serverErrors.yml
2064
- - spec/spec_tests/data/retryable_writes/deleteOne.yml
2065
- - spec/spec_tests/data/retryable_writes/updateOne.yml
2066
- - spec/spec_tests/data/retryable_writes/findOneAndDelete.yml
2067
- - spec/spec_tests/data/retryable_writes/findOneAndReplace-serverErrors.yml
2201
+ - spec/spec_tests/data/sdam/rs/secondary_wrong_set_name.yml
2202
+ - spec/spec_tests/data/sdam/rs/discover_secondary.yml
2203
+ - spec/spec_tests/data/sdam/rs/secondary_ignore_ok_0.yml
2204
+ - spec/spec_tests/data/sdam/rs/sec_not_auth.yml
2205
+ - spec/spec_tests/data/sdam/rs/too_new.yml
2206
+ - spec/spec_tests/data/sdam/rs/discover_passives.yml
2207
+ - spec/spec_tests/data/sdam/rs/topology_version_less.yml
2208
+ - spec/spec_tests/data/sdam/rs/member_standalone.yml
2209
+ - spec/spec_tests/data/sdam/rs/discover_secondary_replicaset.yml
2210
+ - spec/spec_tests/data/sdam/rs/primary_mismatched_me_not_removed.yml
2211
+ - spec/spec_tests/data/sdam/rs/setversion_without_electionid.yml
2212
+ - spec/spec_tests/data/sdam/rs/topology_version_equal.yml
2213
+ - spec/spec_tests/data/sdam/rs/topology_version_greater.yml
2214
+ - spec/spec_tests/data/sdam/rs/ruby_secondary_wrong_set_name_with_primary_second.yml
2215
+ - spec/spec_tests/data/sdam/rs/primary_changes_set_name.yml
2216
+ - spec/spec_tests/data/sdam/rs/new_primary.yml
2217
+ - spec/spec_tests/data/sdam/rs/new_primary_new_setversion.yml
2218
+ - spec/spec_tests/data/sdam/rs/repeated.yml
2219
+ - spec/spec_tests/data/sdam/rs/response_from_removed.yml
2220
+ - spec/spec_tests/data/sdam/rs/primary_hint_from_secondary_with_mismatched_me.yml
2221
+ - spec/spec_tests/data/sdam/rs/secondary_wrong_set_name_with_primary.yml
2222
+ - spec/spec_tests/data/sdam/rs/primary_disconnect_setversion.yml
2223
+ - spec/spec_tests/data/sdam/rs/primary_to_no_primary_mismatched_me.yml
2224
+ - spec/spec_tests/data/sdam/rs/secondary_mismatched_me.yml
2225
+ - spec/spec_tests/data/sdam/rs/ls_timeout.yml
2226
+ - spec/spec_tests/data/sdam/rs/normalize_case.yml
2227
+ - spec/spec_tests/data/sdam/rs/compatible_unknown.yml
2228
+ - spec/spec_tests/data/sdam/rs/incompatible_arbiter.yml
2229
+ - spec/spec_tests/data/sdam/rs/discover_rsother.yml
2230
+ - spec/spec_tests/data/sdam/rs/wrong_set_name.yml
2231
+ - spec/spec_tests/data/sdam/rs/hosts_differ_from_seeds.yml
2232
+ - spec/spec_tests/data/sdam/rs/too_old.yml
2233
+ - spec/spec_tests/data/sdam/rs/discover_passives_replicaset.yml
2234
+ - spec/spec_tests/data/sdam/rs/primary_mismatched_me.yml
2235
+ - spec/spec_tests/data/sdam/rs/use_setversion_without_electionid.yml
2236
+ - spec/spec_tests/data/sdam/rs/discover_ghost_replicaset.yml
2237
+ - spec/spec_tests/data/sdam/rs/compatible.yml
2238
+ - spec/spec_tests/data/sdam/rs/incompatible_ghost.yml
2239
+ - spec/spec_tests/data/sdam/rs/replicaset_rsnp.yml
2240
+ - spec/spec_tests/data/sdam/rs/discover_primary.yml
2241
+ - spec/spec_tests/data/sdam/rs/discover_arbiters.yml
2242
+ - spec/spec_tests/data/sdam/rs/member_reconfig.yml
2243
+ - spec/spec_tests/data/read_write_concern/connection-string/read-concern.yml
2244
+ - spec/spec_tests/data/read_write_concern/connection-string/write-concern.yml
2245
+ - spec/spec_tests/data/read_write_concern/document/read-concern.yml
2246
+ - spec/spec_tests/data/read_write_concern/document/write-concern.yml
2247
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-4.2.yml
2248
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.4.yml
2249
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-3.2.yml
2250
+ - spec/spec_tests/data/read_write_concern/operation/default-write-concern-2.6.yml
2251
+ - spec/spec_tests/data/retryable_writes/findOneAndDelete-serverErrors.yml
2252
+ - spec/spec_tests/data/retryable_writes/insertMany-serverErrors.yml
2253
+ - spec/spec_tests/data/retryable_writes/findOneAndUpdate.yml
2254
+ - spec/spec_tests/data/retryable_writes/insertMany-errorLabels.yml
2255
+ - spec/spec_tests/data/retryable_writes/updateOne-serverErrors.yml
2256
+ - spec/spec_tests/data/retryable_writes/replaceOne-serverErrors.yml
2068
2257
  - spec/spec_tests/data/retryable_writes/findOneAndUpdate-serverErrors.yml
2258
+ - spec/spec_tests/data/retryable_writes/findOneAndReplace-errorLabels.yml
2259
+ - spec/spec_tests/data/retryable_writes/insertOne-errorLabels.yml
2260
+ - spec/spec_tests/data/retryable_writes/deleteOne-errorLabels.yml
2069
2261
  - spec/spec_tests/data/retryable_writes/insertMany.yml
2262
+ - spec/spec_tests/data/retryable_writes/updateOne-errorLabels.yml
2070
2263
  - spec/spec_tests/data/retryable_writes/bulkWrite.yml
2071
- - spec/spec_tests/data/retryable_writes/insertMany-serverErrors.yml
2072
- - spec/spec_tests/data/retryable_writes/replaceOne.yml
2073
- - spec/spec_tests/data/retryable_writes/insertOne-serverErrors.yml
2074
- - spec/spec_tests/data/retryable_writes/insertOne.yml
2075
- - spec/spec_tests/data/retryable_writes/updateOne-serverErrors.yml
2076
- - spec/spec_tests/data/retryable_writes/findOneAndUpdate.yml
2077
- - spec/spec_tests/data/retryable_writes/bulkWrite-serverErrors.yml
2078
- - spec/spec_tests/data/retryable_writes/updateMany.yml
2079
- - spec/spec_tests/data/retryable_writes/findOneAndDelete-serverErrors.yml
2264
+ - spec/spec_tests/data/retryable_writes/findOneAndDelete.yml
2265
+ - spec/spec_tests/data/retryable_writes/findOneAndDelete-errorLabels.yml
2080
2266
  - spec/spec_tests/data/retryable_writes/findOneAndReplace.yml
2081
2267
  - spec/spec_tests/data/retryable_writes/deleteMany.yml
2082
- - spec/spec_tests/data/retryable_writes/replaceOne-serverErrors.yml
2083
- - spec/spec_tests/data/command_monitoring/unacknowledgedBulkWrite.yml
2084
- - spec/spec_tests/data/command_monitoring/deleteOne.yml
2085
- - spec/spec_tests/data/command_monitoring/updateOne.yml
2086
- - spec/spec_tests/data/command_monitoring/insertMany.yml
2268
+ - spec/spec_tests/data/retryable_writes/replaceOne-errorLabels.yml
2269
+ - spec/spec_tests/data/retryable_writes/updateMany.yml
2270
+ - spec/spec_tests/data/retryable_writes/deleteOne-serverErrors.yml
2271
+ - spec/spec_tests/data/retryable_writes/deleteOne.yml
2272
+ - spec/spec_tests/data/retryable_writes/insertOne.yml
2273
+ - spec/spec_tests/data/retryable_writes/bulkWrite-errorLabels.yml
2274
+ - spec/spec_tests/data/retryable_writes/findOneAndReplace-serverErrors.yml
2275
+ - spec/spec_tests/data/retryable_writes/insertOne-serverErrors.yml
2276
+ - spec/spec_tests/data/retryable_writes/replaceOne.yml
2277
+ - spec/spec_tests/data/retryable_writes/bulkWrite-serverErrors.yml
2278
+ - spec/spec_tests/data/retryable_writes/findOneAndUpdate-errorLabels.yml
2279
+ - spec/spec_tests/data/retryable_writes/updateOne.yml
2280
+ - spec/spec_tests/data/change_streams/change-streams-resume-whitelist.yml
2281
+ - spec/spec_tests/data/change_streams/change-streams-resume-errorLabels.yml
2282
+ - spec/spec_tests/data/change_streams/change-streams-errors.yml
2283
+ - spec/spec_tests/data/change_streams/change-streams.yml
2284
+ - spec/spec_tests/data/server_selection/Sharded/read/Nearest.yml
2285
+ - spec/spec_tests/data/server_selection/Sharded/read/SecondaryPreferred.yml
2286
+ - spec/spec_tests/data/server_selection/Sharded/read/Secondary.yml
2287
+ - spec/spec_tests/data/server_selection/Sharded/read/PrimaryPreferred.yml
2288
+ - spec/spec_tests/data/server_selection/Sharded/read/Primary.yml
2289
+ - spec/spec_tests/data/server_selection/Single/read/SecondaryPreferred.yml
2290
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.yml
2291
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest.yml
2292
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.yml
2293
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Secondary.yml
2294
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.yml
2295
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.yml
2296
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Primary.yml
2297
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.yml
2298
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.yml
2299
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.yml
2300
+ - spec/spec_tests/data/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.yml
2301
+ - spec/spec_tests/data/server_selection/Unknown/read/SecondaryPreferred.yml
2302
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.yml
2303
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest.yml
2304
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.yml
2305
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary.yml
2306
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.yml
2307
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.yml
2308
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.yml
2309
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Primary.yml
2310
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.yml
2311
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.yml
2312
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.yml
2313
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.yml
2314
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.yml
2315
+ - spec/spec_tests/data/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml
2316
+ - spec/spec_tests/data/crud_v2/updateOne-hint-serverError.yml
2317
+ - spec/spec_tests/data/crud_v2/updateMany-hint-clientError.yml
2318
+ - spec/spec_tests/data/crud_v2/findOneAndUpdate-hint-serverError.yml
2319
+ - spec/spec_tests/data/crud_v2/unacknowledged-deleteMany-hint-clientError.yml
2320
+ - spec/spec_tests/data/crud_v2/replaceOne-hint.yml
2321
+ - spec/spec_tests/data/crud_v2/unacknowledged-findOneAndDelete-hint-clientError.yml
2322
+ - spec/spec_tests/data/crud_v2/find-allowdiskuse-clientError.yml
2323
+ - spec/spec_tests/data/crud_v2/findOneAndDelete-hint-clientError.yml
2324
+ - spec/spec_tests/data/crud_v2/unacknowledged-findOneAndReplace-hint-clientError.yml
2325
+ - spec/spec_tests/data/crud_v2/bulkWrite-delete-hint-clientError.yml
2326
+ - spec/spec_tests/data/crud_v2/unacknowledged-deleteOne-hint-clientError.yml
2327
+ - spec/spec_tests/data/crud_v2/findOneAndUpdate-hint-clientError.yml
2328
+ - spec/spec_tests/data/crud_v2/deleteOne-hint-serverError.yml
2329
+ - spec/spec_tests/data/crud_v2/updateWithPipelines.yml
2330
+ - spec/spec_tests/data/crud_v2/aggregate-out-readConcern.yml
2331
+ - spec/spec_tests/data/crud_v2/find-allowdiskuse-serverError.yml
2332
+ - spec/spec_tests/data/crud_v2/deleteMany-hint-serverError.yml
2333
+ - spec/spec_tests/data/crud_v2/deleteOne-hint-clientError.yml
2334
+ - spec/spec_tests/data/crud_v2/findOneAndReplace-hint.yml
2335
+ - spec/spec_tests/data/crud_v2/findOneAndDelete-hint-serverError.yml
2336
+ - spec/spec_tests/data/crud_v2/deleteMany-hint-clientError.yml
2337
+ - spec/spec_tests/data/crud_v2/unacknowledged-findOneAndUpdate-hint-clientError.yml
2338
+ - spec/spec_tests/data/crud_v2/unacknowledged-replaceOne-hint-clientError.yml
2339
+ - spec/spec_tests/data/crud_v2/bulkWrite-update-hint.yml
2340
+ - spec/spec_tests/data/crud_v2/bulkWrite-delete-hint-serverError.yml
2341
+ - spec/spec_tests/data/crud_v2/findOneAndReplace-hint-serverError.yml
2342
+ - spec/spec_tests/data/crud_v2/bulkWrite-update-hint-clientError.yml
2343
+ - spec/spec_tests/data/crud_v2/bulkWrite-delete-hint.yml
2344
+ - spec/spec_tests/data/crud_v2/db-aggregate.yml
2345
+ - spec/spec_tests/data/crud_v2/findOneAndDelete-hint.yml
2346
+ - spec/spec_tests/data/crud_v2/unacknowledged-bulkWrite-delete-hint-clientError.yml
2347
+ - spec/spec_tests/data/crud_v2/updateOne-hint.yml
2348
+ - spec/spec_tests/data/crud_v2/deleteMany-hint.yml
2349
+ - spec/spec_tests/data/crud_v2/bulkWrite-update-hint-serverError.yml
2350
+ - spec/spec_tests/data/crud_v2/updateMany-hint-serverError.yml
2351
+ - spec/spec_tests/data/crud_v2/updateOne-hint-clientError.yml
2352
+ - spec/spec_tests/data/crud_v2/unacknowledged-updateMany-hint-clientError.yml
2353
+ - spec/spec_tests/data/crud_v2/find-allowdiskuse.yml
2354
+ - spec/spec_tests/data/crud_v2/unacknowledged-updateOne-hint-clientError.yml
2355
+ - spec/spec_tests/data/crud_v2/deleteOne-hint.yml
2356
+ - spec/spec_tests/data/crud_v2/updateMany-hint.yml
2357
+ - spec/spec_tests/data/crud_v2/unacknowledged-bulkWrite-update-hint-clientError.yml
2358
+ - spec/spec_tests/data/crud_v2/bulkWrite-arrayFilters.yml
2359
+ - spec/spec_tests/data/crud_v2/aggregate-merge.yml
2360
+ - spec/spec_tests/data/crud_v2/findOneAndReplace-hint-clientError.yml
2361
+ - spec/spec_tests/data/crud_v2/findOneAndUpdate-hint.yml
2362
+ - spec/spec_tests/data/server_selection_rtt/value_test_2.yml
2363
+ - spec/spec_tests/data/server_selection_rtt/first_value_zero.yml
2364
+ - spec/spec_tests/data/server_selection_rtt/first_value.yml
2365
+ - spec/spec_tests/data/server_selection_rtt/value_test_5.yml
2366
+ - spec/spec_tests/data/server_selection_rtt/value_test_1.yml
2367
+ - spec/spec_tests/data/server_selection_rtt/value_test_3.yml
2368
+ - spec/spec_tests/data/server_selection_rtt/value_test_4.yml
2087
2369
  - spec/spec_tests/data/command_monitoring/find.yml
2370
+ - spec/spec_tests/data/command_monitoring/insertMany.yml
2088
2371
  - spec/spec_tests/data/command_monitoring/bulkWrite.yml
2372
+ - spec/spec_tests/data/command_monitoring/unacknowledgedBulkWrite.yml
2373
+ - spec/spec_tests/data/command_monitoring/deleteMany.yml
2374
+ - spec/spec_tests/data/command_monitoring/updateMany.yml
2375
+ - spec/spec_tests/data/command_monitoring/deleteOne.yml
2089
2376
  - spec/spec_tests/data/command_monitoring/insertOne.yml
2090
2377
  - spec/spec_tests/data/command_monitoring/command.yml
2091
- - spec/spec_tests/data/command_monitoring/updateMany.yml
2092
- - spec/spec_tests/data/command_monitoring/deleteMany.yml
2093
- - spec/spec_tests/data/crud_v2/db-aggregate.yml
2094
- - spec/spec_tests/data/crud_v2/updateWithPipelines.yml
2095
- - spec/spec_tests/data/crud_v2/bulkWrite-arrayFilters.yml
2096
- - spec/spec_tests/data/crud_v2/aggregate-merge.yml
2097
- - spec/spec_tests/data/crud_v2/aggregate-out-readConcern.yml
2378
+ - spec/spec_tests/data/command_monitoring/updateOne.yml
2379
+ - spec/spec_tests/data/transactions/update.yml
2380
+ - spec/spec_tests/data/transactions/retryable-abort-errorLabels.yml
2381
+ - spec/spec_tests/data/transactions/transaction-options.yml
2382
+ - spec/spec_tests/data/transactions/findOneAndUpdate.yml
2383
+ - spec/spec_tests/data/transactions/create-index.yml
2384
+ - spec/spec_tests/data/transactions/mongos-pin-auto.yml
2385
+ - spec/spec_tests/data/transactions/create-collection.yml
2386
+ - spec/spec_tests/data/transactions/commit.yml
2387
+ - spec/spec_tests/data/transactions/isolation.yml
2388
+ - spec/spec_tests/data/transactions/abort.yml
2389
+ - spec/spec_tests/data/transactions/read-pref.yml
2390
+ - spec/spec_tests/data/transactions/causal-consistency.yml
2391
+ - spec/spec_tests/data/transactions/findOneAndDelete.yml
2392
+ - spec/spec_tests/data/transactions/retryable-commit-errorLabels.yml
2393
+ - spec/spec_tests/data/transactions/read-concern.yml
2394
+ - spec/spec_tests/data/transactions/transaction-options-repl.yml
2395
+ - spec/spec_tests/data/transactions/mongos-recovery-token.yml
2396
+ - spec/spec_tests/data/transactions/findOneAndReplace.yml
2397
+ - spec/spec_tests/data/transactions/write-concern.yml
2398
+ - spec/spec_tests/data/transactions/reads.yml
2399
+ - spec/spec_tests/data/transactions/pin-mongos.yml
2400
+ - spec/spec_tests/data/transactions/delete.yml
2401
+ - spec/spec_tests/data/transactions/retryable-commit.yml
2402
+ - spec/spec_tests/data/transactions/errors-client.yml
2403
+ - spec/spec_tests/data/transactions/error-labels.yml
2404
+ - spec/spec_tests/data/transactions/retryable-abort.yml
2405
+ - spec/spec_tests/data/transactions/errors.yml
2406
+ - spec/spec_tests/data/transactions/bulk.yml
2407
+ - spec/spec_tests/data/transactions/run-command.yml
2408
+ - spec/spec_tests/data/transactions/count.yml
2409
+ - spec/spec_tests/data/transactions/insert.yml
2410
+ - spec/spec_tests/data/transactions/retryable-writes.yml
2411
+ - spec/spec_tests/data/connection_string/valid-auth.yml
2412
+ - spec/spec_tests/data/connection_string/valid-db-with-dotted-name.yml
2413
+ - spec/spec_tests/data/connection_string/valid-warnings.yml
2414
+ - spec/spec_tests/data/connection_string/invalid-uris.yml
2415
+ - spec/spec_tests/data/connection_string/valid-options.yml
2416
+ - spec/spec_tests/data/connection_string/valid-host_identifiers.yml
2417
+ - spec/spec_tests/data/connection_string/valid-unix_socket-relative.yml
2418
+ - spec/spec_tests/data/connection_string/valid-unix_socket-absolute.yml
2419
+ - spec/spec_tests/sdam_integration_spec.rb
2420
+ - spec/spec_tests/change_streams_spec.rb
2421
+ - spec/spec_tests/retryable_writes_spec.rb
2422
+ - spec/spec_tests/max_staleness_spec.rb
2423
+ - spec/spec_tests/crud_spec.rb
2424
+ - spec/spec_tests/sdam_monitoring_spec.rb
2425
+ - spec/spec_tests/client_side_encryption_spec.rb
2098
2426
  - spec/spec_tests/auth_spec.rb
2099
- - spec/spec_tests/uri_options_spec.rb
2100
2427
  - spec/spec_tests/transactions_spec.rb
2428
+ - spec/spec_tests/read_write_concern_connection_string_spec.rb
2429
+ - spec/spec_tests/sdam_spec.rb
2430
+ - spec/spec_tests/connection_string_spec.rb
2431
+ - spec/spec_tests/read_write_concern_operaton_spec.rb
2432
+ - spec/README.md
2433
+ - spec/runners/connection_string.rb
2434
+ - spec/runners/crud.rb
2435
+ - spec/runners/transactions.rb
2436
+ - spec/runners/read_write_concern_document.rb
2437
+ - spec/runners/crud/outcome.rb
2438
+ - spec/runners/crud/test_base.rb
2439
+ - spec/runners/crud/spec.rb
2440
+ - spec/runners/crud/operation.rb
2441
+ - spec/runners/crud/requirement.rb
2442
+ - spec/runners/crud/test.rb
2443
+ - spec/runners/crud/context.rb
2444
+ - spec/runners/crud/verifier.rb
2445
+ - spec/runners/cmap/verifier.rb
2446
+ - spec/runners/command_monitoring.rb
2447
+ - spec/runners/sdam/verifier.rb
2448
+ - spec/runners/sdam.rb
2449
+ - spec/runners/change_streams/outcome.rb
2450
+ - spec/runners/change_streams/spec.rb
2451
+ - spec/runners/change_streams/test.rb
2452
+ - spec/runners/gridfs.rb
2453
+ - spec/runners/server_selection.rb
2454
+ - spec/runners/cmap.rb
2455
+ - spec/runners/auth.rb
2456
+ - spec/runners/transactions/spec.rb
2457
+ - spec/runners/transactions/operation.rb
2458
+ - spec/runners/transactions/test.rb
2459
+ - spec/runners/server_selection_rtt.rb
2460
+ - spec/NOTES.aws-auth.md
2461
+ - spec/README.aws-auth.md
2462
+ - spec/spec_helper.rb
2101
2463
  - spec/stress/connection_pool_timing_spec.rb
2464
+ - spec/stress/cleanup_spec.rb
2102
2465
  - spec/stress/connection_pool_stress_spec.rb
2466
+ - spec/stress/fork_reconnect_stress_spec.rb
2467
+ - spec/support/cluster_tools.rb
2468
+ - spec/support/aws_utils.rb
2469
+ - spec/support/authorization.rb
2470
+ - spec/support/spec_organizer.rb
2471
+ - spec/support/crypt/corpus/corpus-schema.json
2472
+ - spec/support/crypt/corpus/corpus_encrypted.json
2473
+ - spec/support/crypt/corpus/corpus-key-aws.json
2474
+ - spec/support/crypt/corpus/corpus-key-local.json
2475
+ - spec/support/crypt/corpus/corpus.json
2476
+ - spec/support/crypt/limits/limits-key.json
2477
+ - spec/support/crypt/limits/limits-schema.json
2478
+ - spec/support/crypt/limits/limits-doc.json
2479
+ - spec/support/crypt/schema_maps/schema_map_local_key_alt_names.json
2480
+ - spec/support/crypt/schema_maps/schema_map_aws.json
2481
+ - spec/support/crypt/schema_maps/schema_map_aws_key_alt_names.json
2482
+ - spec/support/crypt/schema_maps/schema_map_local.json
2483
+ - spec/support/crypt/data_keys/key_document_aws.json
2484
+ - spec/support/crypt/data_keys/key_document_local.json
2485
+ - spec/support/crypt/external/external-schema.json
2486
+ - spec/support/crypt/external/external-key.json
2487
+ - spec/support/constraints.rb
2488
+ - spec/support/primary_socket.rb
2489
+ - spec/support/cluster_config.rb
2490
+ - spec/support/certificates/server.pem
2491
+ - spec/support/certificates/client.key
2492
+ - spec/support/certificates/python-ca.crt
2493
+ - spec/support/certificates/client-second-level.key
2494
+ - spec/support/certificates/README.md
2495
+ - spec/support/certificates/server-second-level-bundle.pem
2496
+ - spec/support/certificates/client-second-level.crt
2497
+ - spec/support/certificates/client-second-level-bundle.pem
2498
+ - spec/support/certificates/client.pem
2499
+ - spec/support/certificates/server-second-level.key
2500
+ - spec/support/certificates/server-int.crt
2501
+ - spec/support/certificates/crl_client_revoked.pem
2502
+ - spec/support/certificates/client.crt
2503
+ - spec/support/certificates/client-x509.key
2504
+ - spec/support/certificates/client-second-level.pem
2505
+ - spec/support/certificates/client-int.crt
2506
+ - spec/support/certificates/server-second-level.pem
2507
+ - spec/support/certificates/client-x509.crt
2508
+ - spec/support/certificates/server-second-level.crt
2509
+ - spec/support/certificates/ca.crt
2510
+ - spec/support/certificates/crl.pem
2511
+ - spec/support/certificates/client-encrypted.key
2512
+ - spec/support/certificates/client-x509.pem
2513
+ - spec/support/certificates/multi-ca.crt
2514
+ - spec/support/keyword_struct.rb
2515
+ - spec/support/client_registry_macros.rb
2516
+ - spec/support/sdam_formatter_integration.rb
2517
+ - spec/support/background_thread_registry.rb
2518
+ - spec/support/local_resource_registry.rb
2519
+ - spec/support/shared/server_selector.rb
2520
+ - spec/support/shared/protocol.rb
2521
+ - spec/support/shared/scram_conversation.rb
2522
+ - spec/support/shared/session.rb
2523
+ - spec/support/spec_setup.rb
2524
+ - spec/support/spec_config.rb
2525
+ - spec/support/crypt.rb
2526
+ - spec/support/matchers.rb
2527
+ - spec/support/json_ext_formatter.rb
2528
+ - spec/support/dns.rb
2529
+ - spec/support/aws_utils/provisioner.rb
2530
+ - spec/support/aws_utils/orchestrator.rb
2531
+ - spec/support/aws_utils/inspector.rb
2532
+ - spec/support/aws_utils/base.rb
2533
+ - spec/support/monitoring_ext.rb
2534
+ - spec/support/lite_constraints.rb
2535
+ - spec/support/event_subscriber.rb
2536
+ - spec/support/common_shortcuts.rb
2537
+ - spec/support/child_process_helper.rb
2538
+ - spec/support/client_registry.rb
2539
+ - spec/support/utils.rb
2540
+ - spec/USERS.md
2541
+ - spec/atlas/atlas_connectivity_spec.rb
2542
+ - spec/atlas/operations_spec.rb
2543
+ - spec/lite_spec_helper.rb