TOOLS-4278 Convert mongorestore oplog tests to testify - #1080
Draft
autarch wants to merge 1 commit into
Draft
Conversation
oplog_test.go is large but shallow: 30 Convey blocks all at depth 1, so there is no re-execution hazard here. The two nested blocks have outer bodies containing no assertions, which is why every function's static So count equals its runtime count. Five functions flatten with no subtest, the six sibling blocks in TestOplogRestoreUpdatesIndexCatalog become six subtests, and the two parsing suites collapse into tables. The 15 direct t.Fatal/t.Errorf sites become require/assert. Assertion sites go from 145 to 125. The whole reduction is those two table collapses; the other ten functions are unchanged site for site, and both collapsed functions run the same number of assertions as before (16 and 9). Three weaknesses are preserved rather than fixed: two functions assert inside an `if name == ...` guard, so they pass vacuously if the index never appears, and TestOplogRestoreTools2002 discards its session without disconnecting. All recorded for follow-up. No behavior change.
This was referenced Aug 6, 2026
Collaborator
Author
This was referenced Aug 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

oplog_test.go is large but shallow: 30 Convey blocks all at depth 1, so
there is no re-execution hazard here. The two nested blocks have outer
bodies containing no assertions, which is why every function's static So
count equals its runtime count.
Five functions flatten with no subtest, the six sibling blocks in
TestOplogRestoreUpdatesIndexCatalog become six subtests, and the two
parsing suites collapse into tables. The 15 direct t.Fatal/t.Errorf sites
become require/assert.
Assertion sites go from 145 to 125. The whole reduction is those two
table collapses; the other ten functions are unchanged site for site, and
both collapsed functions run the same number of assertions as before
(16 and 9).
Three weaknesses are preserved rather than fixed: two functions assert
inside an
if name == ...guard, so they pass vacuously if the indexnever appears, and TestOplogRestoreTools2002 discards its session without
disconnecting. All recorded for follow-up.
No behavior change.