public void TestStartRandomDice() { string[] toArgs = new string[2]; toArgs[0] = "5"; toArgs[1] = "..\\..\\..\\dictionary.txt"; ThreadPool.QueueUserWorkItem((e) => { BoggleServer.Main(toArgs); }); List <StringSocket> clients = new List <StringSocket>(); int CLIENT_COUNT = 2;//not a constant, I know. for (int i = 0; i < CLIENT_COUNT; i++) { TcpClient tempClient = new TcpClient("localhost", 2000); Socket tempclientSocket = tempClient.Client; StringSocket SS = new StringSocket(tempclientSocket, new UTF8Encoding()); clients.Add(SS); } string clientString0 = ""; string clientString1 = ""; clients[0].BeginSend("PLAY Dylan\n", (e, p) => { clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); }, 1); Thread.Sleep(1250); clients[1].BeginSend("PLAY YY\n", (e, p) => { clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); }, 1); Thread.Sleep(1250); string boardtemp = clientString0.Substring(6, 16); Assert.AreEqual("START " + boardtemp + " " + toArgs[0] + " YY", clientString0); Assert.AreEqual("START " + boardtemp + " " + toArgs[0] + " Dylan", clientString1); }
public void TestScoringDiffSizeWords() { string[] toArgs = new string[3]; toArgs[0] = "20"; toArgs[1] = "..\\..\\..\\dictionary.txt"; toArgs[2] = "SERSPATGLINESERS"; ThreadPool.QueueUserWorkItem((e) => { BoggleServer.Main(toArgs); }); List <StringSocket> clients = new List <StringSocket>(); int CLIENT_COUNT = 2;//not a constant, I know. for (int i = 0; i < CLIENT_COUNT; i++) { TcpClient tempClient = new TcpClient("localhost", 2000); Socket tempclientSocket = tempClient.Client; StringSocket SS = new StringSocket(tempclientSocket, new UTF8Encoding()); clients.Add(SS); } string clientString0 = ""; string clientString1 = ""; clients[0].BeginSend("PLAY Dylan\n", (e, p) => { clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); }, 1); clients[1].BeginSend("PLAY YY\n", (e, p) => { clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); }, 1); string clientString0next = ""; string clientString1next = ""; //bool notDone = true; clients[0].BeginSend("WORD Eateries\n", (e, p) => { }, 1); clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); //Thread.Sleep(500); clientString0next = catchMessage(clientString0, 6, "SCORE", clients[0]); //clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); clientString1next = catchMessage(clientString1, 6, "SCORE", clients[1]); Assert.AreEqual("11 0", clientString0next); Assert.AreEqual("0 11", clientString1next); // The last part of this test is not working, but it is a problem with this test as telnet shows the server is working. //Thread.Sleep(500); ////notDone = true; //clients[0].BeginSend("WORD line\n", (e, p) => { }, 1); //clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); //clientString0next = catchMessage(clientString0, 6, "SCORE", clients[0]); //clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); //clientString1next = catchMessage(clientString1, 6, "SCORE", clients[1]); //Assert.AreEqual("12 0", clientString0next); //Assert.AreEqual("0 12", clientString1next); }
public void TestStartAndStop() { string[] toArgs = new string[3]; toArgs[0] = "5"; toArgs[1] = "..\\..\\..\\dictionary.txt"; toArgs[2] = "TAPRVILRGTOAEUEQ"; ThreadPool.QueueUserWorkItem((e) => { BoggleServer.Main(toArgs); }); List <StringSocket> clients = new List <StringSocket>(); int CLIENT_COUNT = 2;//not a constant, I know. for (int i = 0; i < CLIENT_COUNT; i++) { TcpClient tempClient = new TcpClient("localhost", 2000); Socket tempclientSocket = tempClient.Client; StringSocket SS = new StringSocket(tempclientSocket, new UTF8Encoding()); clients.Add(SS); } string clientString0 = ""; string clientString1 = ""; clients[0].BeginSend("PLAY Dylan\n", (e, p) => { clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); }, 1); Thread.Sleep(1250); clients[1].BeginSend("PLAY YY\n", (e, p) => { clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); }, 1); Thread.Sleep(1250); Assert.AreEqual("START TAPRVILRGTOAEUEQ " + toArgs[0] + " YY", clientString0); Assert.AreEqual("START TAPRVILRGTOAEUEQ " + toArgs[0] + " Dylan", clientString1); string clientString0next = ""; string clientString1next = ""; clients[0].BeginSend("WORD queue\n", (e, p) => { clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); }, 1); //clientString0next = catchMessage(clientString0, 6, "SCORE", clients[0]); clients[1].BeginSend("WORD dkjflaks\n", (e, p) => { clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); }, 1); //clientString1next = catchMessage(clientString1, 6, "SCORE", clients[1]); Thread.Sleep(1250); clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); Thread.Sleep(500); clientString0next = catchMessage(clientString0, 5, "STOP", clients[0]); clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); Thread.Sleep(500); clientString1next = catchMessage(clientString1, 5, "STOP", clients[1]); Thread.Sleep(1250); Assert.AreEqual("1 QUEUE 0 0 0 1 DKJFLAKS", clientString0next); Assert.AreEqual("0 1 QUEUE 0 1 DKJFLAKS 0 ", clientString1next); }
private void init() { BoggleServer.Main(new string[] { "30", "..\\..\\..\\dictionary.txt", "TAPRVILRGTOAEUEQ" }); win1 = new BoggleClient.MainWindow(); win1.Show(); win2 = new BoggleClient.MainWindow(); win2.Show(); //System.Windows.Threading.Dispatcher.Run(); Console.WriteLine("hi"); }
static void Main(string[] args) { new Thread(() => //BoggleServer.Main(new string[] { "30", "..\\..\\..\\dictionary.txt", "TAPRVILRGTOAEUEQ" })).Start(); BoggleServer.Main(new string[] { "30", "..\\..\\..\\dictionary.txt" })).Start(); new BoggleClient.MainWindow().Show(); new BoggleClient.MainWindow().Show(); new BoggleClient.MainWindow().Show(); new BoggleClient.MainWindow().Show(); new BoggleClient.MainWindow().Show(); new BoggleClient.MainWindow().Show(); System.Windows.Threading.Dispatcher.Run(); }
public void TestDisconnect() { string[] toArgs = new string[3]; toArgs[0] = "5"; toArgs[1] = "..\\..\\..\\dictionary.txt"; toArgs[2] = "TAPRVILRGTOAEUEQ"; ThreadPool.QueueUserWorkItem((e) => { BoggleServer.Main(toArgs); }); List <StringSocket> clients = new List <StringSocket>(); int CLIENT_COUNT = 2;//not a constant, I know. for (int i = 0; i < CLIENT_COUNT; i++) { TcpClient tempClient = new TcpClient("localhost", 2000); Socket tempclientSocket = tempClient.Client; StringSocket SS = new StringSocket(tempclientSocket, new UTF8Encoding()); clients.Add(SS); } string clientString0 = ""; string clientString1 = ""; clients[0].BeginSend("PLAY Dylan\n", (e, p) => { }, 1); clients[1].BeginSend("PLAY ToClose\n", (e, p) => { clients[1].BeginReceive((s, ee, pp) => { clientString1 = s; }, 1); }, 1); Thread.Sleep(500); clientString0 = ""; string clientString0next = ""; clients[1].Close(); clients[0].BeginReceive((s, ee, pp) => { clientString0 = s; }, 1); clientString0next = catchMessage(clientString0, 0, "TERMINATED", clients[0]); Assert.AreEqual("TERMINATED", clientString0next); }