diff --git a/sdk/objc/api/logging/RTCCallbackLogger.mm b/sdk/objc/api/logging/RTCCallbackLogger.mm index 8440d63791..da60c2b9d2 100644 --- a/sdk/objc/api/logging/RTCCallbackLogger.mm +++ b/sdk/objc/api/logging/RTCCallbackLogger.mm @@ -86,6 +86,8 @@ class CallbackLogSink : public rtc::LogSink { return rtc::LS_WARNING; case RTCLoggingSeverityError: return rtc::LS_ERROR; + case RTCLoggingSeverityNone: + return rtc::LS_NONE; } } diff --git a/sdk/objc/base/RTCLogging.h b/sdk/objc/base/RTCLogging.h index be62db25b5..754945c8f2 100644 --- a/sdk/objc/base/RTCLogging.h +++ b/sdk/objc/base/RTCLogging.h @@ -18,6 +18,7 @@ typedef NS_ENUM(NSInteger, RTCLoggingSeverity) { RTCLoggingSeverityInfo, RTCLoggingSeverityWarning, RTCLoggingSeverityError, + RTCLoggingSeverityNone, }; // Wrapper for C++ RTC_LOG(sev) macros. diff --git a/sdk/objc/base/RTCLogging.mm b/sdk/objc/base/RTCLogging.mm index 5c8f9fb4f8..e8dae02efb 100644 --- a/sdk/objc/base/RTCLogging.mm +++ b/sdk/objc/base/RTCLogging.mm @@ -22,6 +22,8 @@ rtc::LoggingSeverity RTCGetNativeLoggingSeverity(RTCLoggingSeverity severity) { return rtc::LS_WARNING; case RTCLoggingSeverityError: return rtc::LS_ERROR; + case RTCLoggingSeverityNone: + return rtc::LS_NONE; } } diff --git a/sdk/objc/unittests/RTCCallbackLogger_xctest.m b/sdk/objc/unittests/RTCCallbackLogger_xctest.m index 4a0a2b3e6d..fbebb99ad7 100644 --- a/sdk/objc/unittests/RTCCallbackLogger_xctest.m +++ b/sdk/objc/unittests/RTCCallbackLogger_xctest.m @@ -66,6 +66,25 @@ [self waitForExpectations:@[ callbackExpectation ] timeout:10.0]; } +- (void)testCallbackDoesNotgetCalledForSeverityNone { + self.logger.severity = RTCLoggingSeverityNone; + + XCTestExpectation *callbackExpectation = [self expectationWithDescription:@"unexpectedCallback"]; + + [self.logger start:^(NSString *message) { + [callbackExpectation fulfill]; + XCTAssertTrue(false); + }]; + + RTCLogInfo("Just some info"); + RTCLogWarning("Warning warning"); + RTCLogError("Horrible error"); + + XCTWaiter *waiter = [[XCTWaiter alloc] init]; + XCTWaiterResult result = [waiter waitForExpectations:@[ callbackExpectation ] timeout:1.0]; + XCTAssertEqual(result, XCTWaiterResultTimedOut); +} + - (void)testStartingWithNilCallbackDoesNotCrash { [self.logger start:nil];