示例#1
0
        public void AddClient_InValidClientArrivalClientSide_ReturnsFalse(string ip, int port, string username)
        {
            IUXClientSessionManager _sessionManager = clientSessionManagerB;
            bool expectedValue = false;
            bool isValid       = _sessionManager.AddClient(ip, port, username);

            Assert.AreEqual(expectedValue, isValid);
        }
示例#2
0
        public void AddClient_ValidClientArrivalClientSide_ReturnsTrue()
        {
            IUXClientSessionManager _sessionManager = clientSessionManagerB;

            // Setting the IP address and Port for fake server
            bool isValid       = _sessionManager.AddClient(validIP, int.Parse(validPort), "John");
            bool expectedValue = true;

            Assert.AreEqual(expectedValue, isValid);

            // Testing for invalid IPs and usernames
        }
示例#3
0
        //[TestCase("This is sample summary")]
        //[TestCase(null)]
        //[TestCase("")]
        //[Test]
        //public void GetSummary_GetSummary_ReturnsSummary(string testSummary)
        //{
        //    UserData user = new("John", 1);
        //    // Adding a user at client
        //    AddUserClientSide(user.username, user.userID);
        //    string recievedSummary = null;
        //    SummaryData summaryData = new(testSummary);
        //    ServerToClientData testData = new("getSummary",null,summaryData, user);
        //    Thread getSummaryThread = new Thread(new ThreadStart(()=> { recievedSummary = clientSessionManagerB.GetSummary(); }));
        //    getSummaryThread.Start();
        //    Thread.Sleep(1000);
        //    clientSessionManagerB.OnDataReceived(_serializer.Serialize(testData));
        //    while (getSummaryThread.IsAlive) ;
        //    Assert.AreEqual(testSummary, recievedSummary);
        //}

        //[TestCase("This is sample summary")]
        //[TestCase(null)]
        //[TestCase("")]
        //[Test]
        //public void GetAnalytics_TelemetryAnalyticsRetrieval_ReturnsTelemetryAnalytics(string testSummary)
        //{
        //    UserData user = new("John", 1);
        //    // Adding a user at client
        //    AddUserClientSide(user.username, user.userID);
        //     recievedSummary = null;
        //    SummaryData summaryData = new(testSummary);
        //    ServerToClientData testData = new("getSummary", null, summaryData, user);
        //    Thread getSummaryThread = new Thread(new ThreadStart(() => { recievedSummary = clientSessionManagerB.GetSummary(); }));
        //    getSummaryThread.Start();
        //    Thread.Sleep(1000);
        //    clientSessionManagerB.OnDataReceived(_serializer.Serialize(testData));
        //    while (getSummaryThread.IsAlive) ;
        //    Assert.AreEqual(testSummary, recievedSummary);
        //}



        private void AddUserClientSide(string username, int userId, string ip = "192.168.1.1", string port = "8080")
        {
            UserData userData = new(username, userId);
            IUXClientSessionManager _uxSessionManager      = clientSessionManagerB;
            INotificationHandler    _networkSessionManager = clientSessionManagerB;
            // Creating the user who joined
            ServerToClientData serverToClientData   = new("removeClient", null, null, userData);
            string             serialisedServerData = _serializer.Serialize(serverToClientData);

            // Adding the client to client first
            _testCommunicator.ipAddressAndPort = ip + ":" + port;
            _uxSessionManager.AddClient(ip, int.Parse(port), "John");
            _networkSessionManager.OnDataReceived(serialisedServerData);
        }
示例#4
0
        public void RemoveClient_ClientDeparture_SendsServerDepartedUser()
        {
            IUXClientSessionManager _uxSessionManager = clientSessionManagerB;
            string username = "******";
            int    userId   = 1;

            AddUserClientSide(username, userId);

            _testCommunicator.sentData = null;
            // When client leaves
            _uxSessionManager.RemoveClient();

            ClientToServerData deserialisedObject = _serializer.Deserialize <ClientToServerData>(_testCommunicator.sentData);

            Assert.NotNull(deserialisedObject);
            Assert.AreEqual(username, deserialisedObject.username);
            Assert.AreEqual(userId, deserialisedObject.userID);
        }
示例#5
0
 public void Setup()
 {
     _clientSessionManager = SessionManagerFactory.GetClientSessionManager();
     _serverSessionManager = SessionManagerFactory.GetServerSessionManager();
 }