aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Muxi Yan <mxyan@google.com>2016-07-15 16:35:20 -0700
committerGravatar Muxi Yan <mxyan@google.com>2016-07-15 16:35:20 -0700
commite04089e7c043e34e79bd077ca9a8c0b98d6c9ec7 (patch)
tree6337ec9f58a48487ed7cca586c9e3f99883a905a
parent65515a76dd783296769dee23712804b2036c5d80 (diff)
Establish Objective C end-to-end core test with Cronet
-rw-r--r--gRPC-Core.podspec2
-rw-r--r--src/objective-c/tests/CoreCronetEnd2EndTests/CoreCronetEnd2EndTests.m15
-rw-r--r--src/objective-c/tests/CoreCronetEnd2EndTests/h2_ssl.h46
-rw-r--r--src/objective-c/tests/Podfile3
-rw-r--r--src/objective-c/tests/Tests.xcodeproj/project.pbxproj2
5 files changed, 43 insertions, 25 deletions
diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec
index 4811abf698..0678f3b3ae 100644
--- a/gRPC-Core.podspec
+++ b/gRPC-Core.podspec
@@ -101,6 +101,8 @@ Pod::Spec.new do |s|
'ALWAYS_SEARCH_USER_PATHS' => 'NO',
}
+ s.default_subspecs = 'Interface', 'Implementation'
+
# Like many other C libraries, gRPC-Core has its public headers under `include/<libname>/` and its
# sources and private headers in other directories outside `include/`. Cocoapods' linter doesn't
# allow any header to be listed outside the `header_mappings_dir` (even though doing so works in
diff --git a/src/objective-c/tests/CoreCronetEnd2EndTests/CoreCronetEnd2EndTests.m b/src/objective-c/tests/CoreCronetEnd2EndTests/CoreCronetEnd2EndTests.m
index 1703b5265e..5d501602d9 100644
--- a/src/objective-c/tests/CoreCronetEnd2EndTests/CoreCronetEnd2EndTests.m
+++ b/src/objective-c/tests/CoreCronetEnd2EndTests/CoreCronetEnd2EndTests.m
@@ -32,28 +32,15 @@
*/
#import <XCTest/XCTest.h>
+#include "./h2_ssl.h"
@interface CoreCronetEnd2EndTests : XCTestCase
@end
-int main(int argc, char **argv);
-
@implementation CoreCronetEnd2EndTests
-- (void)setUp {
- [super setUp];
- // Put setup code here. This method is called before the invocation of each test method in the class.
-}
-
-- (void)tearDown {
- // Put teardown code here. This method is called after the invocation of each test method in the class.
- [super tearDown];
-}
-
- (void)testCoreCronetEnd2End {
- // This is an example of a functional test case.
- // Use XCTAssert and related functions to verify your tests produce the correct results.
char *argv[] = {"h2_ssl"};
main(1, argv);
}
diff --git a/src/objective-c/tests/CoreCronetEnd2EndTests/h2_ssl.h b/src/objective-c/tests/CoreCronetEnd2EndTests/h2_ssl.h
index a7f2bd724a..3aa0a05dda 100644
--- a/src/objective-c/tests/CoreCronetEnd2EndTests/h2_ssl.h
+++ b/src/objective-c/tests/CoreCronetEnd2EndTests/h2_ssl.h
@@ -1,13 +1,39 @@
-//
-// h2_ssl.h
-// Tests
-//
-// Created by Muxi Yan on 7/15/16.
-// Copyright © 2016 gRPC. All rights reserved.
-//
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
-#ifndef h2_ssl_h
-#define h2_ssl_h
+#ifndef GRPC_H2_SSL_H
+#define GRPC_H2_SSL_H
+int main(int argc, char **argv);
-#endif /* h2_ssl_h */
+#endif /* GRPC_H2_SSL_H */ \ No newline at end of file
diff --git a/src/objective-c/tests/Podfile b/src/objective-c/tests/Podfile
index 546017c9f7..db11208a1b 100644
--- a/src/objective-c/tests/Podfile
+++ b/src/objective-c/tests/Podfile
@@ -27,6 +27,7 @@ GRPC_LOCAL_SRC = '../../..'
pod 'gRPC-Core', :path => GRPC_LOCAL_SRC
pod 'gRPC-RxLibrary', :path => GRPC_LOCAL_SRC
pod 'gRPC-ProtoRPC', :path => GRPC_LOCAL_SRC
+ pod 'RemoteTest', :path => "RemoteTestClient"
end
end
@@ -74,7 +75,7 @@ post_install do |installer|
target.build_configurations.each do |config|
config.build_settings['GCC_TREAT_WARNINGS_AS_ERRORS'] = 'YES'
end
- if target.name == 'gRPC-Core'
+ if target.name == 'gRPC-Core' or target.name == 'gRPC-Core.default-Cronet-Interface-Cronet-Tests'
target.build_configurations.each do |config|
# TODO(zyc): Remove this setting after the issue is resolved
# GPR_UNREACHABLE_CODE causes "Control may reach end of non-void
diff --git a/src/objective-c/tests/Tests.xcodeproj/project.pbxproj b/src/objective-c/tests/Tests.xcodeproj/project.pbxproj
index 4aa5b1bdbe..4161dcc43c 100644
--- a/src/objective-c/tests/Tests.xcodeproj/project.pbxproj
+++ b/src/objective-c/tests/Tests.xcodeproj/project.pbxproj
@@ -113,6 +113,7 @@
5E8A5DA41D3840B4000F8BC4 /* CoreCronetEnd2EndTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CoreCronetEnd2EndTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
5E8A5DA61D3840B4000F8BC4 /* CoreCronetEnd2EndTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CoreCronetEnd2EndTests.m; sourceTree = "<group>"; };
5E8A5DAF1D3849F1000F8BC4 /* h2_ssl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = h2_ssl.m; sourceTree = "<group>"; };
+ 5ED3173E1D397C7500C613BD /* h2_ssl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = h2_ssl.h; sourceTree = "<group>"; };
6312AE4D1B1BF49B00341DEE /* GRPCClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GRPCClientTests.m; sourceTree = "<group>"; };
63423F441B150A5F006CF63C /* AllTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = AllTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
63423F501B151B77006CF63C /* RxLibraryUnitTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RxLibraryUnitTests.m; sourceTree = "<group>"; };
@@ -252,6 +253,7 @@
isa = PBXGroup;
children = (
5E8A5DAF1D3849F1000F8BC4 /* h2_ssl.m */,
+ 5ED3173E1D397C7500C613BD /* h2_ssl.h */,
5E8A5DA61D3840B4000F8BC4 /* CoreCronetEnd2EndTests.m */,
);
path = CoreCronetEnd2EndTests;