public void Client_Start_TriesToReconnectToNewServerIfItFailes() { //arrange var tries = 0; var tcpManager = new StubITcpClientManager { ConnectString = endPointString => { if (tries == 0) { tries++; return(false); } return(true); } }; var client = new Client(tcpManager); //act client.Start(this.runSettings); //assert // no excetion Assert.IsTrue(tries > 0); }
public void Client_SendMessage_CallsConnectIfDisconnected() { //arrange bool calledConnect; var tcpManager = new StubITcpClientManager() { IsClientConnectedGet = () => false, SendMessageString = message => true, ConnectString = message => { calledConnect = true; return(true); } }; var client = new Client(tcpManager); client.Start(this.runSettings); //act calledConnect = false; var sentMessage = client.SendMessage("Test"); //assert Assert.IsTrue(calledConnect); Assert.IsTrue(sentMessage); }
public void Client_Stop_ClosesManagerOnStop() { //arrange var calledCloseManager = false; var tcpManager = new StubITcpClientManager() { Close = () => calledCloseManager = true }; var client = new Client(tcpManager); //act client.Stop(); //assert Assert.IsTrue(calledCloseManager); }
public void Client_Start_CallsClosefCanNotConnect() { //arrange var calledStopTrue = false; var tcpManager = new StubITcpClientManager() { ConnectString = endPoint => false, Close = () => { calledStopTrue = true; } }; var client = new Client(tcpManager); //act client.Start(runSettings); //assert Assert.IsTrue(calledStopTrue); }
public void AppFactory_GetEchoApp_ReturnsCorrectMode() { //Arrange var clientManager = new StubITcpClientManager(); var serverManager = new StubITcpServerManager(); var clientApp = new StubClient(clientManager); var serverApp = new StubServer(serverManager); var appFacory = new EchoAppFactory(clientApp, serverApp); //Act var factoryClient = appFacory.GetEchoApp(RunMode.Client); var factoryServer = appFacory.GetEchoApp(RunMode.Server); //Assert Assert.AreEqual(factoryClient, clientApp); Assert.AreEqual(factoryServer, serverApp); Assert.AreNotEqual(factoryServer, clientApp); }
public void Client_Start_CallsConnectOnStart() { //arrange var calledConnect = false; var tcpManager = new StubITcpClientManager() { ConnectString = endpoints => { calledConnect = true; return(true); } }; var client = new Client(tcpManager); //act client.Start(runSettings); //assert Assert.IsTrue(calledConnect); }