commit
						9b44bfb754
					
				@ -1 +0,0 @@
 | 
				
			|||||||
3.1
 | 
					 | 
				
			||||||
@ -17,6 +17,7 @@ Pod::Spec.new do |s|
 | 
				
			|||||||
  s.source       = { :git => "https://github.com/socketio/socket.io-client-swift.git", :tag => 'v9.0.1' }
 | 
					  s.source       = { :git => "https://github.com/socketio/socket.io-client-swift.git", :tag => 'v9.0.1' }
 | 
				
			||||||
  s.source_files  = "Source/**/*.swift"
 | 
					  s.source_files  = "Source/**/*.swift"
 | 
				
			||||||
  s.requires_arc = true
 | 
					  s.requires_arc = true
 | 
				
			||||||
  s.pod_target_xcconfig = {'SWIFT_VERSION' => '3.1'}
 | 
					  s.swift_version = "4.2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # s.dependency 'Starscream', '~> 0.9' # currently this repo includes Starscream swift files
 | 
					  # s.dependency 'Starscream', '~> 0.9' # currently this repo includes Starscream swift files
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
				
			|||||||
@ -537,7 +537,7 @@
 | 
				
			|||||||
				TargetAttributes = {
 | 
									TargetAttributes = {
 | 
				
			||||||
					572EF2181B51F16C00EEBB58 = {
 | 
										572EF2181B51F16C00EEBB58 = {
 | 
				
			||||||
						CreatedOnToolsVersion = 6.4;
 | 
											CreatedOnToolsVersion = 6.4;
 | 
				
			||||||
						LastSwiftMigration = 0920;
 | 
											LastSwiftMigration = 1010;
 | 
				
			||||||
					};
 | 
										};
 | 
				
			||||||
					572EF2231B51F16C00EEBB58 = {
 | 
										572EF2231B51F16C00EEBB58 = {
 | 
				
			||||||
						CreatedOnToolsVersion = 6.4;
 | 
											CreatedOnToolsVersion = 6.4;
 | 
				
			||||||
@ -889,7 +889,7 @@
 | 
				
			|||||||
				SKIP_INSTALL = YES;
 | 
									SKIP_INSTALL = YES;
 | 
				
			||||||
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
 | 
									SWIFT_OPTIMIZATION_LEVEL = "-Onone";
 | 
				
			||||||
				SWIFT_SWIFT3_OBJC_INFERENCE = On;
 | 
									SWIFT_SWIFT3_OBJC_INFERENCE = On;
 | 
				
			||||||
				SWIFT_VERSION = 4.0;
 | 
									SWIFT_VERSION = 4.2;
 | 
				
			||||||
				TARGETED_DEVICE_FAMILY = "1,2";
 | 
									TARGETED_DEVICE_FAMILY = "1,2";
 | 
				
			||||||
				VERSIONING_SYSTEM = "apple-generic";
 | 
									VERSIONING_SYSTEM = "apple-generic";
 | 
				
			||||||
				VERSION_INFO_PREFIX = "";
 | 
									VERSION_INFO_PREFIX = "";
 | 
				
			||||||
@ -941,7 +941,7 @@
 | 
				
			|||||||
				SDKROOT = iphoneos;
 | 
									SDKROOT = iphoneos;
 | 
				
			||||||
				SKIP_INSTALL = YES;
 | 
									SKIP_INSTALL = YES;
 | 
				
			||||||
				SWIFT_SWIFT3_OBJC_INFERENCE = On;
 | 
									SWIFT_SWIFT3_OBJC_INFERENCE = On;
 | 
				
			||||||
				SWIFT_VERSION = 4.0;
 | 
									SWIFT_VERSION = 4.2;
 | 
				
			||||||
				TARGETED_DEVICE_FAMILY = "1,2";
 | 
									TARGETED_DEVICE_FAMILY = "1,2";
 | 
				
			||||||
				VALIDATE_PRODUCT = YES;
 | 
									VALIDATE_PRODUCT = YES;
 | 
				
			||||||
				VERSIONING_SYSTEM = "apple-generic";
 | 
									VERSIONING_SYSTEM = "apple-generic";
 | 
				
			||||||
 | 
				
			|||||||
@ -46,7 +46,7 @@ class SocketBasicPacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testJSONEmit() {
 | 
					    func testJSONEmit() {
 | 
				
			||||||
        let expectedSendString = "2[\"test\",{\"null\":null,\"hello\":1,\"test\":\"hello\",\"foobar\":true}]"
 | 
					        let expectedSendString = "2[\"test\",{\"foobar\":true,\"hello\":1,\"null\":null,\"test\":\"hello\"}]"
 | 
				
			||||||
        let sendData: [Any] = ["test", ["foobar": true, "hello": 1, "test": "hello", "null": NSNull()]]
 | 
					        let sendData: [Any] = ["test", ["foobar": true, "hello": 1, "test": "hello", "null": NSNull()]]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/", ack: false)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/", ack: false)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
@ -71,7 +71,7 @@ class SocketBasicPacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testMultipleBinaryEmit() {
 | 
					    func testMultipleBinaryEmit() {
 | 
				
			||||||
        let expectedSendString = "52-[\"test\",{\"data2\":{\"_placeholder\":true,\"num\":0},\"data1\":{\"_placeholder\":true,\"num\":1}}]"
 | 
					        let expectedSendString = "52-[\"test\",{\"data1\":{\"_placeholder\":true,\"num\":1},\"data2\":{\"_placeholder\":true,\"num\":0}}]"
 | 
				
			||||||
        let sendData: [Any] = ["test", ["data1": data, "data2": data2] as NSDictionary]
 | 
					        let sendData: [Any] = ["test", ["data1": data, "data2": data2] as NSDictionary]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/", ack: false)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/", ack: false)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
@ -123,7 +123,7 @@ class SocketBasicPacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testJSONAck() {
 | 
					    func testJSONAck() {
 | 
				
			||||||
        let expectedSendString = "30[{\"null\":null,\"hello\":1,\"test\":\"hello\",\"foobar\":true}]"
 | 
					        let expectedSendString = "30[{\"foobar\":true,\"hello\":1,\"null\":null,\"test\":\"hello\"}]"
 | 
				
			||||||
        let sendData = [["foobar": true, "hello": 1, "test": "hello", "null": NSNull()]]
 | 
					        let sendData = [["foobar": true, "hello": 1, "test": "hello", "null": NSNull()]]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/", ack: true)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/", ack: true)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
@ -140,7 +140,7 @@ class SocketBasicPacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testMultipleBinaryAck() {
 | 
					    func testMultipleBinaryAck() {
 | 
				
			||||||
        let expectedSendString = "62-0[{\"data2\":{\"_placeholder\":true,\"num\":0},\"data1\":{\"_placeholder\":true,\"num\":1}}]"
 | 
					        let expectedSendString = "62-0[{\"data1\":{\"_placeholder\":true,\"num\":1},\"data2\":{\"_placeholder\":true,\"num\":0}}]"
 | 
				
			||||||
        let sendData = [["data1": data, "data2": data2]]
 | 
					        let sendData = [["data1": data, "data2": data2]]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/", ack: true)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/", ack: true)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
 | 
				
			|||||||
@ -38,7 +38,7 @@ class SocketNamespacePacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testJSONEmit() {
 | 
					    func testJSONEmit() {
 | 
				
			||||||
        let expectedSendString = "2/swift,[\"test\",{\"null\":null,\"test\":\"hello\",\"hello\":1,\"foobar\":true}]"
 | 
					        let expectedSendString = "2/swift,[\"test\",{\"foobar\":true,\"hello\":1,\"null\":null,\"test\":\"hello\"}]"
 | 
				
			||||||
        let sendData: [Any] = ["test", ["foobar": true, "hello": 1, "test": "hello", "null": NSNull()] as NSDictionary]
 | 
					        let sendData: [Any] = ["test", ["foobar": true, "hello": 1, "test": "hello", "null": NSNull()] as NSDictionary]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/swift", ack: false)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/swift", ack: false)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
@ -64,7 +64,7 @@ class SocketNamespacePacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testMultipleBinaryEmit() {
 | 
					    func testMultipleBinaryEmit() {
 | 
				
			||||||
        let expectedSendString = "52-/swift,[\"test\",{\"data2\":{\"_placeholder\":true,\"num\":0},\"data1\":{\"_placeholder\":true,\"num\":1}}]"
 | 
					        let expectedSendString = "52-/swift,[\"test\",{\"data1\":{\"_placeholder\":true,\"num\":1},\"data2\":{\"_placeholder\":true,\"num\":0}}]"
 | 
				
			||||||
        let sendData: [Any] = ["test", ["data1": data, "data2": data2] as NSDictionary]
 | 
					        let sendData: [Any] = ["test", ["data1": data, "data2": data2] as NSDictionary]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/swift", ack: false)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: -1, nsp: "/swift", ack: false)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
@ -114,7 +114,7 @@ class SocketNamespacePacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testJSONAck() {
 | 
					    func testJSONAck() {
 | 
				
			||||||
        let expectedSendString = "3/swift,0[{\"null\":null,\"hello\":1,\"test\":\"hello\",\"foobar\":true}]"
 | 
					        let expectedSendString = "3/swift,0[{\"foobar\":true,\"hello\":1,\"null\":null,\"test\":\"hello\"}]"
 | 
				
			||||||
        let sendData = [["foobar": true, "hello": 1, "test": "hello", "null": NSNull()]]
 | 
					        let sendData = [["foobar": true, "hello": 1, "test": "hello", "null": NSNull()]]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/swift", ack: true)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/swift", ack: true)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
@ -131,7 +131,7 @@ class SocketNamespacePacketTest: XCTestCase {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    func testMultipleBinaryAck() {
 | 
					    func testMultipleBinaryAck() {
 | 
				
			||||||
        let expectedSendString = "62-/swift,0[{\"data2\":{\"_placeholder\":true,\"num\":0},\"data1\":{\"_placeholder\":true,\"num\":1}}]"
 | 
					        let expectedSendString = "62-/swift,0[{\"data1\":{\"_placeholder\":true,\"num\":1},\"data2\":{\"_placeholder\":true,\"num\":0}}]"
 | 
				
			||||||
        let sendData = [["data1": data, "data2": data2]]
 | 
					        let sendData = [["data1": data, "data2": data2]]
 | 
				
			||||||
        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/swift", ack: true)
 | 
					        let packet = SocketPacket.packetFromEmit(sendData, id: 0, nsp: "/swift", ack: true)
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
 | 
				
			|||||||
@ -226,7 +226,8 @@ public final class SocketEngine : NSObject, URLSessionDelegate, SocketEnginePoll
 | 
				
			|||||||
    private func handleBase64(message: String) {
 | 
					    private func handleBase64(message: String) {
 | 
				
			||||||
        // binary in base64 string
 | 
					        // binary in base64 string
 | 
				
			||||||
        let noPrefix = String(message[message.index(message.startIndex, offsetBy: 2)..<message.endIndex])
 | 
					        let noPrefix = String(message[message.index(message.startIndex, offsetBy: 2)..<message.endIndex])
 | 
				
			||||||
        if let data = NSData(base64Encoded: noPrefix, options: .ignoreUnknownCharacters) {
 | 
					
 | 
				
			||||||
 | 
					        if let data = Data(base64Encoded: noPrefix, options: .ignoreUnknownCharacters) {
 | 
				
			||||||
            client?.parseEngineBinaryData(data as Data)
 | 
					            client?.parseEngineBinaryData(data as Data)
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -31,7 +31,11 @@ enum JSONError : Error {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
extension Array {
 | 
					extension Array {
 | 
				
			||||||
    func toJSON() throws -> Data {
 | 
					    func toJSON() throws -> Data {
 | 
				
			||||||
        return try JSONSerialization.data(withJSONObject: self, options: JSONSerialization.WritingOptions(rawValue: 0))
 | 
					        if #available(iOS 11.0, OSX 10.13, tvOS 11.0, *) {
 | 
				
			||||||
 | 
					            return try JSONSerialization.data(withJSONObject: self, options: [.sortedKeys])
 | 
				
			||||||
 | 
					        } else {
 | 
				
			||||||
 | 
					            return try JSONSerialization.data(withJSONObject: self, options: JSONSerialization.WritingOptions(rawValue: 0))
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user