iOS AppRTC: First unit test.
Tests basic session ICE connection by stubbing out network components, which have been refactored to faciliate testing.
BUG=3994
R=jiayl@webrtc.org, kjellander@webrtc.org, phoglund@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28349004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8002 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/talk/examples/objc/AppRTCDemo/ARDWebSocketChannel.m b/talk/examples/objc/AppRTCDemo/ARDWebSocketChannel.m
index 1707201..688f66d 100644
--- a/talk/examples/objc/AppRTCDemo/ARDWebSocketChannel.m
+++ b/talk/examples/objc/AppRTCDemo/ARDWebSocketChannel.m
@@ -50,7 +50,7 @@
- (instancetype)initWithURL:(NSURL *)url
restURL:(NSURL *)restURL
- delegate:(id<ARDWebSocketChannelDelegate>)delegate {
+ delegate:(id<ARDSignalingChannelDelegate>)delegate {
if (self = [super init]) {
_url = url;
_restURL = restURL;
@@ -67,7 +67,7 @@
[self disconnect];
}
-- (void)setState:(ARDWebSocketChannelState)state {
+- (void)setState:(ARDSignalingChannelState)state {
if (_state == state) {
return;
}
@@ -81,15 +81,16 @@
NSParameterAssert(clientId.length);
_roomId = roomId;
_clientId = clientId;
- if (_state == kARDWebSocketChannelStateOpen) {
+ if (_state == kARDSignalingChannelStateOpen) {
[self registerWithCollider];
}
}
-- (void)sendData:(NSData *)data {
+- (void)sendMessage:(ARDSignalingMessage *)message {
NSParameterAssert(_clientId.length);
NSParameterAssert(_roomId.length);
- if (_state == kARDWebSocketChannelStateRegistered) {
+ NSData *data = [message JSONData];
+ if (_state == kARDSignalingChannelStateRegistered) {
NSString *payload =
[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSDictionary *message = @{
@@ -120,8 +121,8 @@
}
- (void)disconnect {
- if (_state == kARDWebSocketChannelStateClosed ||
- _state == kARDWebSocketChannelStateError) {
+ if (_state == kARDSignalingChannelStateClosed ||
+ _state == kARDSignalingChannelStateError) {
return;
}
[_socket close];
@@ -140,7 +141,7 @@
- (void)webSocketDidOpen:(SRWebSocket *)webSocket {
NSLog(@"WebSocket connection opened.");
- self.state = kARDWebSocketChannelStateOpen;
+ self.state = kARDSignalingChannelStateOpen;
if (_roomId.length && _clientId.length) {
[self registerWithCollider];
}
@@ -171,7 +172,7 @@
- (void)webSocket:(SRWebSocket *)webSocket didFailWithError:(NSError *)error {
NSLog(@"WebSocket error: %@", error);
- self.state = kARDWebSocketChannelStateError;
+ self.state = kARDSignalingChannelStateError;
}
- (void)webSocket:(SRWebSocket *)webSocket
@@ -180,14 +181,14 @@
wasClean:(BOOL)wasClean {
NSLog(@"WebSocket closed with code: %ld reason:%@ wasClean:%d",
(long)code, reason, wasClean);
- NSParameterAssert(_state != kARDWebSocketChannelStateError);
- self.state = kARDWebSocketChannelStateClosed;
+ NSParameterAssert(_state != kARDSignalingChannelStateError);
+ self.state = kARDSignalingChannelStateClosed;
}
#pragma mark - Private
- (void)registerWithCollider {
- if (_state == kARDWebSocketChannelStateRegistered) {
+ if (_state == kARDSignalingChannelStateRegistered) {
return;
}
NSParameterAssert(_roomId.length);
@@ -207,7 +208,7 @@
// Registration can fail if server rejects it. For example, if the room is
// full.
[_socket send:messageString];
- self.state = kARDWebSocketChannelStateRegistered;
+ self.state = kARDSignalingChannelStateRegistered;
}
@end