[GODRIVER-2257] Run CMAP spec integration tests in the "mongo/integration" package Created: 15/Dec/21  Updated: 28/Nov/22

Status: Backlog
Project: Go Driver
Component/s: Testing
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Unknown
Reporter: Matt Dale Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to GODRIVER-1826 Rate limit new connection creations (... Closed

 Description   

Some CMAP spec tests are integration tests that require connecting to an actual server and managing server failpoints. The CMAP spec tests currently rely on unexported functions and types in the x/mongo/driver/topology package. However, managing server failpoints requires using a mongo.Client, which can't be imported from the x/mongo/driver/topology package because it creates an import cycle.

Make a new CMAP spec integration test runner in the mongo/integration (or similar) package that can run the CMAP spec integration tests and also manage server failpoints.

Definition of done:

  • Create a CMAP spec integration test runner that can manage server failpoints.
  • Refactor the CMAP spec test runner to reduce code duplication between the x/mongo/driver/topology and mongo/integration packages.
  • Remove any prose-style tests that were added to cover CMAP spec integration test cases.
  • Remove the integration test skip from the CMAP spec test runner in x/mongo/driver/topology.

Generated at Thu Feb 08 08:38:11 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.