Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6283)

Unified Diff: chrome/browser/local_discovery/service_discovery_client_mac_unittest.mm

Issue 1436373002: Fixed OSX crash in net::URLFetcherCore::URLFetcherCore (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@context5
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/local_discovery/service_discovery_client_mac.mm ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/local_discovery/service_discovery_client_mac_unittest.mm
diff --git a/chrome/browser/local_discovery/service_discovery_client_mac_unittest.mm b/chrome/browser/local_discovery/service_discovery_client_mac_unittest.mm
index 09c0451ff5f14c72021dc7524864f974a0094139..dc0f20f5103310e57961c6baf42a9dd2127c3a87 100644
--- a/chrome/browser/local_discovery/service_discovery_client_mac_unittest.mm
+++ b/chrome/browser/local_discovery/service_discovery_client_mac_unittest.mm
@@ -11,29 +11,37 @@
#include "chrome/browser/local_discovery/service_discovery_client_mac.h"
#include "chrome/common/local_discovery/service_discovery_client.h"
#include "content/public/test/test_browser_thread_bundle.h"
+#include "net/base/ip_endpoint.h"
+#include "net/base/net_util.h"
#include "testing/gtest_mac.h"
@interface TestNSNetService : NSNetService {
@private
NSData* data_;
+ NSArray* addresses_;
}
-- (id) initWithData:(NSData *)data;
+- (id)initWithData:(NSData*)data;
+- (void)setAddresses:(NSArray*)addresses;
@end
@implementation TestNSNetService
--(id) initWithData:(NSData *)data {
+- (id)initWithData:(NSData*)data {
if ((self = [super init])) {
data_ = data;
}
return self;
}
-- (NSArray *)addresses {
- return [NSMutableArray array];
+- (void)setAddresses:(NSArray*)addresses {
+ addresses_ = addresses;
}
-- (NSData *)TXTRecordData {
+- (NSArray*)addresses {
+ return addresses_;
+}
+
+- (NSData*)TXTRecordData {
return data_;
}
@@ -111,10 +119,21 @@ TEST_F(ServiceDiscoveryClientMacTest, ServiceResolver) {
base::Unretained(this)));
const uint8 record_bytes[] = { 2, 'a', 'b', 3, 'd', '=', 'e' };
- base::scoped_nsobject<NSNetService> test_service(
- [[TestNSNetService alloc] initWithData:
- [[NSData alloc] initWithBytes:record_bytes
- length:arraysize(record_bytes)]]);
+ base::scoped_nsobject<TestNSNetService> test_service([[TestNSNetService alloc]
+ initWithData:[[NSData alloc] initWithBytes:record_bytes
+ length:arraysize(record_bytes)]]);
+
+ const std::string kIp = "2001:4860:4860::8844";
+ const uint16_t kPort = 4321;
+ net::IPAddressNumber ip_address;
+ ASSERT_TRUE(net::ParseIPLiteralToNumber(kIp, &ip_address));
+ net::IPEndPoint endpoint(ip_address, kPort);
+ net::SockaddrStorage storage;
+ ASSERT_TRUE(endpoint.ToSockAddr(storage.addr, &storage.addr_len));
+ NSData* discoveryHost =
+ [NSData dataWithBytes:storage.addr length:storage.addr_len];
+ NSArray* addresses = @[ discoveryHost ];
+ [test_service setAddresses:addresses];
ServiceResolverImplMac* resolver_impl =
static_cast<ServiceResolverImplMac*>(resolver.get());
@@ -128,6 +147,8 @@ TEST_F(ServiceDiscoveryClientMacTest, ServiceResolver) {
EXPECT_EQ(1, num_resolves_);
EXPECT_EQ(2u, last_service_description_.metadata.size());
+ EXPECT_EQ(kIp, last_service_description_.address.host());
+ EXPECT_EQ(kPort, last_service_description_.address.port());
}
} // namespace local_discovery
« no previous file with comments | « chrome/browser/local_discovery/service_discovery_client_mac.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698