add some more tests
This commit is contained in:
parent
84499d4c21
commit
90c7c9aadc
@ -23,16 +23,75 @@ class SocketBasicEmitTest: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func testEmpyEmit() {
|
func testEmpyEmit() {
|
||||||
let engine = SocketTestEngine(client: socket, expectedSendString: "2[\"test\"]", expectedNumberOfBinary: 0)
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "2[\"test\"]",
|
||||||
|
expectedNumberOfBinary: 0,
|
||||||
|
expectedBinary: nil)
|
||||||
socket.setTestEngine(engine)
|
socket.setTestEngine(engine)
|
||||||
socket.emitTest("test")
|
socket.emitTest("test")
|
||||||
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func testNullEmit() {
|
||||||
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "2[\"test\",null]",
|
||||||
|
expectedNumberOfBinary: 0,
|
||||||
|
expectedBinary: nil)
|
||||||
|
socket.setTestEngine(engine)
|
||||||
|
socket.emitTest("test", NSNull())
|
||||||
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
|
}
|
||||||
|
|
||||||
func testStringEmit() {
|
func testStringEmit() {
|
||||||
let engine = SocketTestEngine(client: socket, expectedSendString: "2[\"test\",\"foo bar\"]", expectedNumberOfBinary: 0)
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "2[\"test\",\"foo bar\"]",
|
||||||
|
expectedNumberOfBinary: 0,
|
||||||
|
expectedBinary: nil)
|
||||||
socket.setTestEngine(engine)
|
socket.setTestEngine(engine)
|
||||||
socket.emitTest("test", "foo bar")
|
socket.emitTest("test", "foo bar")
|
||||||
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func testJSONEmit() {
|
||||||
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "2[\"test\",{\"test\":\"hello\",\"hello\":1,\"foobar\":true,\"null\":null}]",
|
||||||
|
expectedNumberOfBinary: 0,
|
||||||
|
expectedBinary: nil)
|
||||||
|
socket.setTestEngine(engine)
|
||||||
|
socket.emitTest("test", ["foobar": true, "hello": 1, "test": "hello", "null": NSNull()])
|
||||||
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
|
}
|
||||||
|
|
||||||
|
func testArrayEmit() {
|
||||||
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "2[\"test\",[\"hello\",1,{\"test\":\"test\"}]]",
|
||||||
|
expectedNumberOfBinary: 0,
|
||||||
|
expectedBinary: nil)
|
||||||
|
socket.setTestEngine(engine)
|
||||||
|
socket.emitTest("test", ["hello", 1, ["test": "test"]])
|
||||||
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
|
}
|
||||||
|
|
||||||
|
func testBinaryEmit() {
|
||||||
|
let data = "test".dataUsingEncoding(NSUTF8StringEncoding)!
|
||||||
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "51-[\"test\",{\"num\":0,\"_placeholder\":true}]",
|
||||||
|
expectedNumberOfBinary: 1,
|
||||||
|
expectedBinary: [data])
|
||||||
|
socket.setTestEngine(engine)
|
||||||
|
socket.emitTest("test", data)
|
||||||
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
|
}
|
||||||
|
|
||||||
|
func testMultipleBinaryEmit() {
|
||||||
|
let data = "test".dataUsingEncoding(NSUTF8StringEncoding)!
|
||||||
|
let data2 = "test2".dataUsingEncoding(NSUTF8StringEncoding)!
|
||||||
|
let engine = SocketTestEngine(client: socket,
|
||||||
|
expectedSendString: "52-[\"test\",{\"data2\":{\"num\":0,\"_placeholder\":true},\"data1\":{\"num\":1,\"_placeholder\":true}}]",
|
||||||
|
expectedNumberOfBinary: 2,
|
||||||
|
expectedBinary: [data2, data])
|
||||||
|
socket.setTestEngine(engine)
|
||||||
|
socket.emitTest("test", ["data1": data, "data2": data2])
|
||||||
|
XCTAssert(engine.socketDidCorrectlyCreatePacket())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -31,6 +31,8 @@ import Foundation
|
|||||||
class SocketTestEngine: NSObject, SocketEngineSpec {
|
class SocketTestEngine: NSObject, SocketEngineSpec {
|
||||||
private let expectedNumberOfBinary: Int
|
private let expectedNumberOfBinary: Int
|
||||||
private let expectedSendString: String
|
private let expectedSendString: String
|
||||||
|
private var expectedBinary: [NSData]?
|
||||||
|
private var binary: [NSData]?
|
||||||
private var sendString: String!
|
private var sendString: String!
|
||||||
private var numOfBinary: Int!
|
private var numOfBinary: Int!
|
||||||
|
|
||||||
@ -43,10 +45,11 @@ class SocketTestEngine: NSObject, SocketEngineSpec {
|
|||||||
|
|
||||||
weak var client: SocketEngineClient?
|
weak var client: SocketEngineClient?
|
||||||
|
|
||||||
init(client: SocketIOClient, expectedSendString: String, expectedNumberOfBinary: Int) {
|
init(client: SocketIOClient, expectedSendString: String, expectedNumberOfBinary: Int, expectedBinary: [NSData]?) {
|
||||||
self.client = client
|
self.client = client
|
||||||
self.expectedSendString = expectedSendString
|
self.expectedSendString = expectedSendString
|
||||||
self.expectedNumberOfBinary = expectedNumberOfBinary
|
self.expectedNumberOfBinary = expectedNumberOfBinary
|
||||||
|
self.expectedBinary = expectedBinary
|
||||||
}
|
}
|
||||||
|
|
||||||
required init(client: SocketEngineClient, sessionDelegate: NSURLSessionDelegate?) {
|
required init(client: SocketEngineClient, sessionDelegate: NSURLSessionDelegate?) {
|
||||||
@ -65,10 +68,13 @@ class SocketTestEngine: NSObject, SocketEngineSpec {
|
|||||||
func send(msg: String, withData datas: [NSData]?) {
|
func send(msg: String, withData datas: [NSData]?) {
|
||||||
sendString = msg
|
sendString = msg
|
||||||
numOfBinary = datas?.count ?? 0
|
numOfBinary = datas?.count ?? 0
|
||||||
|
binary = datas
|
||||||
}
|
}
|
||||||
|
|
||||||
func socketDidCorrectlyCreatePacket() -> Bool {
|
func socketDidCorrectlyCreatePacket() -> Bool {
|
||||||
return expectedNumberOfBinary == numOfBinary && sendString == expectedSendString
|
return expectedNumberOfBinary == numOfBinary
|
||||||
|
&& sendString == expectedSendString
|
||||||
|
&& expectedBinary ?? [] == binary ?? []
|
||||||
}
|
}
|
||||||
|
|
||||||
func write(msg: String, withType type: SocketEnginePacketType, withData data: [NSData]?) {}
|
func write(msg: String, withType type: SocketEnginePacketType, withData data: [NSData]?) {}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user