public void TestNetworkedUserInput() { var scl = new ServerPlayerListener(new NetworkConnectorServer(15005, 15006), npf); var client = new NetworkConnectorClient(); client.Connect("127.0.0.1", 15005); var proxy = new ProxyPlayerInputHandler(client.UserInputHandlerTransporter); // Done setup scl.UpdateConnectedPlayers(); proxy.OnSave(); Thread.Sleep(100); scl.Players.First().NetworkPlayerInputForwarder.ForwardReceivedInputs(); inputHandler.Received().OnSave(); }
private static void testInputHandler(IClientPacketTransporter <UserInputHandlerPacket> proxyTrans, IClientPacketTransporter <UserInputHandlerPacket> realTrans) { var world = TestWorldBuilder.createTestWorld(20, 10); var proxyHandler = new ProxyPlayerInputHandler(proxyTrans); var realHandler = Substitute.For <IPlayerInputHandler>(); var inputReceiver = new NetworkPlayerInputForwarder(realTrans, realHandler, world); proxyHandler.OnSave(); Thread.Sleep(100); inputReceiver.ForwardReceivedInputs(); realHandler.Received().OnSave(); proxyHandler.OnNextTool(); Thread.Sleep(100); inputReceiver.ForwardReceivedInputs(); realHandler.Received().OnNextTool(); proxyHandler.OnPreviousTool(); Thread.Sleep(100); inputReceiver.ForwardReceivedInputs(); realHandler.Received().OnPreviousTool(); var pos1 = new Point2(3, 4); proxyHandler.OnLeftClick(world.GetVoxel(pos1)); Thread.Sleep(100); inputReceiver.ForwardReceivedInputs(); realHandler.Received().OnLeftClick(world.GetVoxel(pos1)); var pos2 = new Point2(3, 4); proxyHandler.OnRightClick(world.GetVoxel(pos2)); Thread.Sleep(100); inputReceiver.ForwardReceivedInputs(); realHandler.Received().OnRightClick(world.GetVoxel(pos2)); }