Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
jyemin committed Mar 21, 2024
1 parent 87a1a2e commit 78942c1
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,16 @@
import java.util.Collection;

import static com.mongodb.client.unified.UnifiedRetryableReadsTest.customSkips;
import static org.junit.Assume.assumeFalse;

public class UnifiedRetryableReadsTest extends UnifiedReactiveStreamsTest {
public UnifiedRetryableReadsTest(final String fileDescription, final String testDescription, final String schemaVersion,
final BsonArray runOnRequirements, final BsonArray entitiesArray, final BsonArray initialData, final BsonDocument definition) {
super(schemaVersion, runOnRequirements, entitiesArray, initialData, definition);
customSkips(fileDescription, testDescription);
assumeFalse(testDescription.contains("createChangeStream succeeds after retryable handshake"));
// The reactive driver will execute extra getMore commands for change streams. Ignore them.
if (fileDescription.startsWith("changeStreams") || testDescription.contains("ChangeStream")) {
ignoreExtraEvents();
}
}

@Parameterized.Parameters(name = "{0}: {1}")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ public abstract class UnifiedTest {
private final UnifiedClientEncryptionHelper clientEncryptionHelper = new UnifiedClientEncryptionHelper(entities);
private final List<FailPoint> failPoints = new ArrayList<>();
private final UnifiedTestContext rootContext = new UnifiedTestContext();
private boolean ignoreExtraEvents;
private BsonDocument startingClusterTime;

private class UnifiedTestContext {
Expand Down Expand Up @@ -151,6 +152,10 @@ public UnifiedTest(@Nullable final String fileDescription, final String schemaVe
crudHelper = new UnifiedCrudHelper(entities, definition.getString("description").getValue());
}

protected void ignoreExtraEvents() {
ignoreExtraEvents = true;
}

public Entities getEntities() {
return entities;
}
Expand Down Expand Up @@ -277,7 +282,8 @@ private void compareEvents(final UnifiedTestContext context, final BsonDocument
for (BsonValue cur : definition.getArray("expectEvents")) {
BsonDocument curClientEvents = cur.asDocument();
String client = curClientEvents.getString("client").getValue();
boolean ignoreExtraEvents = curClientEvents.getBoolean("ignoreExtraEvents", BsonBoolean.FALSE).getValue();
boolean ignoreExtraEvents =
curClientEvents.getBoolean("ignoreExtraEvents", BsonBoolean.valueOf(this.ignoreExtraEvents)).getValue();
String eventType = curClientEvents.getString("eventType", new BsonString("command")).getValue();
BsonArray expectedEvents = curClientEvents.getArray("events");
if (eventType.equals("command")) {
Expand Down

0 comments on commit 78942c1

Please sign in to comment.