@@ -15,35 +15,26 @@ @interface BranchLoggerTests : XCTestCase
1515
1616@implementation BranchLoggerTests
1717
18- - (void )setUp {
19- [super setUp ];
20- [BranchLogger shared ].loggingEnabled = NO ;
21- [BranchLogger shared ].logCallback = nil ;
22- }
23-
24- - (void )tearDown {
25- [BranchLogger shared ].loggingEnabled = NO ;
26- [BranchLogger shared ].logCallback = nil ;
27- [super tearDown ];
28- }
29-
3018- (void )testEnableLoggingSetsCorrectDefaultLevel {
3119 [[Branch getInstance ] enableLogging ];
3220 XCTAssertEqual ([BranchLogger shared ].logLevelThreshold , BranchLogLevelDebug, " Default log level should be Debug." );
3321}
3422
3523- (void )testLogLevelThresholdBlocksLowerLevels {
36- [[Branch getInstance ] enableLoggingAtLevel: BranchLogLevelDebug];
24+ BranchLogger *logger = [BranchLogger new ];
25+ logger.loggingEnabled = true ;
26+ logger.logLevelThreshold = BranchLogLevelDebug;
27+
3728 XCTestExpectation *expectation = [self expectationWithDescription: @" Log callback expectation for message that should pass the threshold" ];
3829
39- [BranchLogger shared ] .logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
30+ logger .logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
4031 if ([message isEqualToString: @" [BranchSDK][Debug][BranchLoggerTests testLogLevelThresholdBlocksLowerLevels] This message should trigger the log callback." ] && logLevel >= BranchLogLevelDebug) {
4132 [expectation fulfill ];
4233 }
4334 };
4435
45- [[BranchLogger shared ] logVerbose: @" This verbose message should not trigger the log callback." ];
46- [[BranchLogger shared ] logDebug: @" This message should trigger the log callback." ];
36+ [logger logVerbose: @" This verbose message should not trigger the log callback." ];
37+ [logger logDebug: @" This message should trigger the log callback." ];
4738
4839 [self waitForExpectationsWithTimeout: 1 handler: nil ];
4940}
@@ -53,28 +44,33 @@ - (void)testLogCallbackExecutesWithCorrectParameters {
5344 NSString *expectedMessage = @" [BranchSDK][Info][BranchLoggerTests testLogCallbackExecutesWithCorrectParameters] Test message" ;
5445 BranchLogLevel expectedLevel = BranchLogLevelInfo;
5546
56- [BranchLogger shared ].logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
47+ BranchLogger *logger = [BranchLogger new ];
48+
49+ logger.logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
5750 XCTAssertEqualObjects (message, expectedMessage, " Logged message does not match expected message." );
5851 XCTAssertEqual (logLevel, expectedLevel, " Logged level does not match expected level." );
5952 XCTAssertNil (error, " Error should be nil." );
6053 [expectation fulfill ];
6154 };
62-
63- [[Branch getInstance ] enableLoggingAtLevel: BranchLogLevelInfo];
64- [[BranchLogger shared ] logInfo: @" Test message" ];
55+
56+ logger.loggingEnabled = YES ;
57+ logger.logLevelThreshold = BranchLogLevelInfo;
58+ [logger logInfo: @" Test message" ];
6559
6660 [self waitForExpectationsWithTimeout: 1 handler: nil ];
6761}
6862
6963- (void )testLogLevelSpecificityFiltersLowerLevels {
70- [[Branch getInstance ] enableLoggingAtLevel: BranchLogLevelWarning];
64+ BranchLogger *logger = [BranchLogger new ];
65+ logger.loggingEnabled = YES ;
66+ logger.logLevelThreshold = BranchLogLevelWarning;
7167
7268 XCTestExpectation *verboseExpectation = [self expectationWithDescription: @" Verbose log callback" ];
7369 verboseExpectation.inverted = YES ;
7470 XCTestExpectation *errorExpectation = [self expectationWithDescription: @" Error log callback" ];
7571
7672 __block NSUInteger callbackCount = 0 ;
77- [BranchLogger shared ] .logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
73+ logger .logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
7874 if (logLevel == BranchLogLevelVerbose) {
7975 [verboseExpectation fulfill ];
8076 } else if (logLevel == BranchLogLevelError) {
@@ -83,28 +79,29 @@ - (void)testLogLevelSpecificityFiltersLowerLevels {
8379 callbackCount++;
8480 };
8581
86- [[BranchLogger shared ] logVerbose: @" This should not be logged due to log level threshold." ];
87- [[BranchLogger shared ] logError: @" This should be logged" error: nil ];
82+ [logger logVerbose: @" This should not be logged due to log level threshold." ];
83+ [logger logError: @" This should be logged" error: nil ];
8884
8985 [self waitForExpectations: @[verboseExpectation, errorExpectation] timeout: 2 ];
9086 XCTAssertEqual (callbackCount, 1 , " Only one log callback should have been invoked." );
9187}
9288
9389- (void )testErrorLoggingIncludesErrorDetails {
94- [[Branch getInstance ] enableLogging ];
90+ BranchLogger *logger = [BranchLogger new ];
91+ logger.loggingEnabled = YES ;
92+
9593 XCTestExpectation *expectation = [self expectationWithDescription: @" Error log includes error details" ];
9694
9795 NSError *testError = [NSError errorWithDomain: @" TestDomain" code: 42 userInfo: @{NSLocalizedDescriptionKey : @" Test error description" }];
98- [BranchLogger shared ] .logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
96+ logger .logCallback = ^(NSString * _Nonnull message, BranchLogLevel logLevel, NSError * _Nullable error) {
9997 if ([message containsString: @" Test error description" ] && error == testError) {
10098 [expectation fulfill ];
10199 }
102100 };
103101
104- [[BranchLogger shared ] logError: @" Testing error logging" error: testError];
102+ [logger logError: @" Testing error logging" error: testError];
105103
106104 [self waitForExpectationsWithTimeout: 1 handler: nil ];
107105}
108106
109-
110107@end
0 commit comments