7373import static com .mongodb .ClusterFixture .getServerVersion ;
7474import static com .mongodb .client .Fixture .getMongoClient ;
7575import static com .mongodb .client .Fixture .getMongoClientSettings ;
76+ import static com .mongodb .client .test .CollectionHelper .getCurrentClusterTime ;
7677import static com .mongodb .client .unified .RunOnRequirementsMatcher .runOnRequirementsMet ;
7778import static java .util .Collections .singletonList ;
7879import static java .util .stream .Collectors .toList ;
@@ -105,6 +106,7 @@ public abstract class UnifiedTest {
105106 private final UnifiedClientEncryptionHelper clientEncryptionHelper = new UnifiedClientEncryptionHelper (entities );
106107 private final List <FailPoint > failPoints = new ArrayList <>();
107108 private final UnifiedTestContext rootContext = new UnifiedTestContext ();
109+ private BsonDocument startingClusterTime ;
108110
109111 private class UnifiedTestContext {
110112 private final AssertionContext context = new AssertionContext ();
@@ -212,12 +214,12 @@ public void setUp() {
212214 if (definition .containsKey ("skipReason" )) {
213215 throw new AssumptionViolatedException (definition .getString ("skipReason" ).getValue ());
214216 }
215- entities .init (entitiesArray ,
217+ startingClusterTime = addInitialData ();
218+ entities .init (entitiesArray , startingClusterTime ,
216219 fileDescription != null && PRESTART_POOL_ASYNC_WORK_MANAGER_FILE_DESCRIPTIONS .contains (fileDescription ),
217220 this ::createMongoClient ,
218221 this ::createGridFSBucket ,
219222 this ::createClientEncryption );
220- addInitialData ();
221223 }
222224
223225 @ After
@@ -561,6 +563,7 @@ protected boolean terminateLoop() {
561563
562564 private OperationResult executeCreateEntities (final BsonDocument operation ) {
563565 entities .init (operation .getDocument ("arguments" ).getArray ("entities" ),
566+ startingClusterTime ,
564567 false ,
565568 this ::createMongoClient ,
566569 this ::createGridFSBucket ,
@@ -890,7 +893,7 @@ private List<CommandEvent> lastTwoCommandEvents(final TestCommandListener listen
890893 return events .subList (events .size () - 2 , events .size ());
891894 }
892895
893- private void addInitialData () {
896+ private BsonDocument addInitialData () {
894897 for (BsonValue cur : initialData .getValues ()) {
895898 BsonDocument curDataSet = cur .asDocument ();
896899 CollectionHelper <BsonDocument > helper = new CollectionHelper <>(new BsonDocumentCodec (),
@@ -905,5 +908,6 @@ private void addInitialData() {
905908 WriteConcern .MAJORITY );
906909 }
907910 }
911+ return getCurrentClusterTime ();
908912 }
909913}
0 commit comments