package commonsNet
import std.unittest.*
import std.unittest.testmacro.*
import std.net.TcpServerSocket
import std.net.IPSocketAddress
private class SocketClientImpl <: SocketClient {}
@Test
class SocketClientTest {
@TestCase
func testProp() {
let port = 32121u16
let server = TcpServerSocket(bindAt: port)
server.bind()
let client = SocketClientImpl()
client.setSocketFactory(None)
client.setServerSocketFactory(None)
client.defaultPort = port
@Assert(client.defaultPort, port)
client.connect(IPSocketAddress("127.0.0.1", port))
client.readTimeout = Duration.second * 10
@Assert(client.readTimeout , Duration.second * 10)
client.writeTimeout = Duration.second * 10
@Assert(client.writeTimeout , Duration.second * 10)
@Assert(client.remoteAddress.toString(), "127.0.0.1")
@Assert(client.localAddress.toString(), "127.0.0.1")
@Assert(client.remotePort, port)
@Assert(client.localPort > 0)
@Assert(client.isConnected())
client.disconnect()
}
}