mirror of https://github.com/grpc/grpc.git
commit
5110b5702d
52 changed files with 1193 additions and 5499 deletions
@ -1,22 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>$(DEVELOPMENT_LANGUAGE)</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -1,22 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>$(DEVELOPMENT_LANGUAGE)</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -0,0 +1,39 @@ |
||||
/* |
||||
* |
||||
* Copyright 2019 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0 |
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#ifdef GRPC_COMPILE_WITH_CRONET |
||||
|
||||
#import "ConfigureCronet.h" |
||||
#import <Cronet/Cronet.h> |
||||
|
||||
void configureCronet(void) { |
||||
static dispatch_once_t configureCronet; |
||||
dispatch_once(&configureCronet, ^{ |
||||
NSLog(@"configureCronet()"); |
||||
[Cronet setHttp2Enabled:YES]; |
||||
[Cronet setSslKeyLogFileName:@"Documents/key"]; |
||||
[Cronet enableTestCertVerifierForTesting]; |
||||
NSURL *url = [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory |
||||
inDomains:NSUserDomainMask] lastObject]; |
||||
NSLog(@"Documents directory: %@", url); |
||||
[Cronet start]; |
||||
[Cronet startNetLogToFile:@"cronet_netlog.json" logBytes:YES]; |
||||
}); |
||||
} |
||||
|
||||
#endif |
@ -1,24 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>en</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>gRPC.$(PRODUCT_NAME:rfc1034identifier)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleSignature</key> |
||||
<string>????</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -1,24 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>en</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleSignature</key> |
||||
<string>????</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -0,0 +1,33 @@ |
||||
/*
|
||||
* |
||||
* Copyright 2019 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#import <ProtoRPC/ProtoRPC.h> |
||||
|
||||
// Convenience class to use blocks as callbacks
|
||||
@interface InteropTestsBlockCallbacks : NSObject<GRPCProtoResponseHandler> |
||||
|
||||
- (instancetype)initWithInitialMetadataCallback:(void (^)(NSDictionary *))initialMetadataCallback |
||||
messageCallback:(void (^)(id))messageCallback |
||||
closeCallback:(void (^)(NSDictionary *, NSError *))closeCallback |
||||
writeMessageCallback:(void (^)(void))writeMessageCallback; |
||||
|
||||
- (instancetype)initWithInitialMetadataCallback:(void (^)(NSDictionary *))initialMetadataCallback |
||||
messageCallback:(void (^)(id))messageCallback |
||||
closeCallback:(void (^)(NSDictionary *, NSError *))closeCallback; |
||||
|
||||
@end |
@ -0,0 +1,80 @@ |
||||
/* |
||||
* |
||||
* Copyright 2019 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0 |
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#import "InteropTestsBlockCallbacks.h" |
||||
|
||||
@implementation InteropTestsBlockCallbacks { |
||||
void (^_initialMetadataCallback)(NSDictionary *); |
||||
void (^_messageCallback)(id); |
||||
void (^_closeCallback)(NSDictionary *, NSError *); |
||||
void (^_writeMessageCallback)(void); |
||||
dispatch_queue_t _dispatchQueue; |
||||
} |
||||
|
||||
- (instancetype)initWithInitialMetadataCallback:(void (^)(NSDictionary *))initialMetadataCallback |
||||
messageCallback:(void (^)(id))messageCallback |
||||
closeCallback:(void (^)(NSDictionary *, NSError *))closeCallback |
||||
writeMessageCallback:(void (^)(void))writeMessageCallback { |
||||
if ((self = [super init])) { |
||||
_initialMetadataCallback = initialMetadataCallback; |
||||
_messageCallback = messageCallback; |
||||
_closeCallback = closeCallback; |
||||
_writeMessageCallback = writeMessageCallback; |
||||
_dispatchQueue = dispatch_queue_create(nil, DISPATCH_QUEUE_SERIAL); |
||||
} |
||||
return self; |
||||
} |
||||
|
||||
- (instancetype)initWithInitialMetadataCallback:(void (^)(NSDictionary *))initialMetadataCallback |
||||
messageCallback:(void (^)(id))messageCallback |
||||
closeCallback:(void (^)(NSDictionary *, NSError *))closeCallback { |
||||
return [self initWithInitialMetadataCallback:initialMetadataCallback |
||||
messageCallback:messageCallback |
||||
closeCallback:closeCallback |
||||
writeMessageCallback:nil]; |
||||
} |
||||
|
||||
- (void)didReceiveInitialMetadata:(NSDictionary *)initialMetadata { |
||||
if (_initialMetadataCallback) { |
||||
_initialMetadataCallback(initialMetadata); |
||||
} |
||||
} |
||||
|
||||
- (void)didReceiveProtoMessage:(GPBMessage *)message { |
||||
if (_messageCallback) { |
||||
_messageCallback(message); |
||||
} |
||||
} |
||||
|
||||
- (void)didCloseWithTrailingMetadata:(NSDictionary *)trailingMetadata error:(NSError *)error { |
||||
if (_closeCallback) { |
||||
_closeCallback(trailingMetadata, error); |
||||
} |
||||
} |
||||
|
||||
- (void)didWriteMessage { |
||||
if (_writeMessageCallback) { |
||||
_writeMessageCallback(); |
||||
} |
||||
} |
||||
|
||||
- (dispatch_queue_t)dispatchQueue { |
||||
return _dispatchQueue; |
||||
} |
||||
|
||||
@end |
@ -0,0 +1,291 @@ |
||||
/* |
||||
* |
||||
* Copyright 2018 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0 |
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#import <XCTest/XCTest.h> |
||||
|
||||
#ifdef GRPC_COMPILE_WITH_CRONET |
||||
#import <Cronet/Cronet.h> |
||||
#endif |
||||
#import <RemoteTest/Messages.pbobjc.h> |
||||
#import <RemoteTest/Test.pbobjc.h> |
||||
#import <RemoteTest/Test.pbrpc.h> |
||||
#import <RxLibrary/GRXBufferedPipe.h> |
||||
|
||||
#import "../ConfigureCronet.h" |
||||
#import "InteropTestsBlockCallbacks.h" |
||||
|
||||
#define NSStringize_helper(x) #x |
||||
#define NSStringize(x) @NSStringize_helper(x) |
||||
static NSString *const kRemoteSSLHost = NSStringize(HOST_PORT_REMOTE); |
||||
static NSString *const kLocalSSLHost = NSStringize(HOST_PORT_LOCALSSL); |
||||
static NSString *const kLocalCleartextHost = NSStringize(HOST_PORT_LOCAL); |
||||
|
||||
static const NSTimeInterval TEST_TIMEOUT = 8000; |
||||
|
||||
@interface RMTStreamingOutputCallRequest (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize |
||||
requestedResponseSize:(NSNumber *)responseSize; |
||||
@end |
||||
|
||||
@implementation RMTStreamingOutputCallRequest (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize |
||||
requestedResponseSize:(NSNumber *)responseSize { |
||||
RMTStreamingOutputCallRequest *request = [self message]; |
||||
RMTResponseParameters *parameters = [RMTResponseParameters message]; |
||||
parameters.size = responseSize.intValue; |
||||
[request.responseParametersArray addObject:parameters]; |
||||
request.payload.body = [NSMutableData dataWithLength:payloadSize.unsignedIntegerValue]; |
||||
return request; |
||||
} |
||||
@end |
||||
|
||||
@interface RMTStreamingOutputCallResponse (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize; |
||||
@end |
||||
|
||||
@implementation RMTStreamingOutputCallResponse (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize { |
||||
RMTStreamingOutputCallResponse *response = [self message]; |
||||
response.payload.type = RMTPayloadType_Compressable; |
||||
response.payload.body = [NSMutableData dataWithLength:payloadSize.unsignedIntegerValue]; |
||||
return response; |
||||
} |
||||
@end |
||||
|
||||
@interface InteropTestsMultipleChannels : XCTestCase |
||||
|
||||
@end |
||||
|
||||
dispatch_once_t initCronet; |
||||
|
||||
@implementation InteropTestsMultipleChannels { |
||||
RMTTestService *_remoteService; |
||||
RMTTestService *_remoteCronetService; |
||||
RMTTestService *_localCleartextService; |
||||
RMTTestService *_localSSLService; |
||||
} |
||||
|
||||
- (void)setUp { |
||||
[super setUp]; |
||||
|
||||
self.continueAfterFailure = NO; |
||||
|
||||
_remoteService = [RMTTestService serviceWithHost:kRemoteSSLHost callOptions:nil]; |
||||
|
||||
configureCronet(); |
||||
|
||||
// Default stack with remote host |
||||
GRPCMutableCallOptions *options = [[GRPCMutableCallOptions alloc] init]; |
||||
options.transportType = GRPCTransportTypeCronet; |
||||
// Cronet stack with remote host |
||||
_remoteCronetService = [RMTTestService serviceWithHost:kRemoteSSLHost callOptions:options]; |
||||
|
||||
// Local stack with no SSL |
||||
options = [[GRPCMutableCallOptions alloc] init]; |
||||
options.transportType = GRPCTransportTypeInsecure; |
||||
_localCleartextService = [RMTTestService serviceWithHost:kLocalCleartextHost callOptions:options]; |
||||
|
||||
// Local stack with SSL |
||||
NSBundle *bundle = [NSBundle bundleForClass:[self class]]; |
||||
NSString *certsPath = |
||||
[bundle pathForResource:@"TestCertificates.bundle/test-certificates" ofType:@"pem"]; |
||||
NSError *error = nil; |
||||
NSString *certs = |
||||
[NSString stringWithContentsOfFile:certsPath encoding:NSUTF8StringEncoding error:&error]; |
||||
XCTAssertNil(error); |
||||
|
||||
options = [[GRPCMutableCallOptions alloc] init]; |
||||
options.transportType = GRPCTransportTypeChttp2BoringSSL; |
||||
options.PEMRootCertificates = certs; |
||||
options.hostNameOverride = @"foo.test.google.fr"; |
||||
_localSSLService = [RMTTestService serviceWithHost:kLocalSSLHost callOptions:options]; |
||||
} |
||||
|
||||
- (void)testEmptyUnaryRPC { |
||||
__weak XCTestExpectation *expectRemote = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCronetRemote = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCleartext = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectSSL = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
|
||||
GPBEmpty *request = [GPBEmpty message]; |
||||
|
||||
void (^messageHandler)(id message) = ^(id message) { |
||||
id expectedResponse = [GPBEmpty message]; |
||||
XCTAssertEqualObjects(message, expectedResponse); |
||||
}; |
||||
|
||||
GRPCUnaryProtoCall *callRemote = [_remoteService |
||||
emptyCallWithMessage:request |
||||
responseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:messageHandler |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectRemote fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
GRPCUnaryProtoCall *callCronet = [_remoteCronetService |
||||
emptyCallWithMessage:request |
||||
responseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:messageHandler |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectCronetRemote fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
GRPCUnaryProtoCall *callCleartext = [_localCleartextService |
||||
emptyCallWithMessage:request |
||||
responseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:messageHandler |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectCleartext fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
GRPCUnaryProtoCall *callSSL = [_localSSLService |
||||
emptyCallWithMessage:request |
||||
responseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:messageHandler |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectSSL fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
[callRemote start]; |
||||
[callCronet start]; |
||||
[callCleartext start]; |
||||
[callSSL start]; |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
- (void)testFullDuplexRPC { |
||||
__weak XCTestExpectation *expectRemote = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCronetRemote = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCleartext = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectSSL = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
|
||||
NSArray *requestSizes = @[ @100, @101, @102, @103 ]; |
||||
NSArray *responseSizes = @[ @104, @105, @106, @107 ]; |
||||
XCTAssertEqual([requestSizes count], [responseSizes count]); |
||||
NSUInteger kRounds = [requestSizes count]; |
||||
NSMutableArray<GRPCStreamingProtoCall *> *calls = [NSMutableArray arrayWithCapacity:4]; |
||||
|
||||
NSMutableArray *requests = [NSMutableArray arrayWithCapacity:kRounds]; |
||||
NSMutableArray *responses = [NSMutableArray arrayWithCapacity:kRounds]; |
||||
for (int i = 0; i < kRounds; i++) { |
||||
requests[i] = [RMTStreamingOutputCallRequest messageWithPayloadSize:requestSizes[i] |
||||
requestedResponseSize:responseSizes[i]]; |
||||
responses[i] = [RMTStreamingOutputCallResponse messageWithPayloadSize:responseSizes[i]]; |
||||
} |
||||
|
||||
__block NSMutableArray *steps = [NSMutableArray arrayWithCapacity:4]; |
||||
__block NSMutableArray *requestsBuffers = [NSMutableArray arrayWithCapacity:4]; |
||||
for (int i = 0; i < 4; i++) { |
||||
steps[i] = [NSNumber numberWithUnsignedInteger:0]; |
||||
requestsBuffers[i] = [[GRXBufferedPipe alloc] init]; |
||||
[requestsBuffers[i] writeValue:requests[0]]; |
||||
} |
||||
|
||||
void (^handler)(NSUInteger index, id message) = ^(NSUInteger index, id message) { |
||||
NSUInteger step = [steps[index] unsignedIntegerValue]; |
||||
step++; |
||||
steps[index] = [NSNumber numberWithUnsignedInteger:step]; |
||||
if (step < kRounds) { |
||||
[calls[index] writeMessage:requests[step]]; |
||||
} else { |
||||
[calls[index] finish]; |
||||
} |
||||
}; |
||||
|
||||
calls[0] = [_remoteService |
||||
fullDuplexCallWithResponseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:^(id message) { |
||||
handler(0, message); |
||||
} |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectRemote fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
calls[1] = [_remoteCronetService |
||||
fullDuplexCallWithResponseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:^(id message) { |
||||
handler(1, message); |
||||
} |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectCronetRemote fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
calls[2] = [_localCleartextService |
||||
fullDuplexCallWithResponseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:^(id message) { |
||||
handler(2, message); |
||||
} |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectCleartext fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
calls[3] = [_localSSLService |
||||
fullDuplexCallWithResponseHandler:[[InteropTestsBlockCallbacks alloc] |
||||
initWithInitialMetadataCallback:nil |
||||
messageCallback:^(id message) { |
||||
handler(3, message); |
||||
} |
||||
closeCallback:^(NSDictionary *trailingMetadata, |
||||
NSError *error) { |
||||
XCTAssertNil(error); |
||||
[expectSSL fulfill]; |
||||
} |
||||
writeMessageCallback:nil] |
||||
callOptions:nil]; |
||||
for (int i = 0; i < 4; i++) { |
||||
[calls[i] start]; |
||||
[calls[i] writeMessage:requests[0]]; |
||||
} |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
@end |
@ -1,22 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>$(DEVELOPMENT_LANGUAGE)</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -1,116 +0,0 @@ |
||||
/* |
||||
* |
||||
* Copyright 2018 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0 |
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#import <XCTest/XCTest.h> |
||||
|
||||
#import <RemoteTest/Messages.pbobjc.h> |
||||
#import <RemoteTest/Test.pbobjc.h> |
||||
#import <RemoteTest/Test.pbrpc.h> |
||||
#import <RxLibrary/GRXBufferedPipe.h> |
||||
#import <RxLibrary/GRXWriter+Immediate.h> |
||||
#import <grpc/grpc.h> |
||||
|
||||
#define NSStringize_helper(x) #x |
||||
#define NSStringize(x) @NSStringize_helper(x) |
||||
static NSString *kRemoteHost = NSStringize(HOST_PORT_REMOTE); |
||||
const int32_t kRemoteInteropServerOverhead = 12; |
||||
|
||||
static const NSTimeInterval TEST_TIMEOUT = 16000; |
||||
|
||||
@interface InteropTestsCallOptions : XCTestCase |
||||
|
||||
@end |
||||
|
||||
@implementation InteropTestsCallOptions { |
||||
RMTTestService *_service; |
||||
} |
||||
|
||||
- (void)setUp { |
||||
self.continueAfterFailure = NO; |
||||
_service = [RMTTestService serviceWithHost:kRemoteHost]; |
||||
_service.options = [[GRPCCallOptions alloc] init]; |
||||
} |
||||
|
||||
- (void)test4MBResponsesAreAccepted { |
||||
__weak XCTestExpectation *expectation = [self expectationWithDescription:@"MaxResponseSize"]; |
||||
|
||||
RMTSimpleRequest *request = [RMTSimpleRequest message]; |
||||
const int32_t kPayloadSize = |
||||
4 * 1024 * 1024 - kRemoteInteropServerOverhead; // 4MB - encoding overhead |
||||
request.responseSize = kPayloadSize; |
||||
|
||||
[_service unaryCallWithRequest:request |
||||
handler:^(RMTSimpleResponse *response, NSError *error) { |
||||
XCTAssertNil(error, @"Finished with unexpected error: %@", error); |
||||
XCTAssertEqual(response.payload.body.length, kPayloadSize); |
||||
[expectation fulfill]; |
||||
}]; |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
- (void)testResponsesOverMaxSizeFailWithActionableMessage { |
||||
__weak XCTestExpectation *expectation = [self expectationWithDescription:@"ResponseOverMaxSize"]; |
||||
|
||||
RMTSimpleRequest *request = [RMTSimpleRequest message]; |
||||
const int32_t kPayloadSize = |
||||
4 * 1024 * 1024 - kRemoteInteropServerOverhead + 1; // 1B over max size |
||||
request.responseSize = kPayloadSize; |
||||
|
||||
[_service unaryCallWithRequest:request |
||||
handler:^(RMTSimpleResponse *response, NSError *error) { |
||||
XCTAssertEqualObjects( |
||||
error.localizedDescription, |
||||
@"Received message larger than max (4194305 vs. 4194304)"); |
||||
[expectation fulfill]; |
||||
}]; |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
- (void)testResponsesOver4MBAreAcceptedIfOptedIn { |
||||
__weak XCTestExpectation *expectation = |
||||
[self expectationWithDescription:@"HigherResponseSizeLimit"]; |
||||
|
||||
RMTSimpleRequest *request = [RMTSimpleRequest message]; |
||||
const size_t kPayloadSize = 5 * 1024 * 1024; // 5MB |
||||
request.responseSize = kPayloadSize; |
||||
|
||||
GRPCProtoCall *rpc = [_service |
||||
RPCToUnaryCallWithRequest:request |
||||
handler:^(RMTSimpleResponse *response, NSError *error) { |
||||
XCTAssertNil(error, @"Finished with unexpected error: %@", error); |
||||
XCTAssertEqual(response.payload.body.length, kPayloadSize); |
||||
[expectation fulfill]; |
||||
}]; |
||||
GRPCCallOptions *options = rpc.options; |
||||
options.responseSizeLimit = 6 * 1024 * 1024; |
||||
|
||||
[rpc start]; |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
- (void)testPerformanceExample { |
||||
// This is an example of a performance test case. |
||||
[self measureBlock:^{ |
||||
// Put the code you want to measure the time of here. |
||||
}]; |
||||
} |
||||
|
||||
@end |
@ -1,22 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>$(DEVELOPMENT_LANGUAGE)</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -1,259 +0,0 @@ |
||||
/* |
||||
* |
||||
* Copyright 2018 gRPC authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0 |
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
* |
||||
*/ |
||||
|
||||
#import <XCTest/XCTest.h> |
||||
|
||||
#import <Cronet/Cronet.h> |
||||
#import <RemoteTest/Messages.pbobjc.h> |
||||
#import <RemoteTest/Test.pbobjc.h> |
||||
#import <RemoteTest/Test.pbrpc.h> |
||||
#import <RxLibrary/GRXBufferedPipe.h> |
||||
|
||||
#define NSStringize_helper(x) #x |
||||
#define NSStringize(x) @NSStringize_helper(x) |
||||
static NSString *const kRemoteSSLHost = NSStringize(HOST_PORT_REMOTE); |
||||
static NSString *const kLocalSSLHost = NSStringize(HOST_PORT_LOCALSSL); |
||||
static NSString *const kLocalCleartextHost = NSStringize(HOST_PORT_LOCAL); |
||||
|
||||
static const NSTimeInterval TEST_TIMEOUT = 8000; |
||||
|
||||
@interface RMTStreamingOutputCallRequest (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize |
||||
requestedResponseSize:(NSNumber *)responseSize; |
||||
@end |
||||
|
||||
@implementation RMTStreamingOutputCallRequest (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize |
||||
requestedResponseSize:(NSNumber *)responseSize { |
||||
RMTStreamingOutputCallRequest *request = [self message]; |
||||
RMTResponseParameters *parameters = [RMTResponseParameters message]; |
||||
parameters.size = responseSize.intValue; |
||||
[request.responseParametersArray addObject:parameters]; |
||||
request.payload.body = [NSMutableData dataWithLength:payloadSize.unsignedIntegerValue]; |
||||
return request; |
||||
} |
||||
@end |
||||
|
||||
@interface RMTStreamingOutputCallResponse (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize; |
||||
@end |
||||
|
||||
@implementation RMTStreamingOutputCallResponse (Constructors) |
||||
+ (instancetype)messageWithPayloadSize:(NSNumber *)payloadSize { |
||||
RMTStreamingOutputCallResponse *response = [self message]; |
||||
response.payload.type = RMTPayloadType_Compressable; |
||||
response.payload.body = [NSMutableData dataWithLength:payloadSize.unsignedIntegerValue]; |
||||
return response; |
||||
} |
||||
@end |
||||
|
||||
@interface InteropTestsMultipleChannels : XCTestCase |
||||
|
||||
@end |
||||
|
||||
dispatch_once_t initCronet; |
||||
|
||||
@implementation InteropTestsMultipleChannels { |
||||
RMTTestService *_remoteService; |
||||
RMTTestService *_remoteCronetService; |
||||
RMTTestService *_localCleartextService; |
||||
RMTTestService *_localSSLService; |
||||
} |
||||
|
||||
- (void)setUp { |
||||
[super setUp]; |
||||
|
||||
self.continueAfterFailure = NO; |
||||
|
||||
// Default stack with remote host |
||||
_remoteService = [RMTTestService serviceWithHost:kRemoteSSLHost]; |
||||
|
||||
// Cronet stack with remote host |
||||
_remoteCronetService = [RMTTestService serviceWithHost:kRemoteSSLHost]; |
||||
|
||||
dispatch_once(&initCronet, ^{ |
||||
[Cronet setHttp2Enabled:YES]; |
||||
[Cronet start]; |
||||
}); |
||||
|
||||
GRPCCallOptions *options = [[GRPCCallOptions alloc] init]; |
||||
options.transportType = GRPCTransportTypeCronet; |
||||
options.cronetEngine = [Cronet getGlobalEngine]; |
||||
_remoteCronetService.options = options; |
||||
|
||||
// Local stack with no SSL |
||||
_localCleartextService = [RMTTestService serviceWithHost:kLocalCleartextHost]; |
||||
options = [[GRPCCallOptions alloc] init]; |
||||
options.transportType = GRPCTransportTypeInsecure; |
||||
_localCleartextService.options = options; |
||||
|
||||
// Local stack with SSL |
||||
_localSSLService = [RMTTestService serviceWithHost:kLocalSSLHost]; |
||||
|
||||
NSBundle *bundle = [NSBundle bundleForClass:[self class]]; |
||||
NSString *certsPath = |
||||
[bundle pathForResource:@"TestCertificates.bundle/test-certificates" ofType:@"pem"]; |
||||
NSError *error = nil; |
||||
NSString *certs = |
||||
[NSString stringWithContentsOfFile:certsPath encoding:NSUTF8StringEncoding error:&error]; |
||||
XCTAssertNil(error); |
||||
|
||||
options = [[GRPCCallOptions alloc] init]; |
||||
options.transportType = GRPCTransportTypeChttp2BoringSSL; |
||||
options.PEMRootCertificates = certs; |
||||
options.hostNameOverride = @"foo.test.google.fr"; |
||||
_localSSLService.options = options; |
||||
} |
||||
|
||||
- (void)testEmptyUnaryRPC { |
||||
__weak XCTestExpectation *expectRemote = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCronetRemote = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCleartext = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectSSL = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
|
||||
GPBEmpty *request = [GPBEmpty message]; |
||||
|
||||
void (^handler)(GPBEmpty *response, NSError *error) = ^(GPBEmpty *response, NSError *error) { |
||||
XCTAssertNil(error, @"Finished with unexpected error: %@", error); |
||||
|
||||
id expectedResponse = [GPBEmpty message]; |
||||
XCTAssertEqualObjects(response, expectedResponse); |
||||
}; |
||||
|
||||
[_remoteService emptyCallWithRequest:request |
||||
handler:^(GPBEmpty *response, NSError *error) { |
||||
handler(response, error); |
||||
[expectRemote fulfill]; |
||||
}]; |
||||
[_remoteCronetService emptyCallWithRequest:request |
||||
handler:^(GPBEmpty *response, NSError *error) { |
||||
handler(response, error); |
||||
[expectCronetRemote fulfill]; |
||||
}]; |
||||
[_localCleartextService emptyCallWithRequest:request |
||||
handler:^(GPBEmpty *response, NSError *error) { |
||||
handler(response, error); |
||||
[expectCleartext fulfill]; |
||||
}]; |
||||
[_localSSLService emptyCallWithRequest:request |
||||
handler:^(GPBEmpty *response, NSError *error) { |
||||
handler(response, error); |
||||
[expectSSL fulfill]; |
||||
}]; |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
- (void)testFullDuplexRPC { |
||||
__weak XCTestExpectation *expectRemote = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCronetRemote = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectCleartext = |
||||
[self expectationWithDescription:@"Remote RPC finish"]; |
||||
__weak XCTestExpectation *expectSSL = [self expectationWithDescription:@"Remote RPC finish"]; |
||||
|
||||
NSArray *requestSizes = @[ @100, @101, @102, @103 ]; |
||||
NSArray *responseSizes = @[ @104, @105, @106, @107 ]; |
||||
XCTAssertEqual([requestSizes count], [responseSizes count]); |
||||
NSUInteger kRounds = [requestSizes count]; |
||||
|
||||
NSMutableArray *requests = [NSMutableArray arrayWithCapacity:kRounds]; |
||||
NSMutableArray *responses = [NSMutableArray arrayWithCapacity:kRounds]; |
||||
for (int i = 0; i < kRounds; i++) { |
||||
requests[i] = [RMTStreamingOutputCallRequest messageWithPayloadSize:requestSizes[i] |
||||
requestedResponseSize:responseSizes[i]]; |
||||
responses[i] = [RMTStreamingOutputCallResponse messageWithPayloadSize:responseSizes[i]]; |
||||
} |
||||
|
||||
__block NSMutableArray *steps = [NSMutableArray arrayWithCapacity:4]; |
||||
__block NSMutableArray *requestsBuffers = [NSMutableArray arrayWithCapacity:4]; |
||||
for (int i = 0; i < 4; i++) { |
||||
steps[i] = [NSNumber numberWithUnsignedInteger:0]; |
||||
requestsBuffers[i] = [[GRXBufferedPipe alloc] init]; |
||||
[requestsBuffers[i] writeValue:requests[0]]; |
||||
} |
||||
|
||||
BOOL (^handler)(int, BOOL, RMTStreamingOutputCallResponse *, NSError *) = |
||||
^(int index, BOOL done, RMTStreamingOutputCallResponse *response, NSError *error) { |
||||
XCTAssertNil(error, @"Finished with unexpected error: %@", error); |
||||
XCTAssertTrue(done || response, @"Event handler called without an event."); |
||||
if (response) { |
||||
NSUInteger step = [steps[index] unsignedIntegerValue]; |
||||
XCTAssertLessThan(step, kRounds, @"More than %lu responses received.", |
||||
(unsigned long)kRounds); |
||||
XCTAssertEqualObjects(response, responses[step]); |
||||
step++; |
||||
steps[index] = [NSNumber numberWithUnsignedInteger:step]; |
||||
GRXBufferedPipe *pipe = requestsBuffers[index]; |
||||
if (step < kRounds) { |
||||
[pipe writeValue:requests[step]]; |
||||
} else { |
||||
[pipe writesFinishedWithError:nil]; |
||||
} |
||||
} |
||||
if (done) { |
||||
NSUInteger step = [steps[index] unsignedIntegerValue]; |
||||
XCTAssertEqual(step, kRounds, @"Received %lu responses instead of %lu.", step, kRounds); |
||||
return YES; |
||||
} |
||||
return NO; |
||||
}; |
||||
|
||||
[_remoteService |
||||
fullDuplexCallWithRequestsWriter:requestsBuffers[0] |
||||
eventHandler:^(BOOL done, |
||||
RMTStreamingOutputCallResponse *_Nullable response, |
||||
NSError *_Nullable error) { |
||||
if (handler(0, done, response, error)) { |
||||
[expectRemote fulfill]; |
||||
} |
||||
}]; |
||||
[_remoteCronetService |
||||
fullDuplexCallWithRequestsWriter:requestsBuffers[1] |
||||
eventHandler:^(BOOL done, |
||||
RMTStreamingOutputCallResponse *_Nullable response, |
||||
NSError *_Nullable error) { |
||||
if (handler(1, done, response, error)) { |
||||
[expectCronetRemote fulfill]; |
||||
} |
||||
}]; |
||||
[_localCleartextService |
||||
fullDuplexCallWithRequestsWriter:requestsBuffers[2] |
||||
eventHandler:^(BOOL done, |
||||
RMTStreamingOutputCallResponse *_Nullable response, |
||||
NSError *_Nullable error) { |
||||
if (handler(2, done, response, error)) { |
||||
[expectCleartext fulfill]; |
||||
} |
||||
}]; |
||||
[_localSSLService |
||||
fullDuplexCallWithRequestsWriter:requestsBuffers[3] |
||||
eventHandler:^(BOOL done, |
||||
RMTStreamingOutputCallResponse *_Nullable response, |
||||
NSError *_Nullable error) { |
||||
if (handler(3, done, response, error)) { |
||||
[expectSSL fulfill]; |
||||
} |
||||
}]; |
||||
|
||||
[self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil]; |
||||
} |
||||
|
||||
@end |
@ -1,24 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>en</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleSignature</key> |
||||
<string>????</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
File diff suppressed because it is too large
Load Diff
@ -1,90 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "1000" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E3B95A121CAC6C500C0A151" |
||||
BuildableName = "APIv2Tests.xctest" |
||||
BlueprintName = "APIv2Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E3B95A121CAC6C500C0A151" |
||||
BuildableName = "APIv2Tests.xctest" |
||||
BlueprintName = "APIv2Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E3B95A121CAC6C500C0A151" |
||||
BuildableName = "APIv2Tests.xctest" |
||||
BlueprintName = "APIv2Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E3B95A121CAC6C500C0A151" |
||||
BuildableName = "APIv2Tests.xctest" |
||||
BlueprintName = "APIv2Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,110 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0630" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63423F431B150A5F006CF63C" |
||||
BuildableName = "AllTests.xctest" |
||||
BlueprintName = "AllTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63423F431B150A5F006CF63C" |
||||
BuildableName = "AllTests.xctest" |
||||
BlueprintName = "AllTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
<SkippedTests> |
||||
<Test |
||||
Identifier = "InteropTests"> |
||||
</Test> |
||||
<Test |
||||
Identifier = "LocalClearTextTests"> |
||||
</Test> |
||||
<Test |
||||
Identifier = "LocalClearTextTests/testConnectionToLocalServer"> |
||||
</Test> |
||||
</SkippedTests> |
||||
</TestableReference> |
||||
</Testables> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63423F431B150A5F006CF63C" |
||||
BuildableName = "AllTests.xctest" |
||||
BlueprintName = "AllTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63423F431B150A5F006CF63C" |
||||
BuildableName = "AllTests.xctest" |
||||
BlueprintName = "AllTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63423F431B150A5F006CF63C" |
||||
BuildableName = "AllTests.xctest" |
||||
BlueprintName = "AllTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Test"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,90 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0930" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EB2A2E32107DED300EB4B69" |
||||
BuildableName = "ChannelTests.xctest" |
||||
BlueprintName = "ChannelTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EB2A2E32107DED300EB4B69" |
||||
BuildableName = "ChannelTests.xctest" |
||||
BlueprintName = "ChannelTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EB2A2E32107DED300EB4B69" |
||||
BuildableName = "ChannelTests.xctest" |
||||
BlueprintName = "ChannelTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EB2A2E32107DED300EB4B69" |
||||
BuildableName = "ChannelTests.xctest" |
||||
BlueprintName = "ChannelTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,101 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0730" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,60 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0920" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
enableAddressSanitizer = "YES" |
||||
enableASanStackUseAfterReturn = "YES" |
||||
language = "" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,59 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0920" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
enableThreadSanitizer = "YES" |
||||
language = "" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E8A5DA31D3840B4000F8BC4" |
||||
BuildableName = "CoreCronetEnd2EndTests.xctest" |
||||
BlueprintName = "CoreCronetEnd2EndTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,56 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0730" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EAD6D231E27047400002378" |
||||
BuildableName = "CronetUnitTests.xctest" |
||||
BlueprintName = "CronetUnitTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,56 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0930" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5E7D71B1210B9EC8001EA6BA" |
||||
BuildableName = "InteropTestsCallOptions.xctest" |
||||
BlueprintName = "InteropTestsCallOptions" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,95 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0700" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84421BE152B5000708E8" |
||||
BuildableName = "InteropTestsLocalCleartext.xctest" |
||||
BlueprintName = "InteropTestsLocalCleartext" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84421BE152B5000708E8" |
||||
BuildableName = "InteropTestsLocalCleartext.xctest" |
||||
BlueprintName = "InteropTestsLocalCleartext" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
<SkippedTests> |
||||
<Test |
||||
Identifier = "InteropTests"> |
||||
</Test> |
||||
</SkippedTests> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84421BE152B5000708E8" |
||||
BuildableName = "InteropTestsLocalCleartext.xctest" |
||||
BlueprintName = "InteropTestsLocalCleartext" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84421BE152B5000708E8" |
||||
BuildableName = "InteropTestsLocalCleartext.xctest" |
||||
BlueprintName = "InteropTestsLocalCleartext" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Test"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,63 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0920" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EC5E4302081856B000EF4AD" |
||||
BuildableName = "InteropTestsLocalCleartextCFStream.xctest" |
||||
BlueprintName = "InteropTestsLocalCleartextCFStream" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
<SkippedTests> |
||||
<Test |
||||
Identifier = "InteropTests"> |
||||
</Test> |
||||
</SkippedTests> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,63 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0920" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EC5E441208185CE000EF4AD" |
||||
BuildableName = "InteropTestsLocalSSLCFStream.xctest" |
||||
BlueprintName = "InteropTestsLocalSSLCFStream" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
<SkippedTests> |
||||
<Test |
||||
Identifier = "InteropTests"> |
||||
</Test> |
||||
</SkippedTests> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
language = "" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,56 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0930" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Cronet" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EB2A2F42109284500EB4B69" |
||||
BuildableName = "InteropTestsMultipleChannels.xctest" |
||||
BlueprintName = "InteropTestsMultipleChannels" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Cronet" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,61 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0920" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Test" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EC5E420208177CC000EF4AD" |
||||
BuildableName = "InteropTestsRemoteCFStream.xctest" |
||||
BlueprintName = "InteropTestsRemoteCFStream" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
<SkippedTests> |
||||
<Test |
||||
Identifier = "InteropTests"> |
||||
</Test> |
||||
</SkippedTests> |
||||
</TestableReference> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,104 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0730" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EE84BF01D4717E40050C6CC" |
||||
BuildableName = "InteropTestsRemoteWithCronet.xctest" |
||||
BlueprintName = "InteropTestsRemoteWithCronet" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Cronet" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EE84BF01D4717E40050C6CC" |
||||
BuildableName = "InteropTestsRemoteWithCronet.xctest" |
||||
BlueprintName = "InteropTestsRemoteWithCronet" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
<SkippedTests> |
||||
<Test |
||||
Identifier = "InteropTests"> |
||||
</Test> |
||||
</SkippedTests> |
||||
</TestableReference> |
||||
</Testables> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EE84BF01D4717E40050C6CC" |
||||
BuildableName = "InteropTestsRemoteWithCronet.xctest" |
||||
BlueprintName = "InteropTestsRemoteWithCronet" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Cronet" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EE84BF01D4717E40050C6CC" |
||||
BuildableName = "InteropTestsRemoteWithCronet.xctest" |
||||
BlueprintName = "InteropTestsRemoteWithCronet" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Cronet" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "5EE84BF01D4717E40050C6CC" |
||||
BuildableName = "InteropTestsRemoteWithCronet.xctest" |
||||
BlueprintName = "InteropTestsRemoteWithCronet" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Cronet"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Cronet" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,90 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0700" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84121BE15179000708E8" |
||||
BuildableName = "RxLibraryUnitTests.xctest" |
||||
BlueprintName = "RxLibraryUnitTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84121BE15179000708E8" |
||||
BuildableName = "RxLibraryUnitTests.xctest" |
||||
BlueprintName = "RxLibraryUnitTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84121BE15179000708E8" |
||||
BuildableName = "RxLibraryUnitTests.xctest" |
||||
BlueprintName = "RxLibraryUnitTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "63DC84121BE15179000708E8" |
||||
BuildableName = "RxLibraryUnitTests.xctest" |
||||
BlueprintName = "RxLibraryUnitTests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,80 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "1010" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "YES" |
||||
buildForArchiving = "YES" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "635697C61B14FC11007A7283" |
||||
BuildableName = "libTests.a" |
||||
BlueprintName = "Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
</Testables> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "635697C61B14FC11007A7283" |
||||
BuildableName = "libTests.a" |
||||
BlueprintName = "Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "635697C61B14FC11007A7283" |
||||
BuildableName = "libTests.a" |
||||
BlueprintName = "Tests" |
||||
ReferencedContainer = "container:Tests.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,22 +0,0 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>$(DEVELOPMENT_LANGUAGE)</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
Loading…
Reference in new issue