コード例 #1
0
ファイル: Client.Test.cs プロジェクト: DmitryTahoma/Diary
        public void SendCommandTest(string ip, int port, int mls, string cmd, string param1, string param2, string param3, string expectedResult)
        {
            correctSettings = new SocketSettings.SocketSettings(ip, port, mls);
            Server server       = new Server(new TestCommands(), correctSettings);
            Thread serverThread = new Thread(server.Run);

            serverThread.Start();
            Thread.Sleep(100);
            try
            {
                Client client       = new Client(correctSettings);
                string result       = "";
                Thread clientThread = new Thread(() =>
                {
                    result = client.SendCommand(cmd, new string[] { param1, param2, param3 });
                });
                clientThread.Start();
                Thread.Sleep(600);

                Assert.AreEqual(expectedResult, result);
            }
            finally
            {
                server.Stop();
            }
        }
コード例 #2
0
ファイル: Client.Test.cs プロジェクト: DmitryTahoma/Diary
        public void SendTest(string ip, int port, string message, string expectedRespnse)
        {
            correctSettings = new SocketSettings.SocketSettings(ip, port, 1000);
            Server server       = new Server(new TestCommands(), correctSettings);
            Thread serverThread = new Thread(new ThreadStart(server.Run));

            serverThread.Start();
            Thread.Sleep(100);
            try
            {
                Client client = new Client(correctSettings);

                Task clients = new Task(new Action(() => {
                    for (int i = 0; i < 10; ++i)
                    {
                        Assert.AreEqual(expectedRespnse, client.Send(message));
                    }
                }));
                clients.Start();
                clients.Wait(5000);
                Assert.IsTrue(clients.IsCompleted);
            }
            catch (Exception exc)
            {
                Assert.Fail(exc.ToString());
            }
            finally
            {
                server.Stop();
            }
        }
コード例 #3
0
ファイル: Server.Test.cs プロジェクト: DmitryTahoma/Diary
        public void ServerIsRunning(string message, string serverIP, int serverPort, string expectedResponce)
        {
            correctSettings = new SocketSettings.SocketSettings(serverIP, serverPort, 1000);
            Server server       = new Server(new TestCommands(), serverIP, serverPort, 100);
            Thread serverThread = new Thread(new ThreadStart(server.Run));

            serverThread.Start();
            try
            {
                Assert.AreEqual(expectedResponce, Send(message));
            }
            finally
            {
                server.Stop();
            }
        }
コード例 #4
0
ファイル: Note.Test.cs プロジェクト: DmitryTahoma/Diary
        public void AutoTimingTest(string name, string text, string newName, string newText)
        {
            SocketSettings.SocketSettings settings = new SocketSettings.SocketSettings("192.168.0.107", 11221, 300);
            ServerProgram server = new ServerProgram(settings);

            server.Run();
            server.ExecuteCommand("rnu", new string[] { "Login", "Password", "Name" });
            DBHelper helper = new DBHelper(settings);

            DBHelper.Login    = "******";
            DBHelper.Password = "******";

            Note note = new Note(name, text, true);

            Thread.Sleep(500);

            Assert.AreEqual(name, note.Name);
            Assert.AreEqual(text, note.Text);
            Assert.IsTrue(DBContext.Notes.Where(x => x.Id == note.Id).Count() == 1);
            ServerRealization.Database.Context.Note dbNote = DBContext.Notes.Where(x => x.Id == note.Id).First();
            Assert.AreEqual(name, dbNote.Name);
            Assert.AreEqual(text, dbNote.Text);
            Assert.IsTrue(new TimeSpan(0, 0, 1) > (note.Created > dbNote.Created ? note.Created - dbNote.Created : dbNote.Created - note.Created));
            Assert.IsTrue(new TimeSpan(0, 0, 1) > (note.LastChanged > dbNote.LastChanged ? note.LastChanged - dbNote.LastChanged : dbNote.LastChanged - note.LastChanged));

            note.Name = newName;
            note.Text = newText;
            Thread.Sleep(7000);
            if (name != newName)
            {
                Assert.AreNotEqual(newName, dbNote.Name);
            }
            if (text != newText)
            {
                Assert.AreNotEqual(newText, dbNote.Text);
            }

            Thread.Sleep(3500);
            Assert.AreEqual(newName, dbNote.Name);
            Assert.AreEqual(newText, dbNote.Text);

            server.Stop();
            Thread.Sleep(1000);
        }
コード例 #5
0
ファイル: Server.Test.cs プロジェクト: DmitryTahoma/Diary
        public void ClientWaitResponseWithDelayTest(string message, string ip, int port, int serverWait, int clientWait)
        {
            correctSettings = new SocketSettings.SocketSettings(ip, port, serverWait);
            Server server       = new Server(null, correctSettings);
            Thread serverThread = new Thread(new ThreadStart(server.Run));

            serverThread.Start();
            try
            {
                Assert.AreEqual("c0", Send(message, clientWait));
            }
            finally
            {
                if (server != null)
                {
                    server.Stop();
                }
            }
        }
コード例 #6
0
ファイル: Client.Test.cs プロジェクト: DmitryTahoma/Diary
 public void TestInitialize()
 {
     correctSettings = new SocketSettings.SocketSettings("192.168.0.107", 11221, 1000);
 }