mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-13 13:50:40 +01:00

According to the Google Objective-C style [1], category names should start with an appropriate prefix. WebRTC has some category definitions for system interfaces, but it doesn't use prefixes. $ otool -ov WebRTC.framework/WebRTC | grep -E "^[0-9a-z]{16} 0x[0-9a-z]+ __OBJC_._CATEGORY" | grep -v "_RTC" 0000000002160840 0x217c3c0 __OBJC_$_CATEGORY_UIDevice_$_H264Profile 0000000002160850 0x21808b8 __OBJC_$_CATEGORY_AVCaptureSession_$_DevicePosition 0000000002160858 0x2180968 __OBJC_$_CATEGORY_NSString_$_StdString 0000000002160860 0x21809c8 __OBJC_$_CATEGORY_NSString_$_AbslStringView To avoid conflicts, prefix the names and methods of those categories. Also remove sdk/objc/Framework/Classes/Common/NSString+StdString.h as it is not used by any other files. [1] https://google.github.io/styleguide/objcguide.html#category-naming Bug: webrtc:13884 Change-Id: I2cf2742af198ab4e0bfb15c0476d72971e50ceee Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/262341 Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Reviewed-by: Kári Helgason <kthelgason@webrtc.org> Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com> Reviewed-by: Artem Titov <titovartem@webrtc.org> Cr-Commit-Position: refs/heads/main@{#36880}
60 lines
2 KiB
Text
60 lines
2 KiB
Text
/*
|
|
* Copyright 2015 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#import <Foundation/Foundation.h>
|
|
#import <XCTest/XCTest.h>
|
|
|
|
#include <memory>
|
|
|
|
#include "rtc_base/gunit.h"
|
|
|
|
#import "api/peerconnection/RTCIceCandidate+Private.h"
|
|
#import "api/peerconnection/RTCIceCandidate.h"
|
|
#import "helpers/NSString+RTCStdString.h"
|
|
|
|
@interface RTCIceCandidateTest : XCTestCase
|
|
@end
|
|
|
|
@implementation RTCIceCandidateTest
|
|
|
|
- (void)testCandidate {
|
|
NSString *sdp = @"candidate:4025901590 1 udp 2122265343 "
|
|
"fdff:2642:12a6:fe38:c001:beda:fcf9:51aa "
|
|
"59052 typ host generation 0";
|
|
|
|
RTC_OBJC_TYPE(RTCIceCandidate) *candidate =
|
|
[[RTC_OBJC_TYPE(RTCIceCandidate) alloc] initWithSdp:sdp sdpMLineIndex:0 sdpMid:@"audio"];
|
|
|
|
std::unique_ptr<webrtc::IceCandidateInterface> nativeCandidate =
|
|
candidate.nativeCandidate;
|
|
EXPECT_EQ("audio", nativeCandidate->sdp_mid());
|
|
EXPECT_EQ(0, nativeCandidate->sdp_mline_index());
|
|
|
|
std::string sdpString;
|
|
nativeCandidate->ToString(&sdpString);
|
|
EXPECT_EQ(sdp.stdString, sdpString);
|
|
}
|
|
|
|
- (void)testInitFromNativeCandidate {
|
|
std::string sdp("candidate:4025901590 1 udp 2122265343 "
|
|
"fdff:2642:12a6:fe38:c001:beda:fcf9:51aa "
|
|
"59052 typ host generation 0");
|
|
webrtc::IceCandidateInterface *nativeCandidate =
|
|
webrtc::CreateIceCandidate("audio", 0, sdp, nullptr);
|
|
|
|
RTC_OBJC_TYPE(RTCIceCandidate) *iceCandidate =
|
|
[[RTC_OBJC_TYPE(RTCIceCandidate) alloc] initWithNativeCandidate:nativeCandidate];
|
|
EXPECT_TRUE([@"audio" isEqualToString:iceCandidate.sdpMid]);
|
|
EXPECT_EQ(0, iceCandidate.sdpMLineIndex);
|
|
|
|
EXPECT_EQ(sdp, iceCandidate.sdp.stdString);
|
|
}
|
|
|
|
@end
|