@@ -838,6 +838,48 @@ - (void)testSwiftFlagWithNoSwift {
838
838
XCTAssertTrue ([[FIRApp firebaseUserAgent ] containsString: @" swift/false" ]);
839
839
}
840
840
841
+ - (void )testApplePlatformFlag {
842
+ // When a Catalyst app is run on macOS then both `TARGET_OS_MACCATALYST` and `TARGET_OS_IOS` are
843
+ // `true`.
844
+ #if TARGET_OS_MACCATALYST
845
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/ios" ]);
846
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/tvos" ]);
847
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/macos" ]);
848
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/watchos" ]);
849
+ XCTAssertTrue ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/maccatalyst" ]);
850
+ #elif TARGET_OS_IOS
851
+ XCTAssertTrue ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/ios" ]);
852
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/tvos" ]);
853
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/macos" ]);
854
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/watchos" ]);
855
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/maccatalyst" ]);
856
+ #endif // TARGET_OS_MACCATALYST
857
+
858
+ #if TARGET_OS_TV
859
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/ios" ]);
860
+ XCTAssertTrue ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/tvos" ]);
861
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/macos" ]);
862
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/watchos" ]);
863
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/maccatalyst" ]);
864
+ #endif // TARGET_OS_TV
865
+
866
+ #if TARGET_OS_OSX
867
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/ios" ]);
868
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/tvos" ]);
869
+ XCTAssertTrue ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/macos" ]);
870
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/watchos" ]);
871
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/maccatalyst" ]);
872
+ #endif // TARGET_OS_OSX
873
+
874
+ #if TARGET_OS_WATCH
875
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/ios" ]);
876
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/tvos" ]);
877
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/macos" ]);
878
+ XCTAssertTrue ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/watchos" ]);
879
+ XCTAssertFalse ([[FIRApp firebaseUserAgent ] containsString: @" apple-platform/maccatalyst" ]);
880
+ #endif // TARGET_OS_WATCH
881
+ }
882
+
841
883
#pragma mark - Core Diagnostics
842
884
843
885
- (void )testCoreDiagnosticsLoggedWhenFIRAppIsConfigured {
0 commit comments