@@ -358,10 +358,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
358358 /// Prose test 1 of change stream spec.
359359 /// "ChangeStream must continuously track the last seen resumeToken"
360360 func testChangeStreamTracksResumeToken( ) throws {
361- let testRequirements = TestRequirement (
362- acceptableTopologies: [ . replicaSet, . sharded]
363- )
364- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
361+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
365362 guard unmetRequirement == nil else {
366363 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
367364 return
@@ -396,11 +393,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
396393 * is < 8, this is a driver-side error; for 8+, this is a server-side error).
397394 */
398395 func testChangeStreamMissingId( ) throws {
399- let testRequirements = TestRequirement (
400- acceptableTopologies: [ . replicaSet, . sharded, . shardedReplicaSet]
401- )
402-
403- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
396+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
404397 guard unmetRequirement == nil else {
405398 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
406399 return
@@ -436,7 +429,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
436429 let testRequirements = TestRequirement (
437430 // TODO: SWIFT-1257: remove server version requirement
438431 maxServerVersion: ServerVersion ( major: 4 , minor: 9 , patch: 0 ) ,
439- acceptableTopologies: [ . replicaSet, . sharded]
432+ acceptableTopologies: [ . replicaSet, . sharded, . shardedReplicaSet , . loadBalanced ]
440433 )
441434
442435 let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
@@ -506,11 +499,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
506499 * ChangeStream will not attempt to resume on any error encountered while executing an aggregate command.
507500 */
508501 func testChangeStreamFailedAggregate( ) throws {
509- let testRequirements = TestRequirement (
510- acceptableTopologies: [ . replicaSet, . sharded]
511- )
512-
513- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
502+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
514503 guard unmetRequirement == nil else {
515504 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
516505 return
@@ -562,11 +551,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
562551 * closed on the driver side.
563552 */
564553 func testChangeStreamDoesntCloseOnEmptyBatch( ) throws {
565- let testRequirements = TestRequirement (
566- acceptableTopologies: [ . replicaSet, . sharded]
567- )
568-
569- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
554+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
570555 guard unmetRequirement == nil else {
571556 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
572557 return
@@ -594,11 +579,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
594579 * part of our evergreen matrix.
595580 */
596581 func testChangeStreamFailedKillCursors( ) throws {
597- let testRequirements = TestRequirement (
598- acceptableTopologies: [ . replicaSet, . sharded]
599- )
600-
601- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
582+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
602583 guard unmetRequirement == nil else {
603584 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
604585 return
@@ -655,11 +636,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
655636 * - If resumeAfter was not specified, the getResumeToken result must be empty.
656637 */
657638 func testChangeStreamResumeTokenUpdatesEmptyBatch( ) throws {
658- let testRequirements = TestRequirement (
659- acceptableTopologies: [ . replicaSet, . sharded]
660- )
661-
662- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
639+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
663640 guard unmetRequirement == nil else {
664641 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
665642 return
@@ -700,11 +677,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
700677 * - getResumeToken must return the _id of the previous document returned.
701678 */
702679 func testChangeStreamResumeTokenUpdatesNonemptyBatch( ) throws {
703- let testRequirements = TestRequirement (
704- acceptableTopologies: [ . replicaSet, . sharded]
705- )
706-
707- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( testRequirements)
680+ let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement ( . changeStreamOnCollectionSupport)
708681 guard unmetRequirement == nil else {
709682 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
710683 return
@@ -735,7 +708,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
735708 let client = try MongoClient . makeTestClient ( )
736709 let testRequirements = TestRequirement (
737710 minServerVersion: ServerVersion ( major: 4 , minor: 0 ) ,
738- acceptableTopologies: [ . replicaSet, . sharded]
711+ acceptableTopologies: [ . replicaSet, . sharded, . shardedReplicaSet , . loadBalanced ]
739712 )
740713
741714 let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
@@ -791,7 +764,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
791764 let client = try MongoClient . makeTestClient ( )
792765 let testRequirements = TestRequirement (
793766 minServerVersion: ServerVersion ( major: 4 , minor: 0 ) ,
794- acceptableTopologies: [ . replicaSet, . sharded]
767+ acceptableTopologies: [ . replicaSet, . sharded, . shardedReplicaSet , . loadBalanced ]
795768 )
796769
797770 let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
@@ -832,11 +805,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
832805
833806 func testChangeStreamOnACollection( ) throws {
834807 let client = try MongoClient . makeTestClient ( )
835- let testRequirements = TestRequirement (
836- acceptableTopologies: [ . replicaSet, . sharded]
837- )
838-
839- let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
808+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnCollectionSupport)
840809 guard unmetRequirement == nil else {
841810 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
842811 return
@@ -882,11 +851,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
882851
883852 func testChangeStreamWithPipeline( ) throws {
884853 let client = try MongoClient . makeTestClient ( )
885- let testRequirements = TestRequirement (
886- acceptableTopologies: [ . replicaSet, . sharded]
887- )
888-
889- let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
854+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnCollectionSupport)
890855 guard unmetRequirement == nil else {
891856 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
892857 return
@@ -915,11 +880,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
915880
916881 func testChangeStreamResumeToken( ) throws {
917882 let client = try MongoClient . makeTestClient ( )
918- let testRequirements = TestRequirement (
919- acceptableTopologies: [ . replicaSet, . sharded]
920- )
921-
922- let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
883+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnCollectionSupport)
923884 guard unmetRequirement == nil else {
924885 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
925886 return
@@ -994,11 +955,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
994955
995956 func testChangeStreamWithEventType( ) throws {
996957 let client = try MongoClient . makeTestClient ( )
997- let testRequirements = TestRequirement (
998- acceptableTopologies: [ . replicaSet, . sharded]
999- )
1000-
1001- let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
958+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnCollectionSupport)
1002959 guard unmetRequirement == nil else {
1003960 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
1004961 return
@@ -1046,11 +1003,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
10461003 let expectedDoc1 = MyFullDocumentType ( id: 1 , x: 1 , y: 2 )
10471004
10481005 let client = try MongoClient . makeTestClient ( )
1049- let testRequirements = TestRequirement (
1050- acceptableTopologies: [ . replicaSet, . sharded]
1051- )
1052-
1053- let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
1006+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnCollectionSupport)
10541007 guard unmetRequirement == nil else {
10551008 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
10561009 return
@@ -1095,11 +1048,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
10951048
10961049 func testChangeStreamOnACollectionWithCodableType( ) throws {
10971050 let client = try MongoClient . makeTestClient ( )
1098- let testRequirements = TestRequirement (
1099- acceptableTopologies: [ . replicaSet, . sharded]
1100- )
1101-
1102- let unmetRequirement = try client. getUnmetRequirement ( testRequirements)
1051+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnCollectionSupport)
11031052 guard unmetRequirement == nil else {
11041053 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
11051054 return
@@ -1165,9 +1114,9 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
11651114 func testDecodingInvalidateEventsOnCollection( ) throws {
11661115 // invalidated change stream on a collection
11671116 try self . withTestNamespace { client, _, collection in
1168- let unmetRequirement = try MongoClient . makeTestClient ( ) . getUnmetRequirement (
1169- TestRequirement ( acceptableTopologies : [ . replicaSet , . sharded ] )
1170- )
1117+ let unmetRequirement = try MongoClient
1118+ . makeTestClient ( )
1119+ . getUnmetRequirement ( . changeStreamOnCollectionSupport )
11711120 guard unmetRequirement == nil else {
11721121 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
11731122 return
@@ -1202,12 +1151,7 @@ final class SyncChangeStreamTests: MongoSwiftTestCase {
12021151 // invalidated change stream on a DB
12031152 try self . withTestNamespace { client, db, collection in
12041153 // DB change streams are supported as of 4.0
1205- let unmetRequirement = try client. getUnmetRequirement (
1206- TestRequirement (
1207- minServerVersion: ServerVersion ( major: 4 , minor: 0 ) ,
1208- acceptableTopologies: [ . replicaSet, . sharded]
1209- )
1210- )
1154+ let unmetRequirement = try client. getUnmetRequirement ( . changeStreamOnDBOrClientSupport)
12111155 guard unmetRequirement == nil else {
12121156 printSkipMessage ( testName: self . name, unmetRequirement: unmetRequirement!)
12131157 return
0 commit comments