Example #1
0
        public void When_Creating_Group_Then_You_Are_Admin_And_Member()
        {
            _business = new ServerBusiness(GroupsSaveFile, ClientsSaveFile);
            _business.CreateUser("potato", "potàto");
            _business.CreateGroup("FrenchFries", "Fried batons of potato", "potato");

            Assert.AreEqual("potato", _business.GetGroupList().FirstOrDefault(g => g.Name == "FrenchFries")?.Administrator.Name);
            Assert.IsTrue(_business.GetGroupList().FirstOrDefault(g => g.Name == "FrenchFries")?.Members.Exists(m => m.Name == "potato") == true);
        }
Example #2
0
        public void When_Changing_Group_Admin_Then_Rights_Are_Swapped()
        {
            _business = new ServerBusiness(GroupsSaveFile, ClientsSaveFile);
            _business.CreateUser("soyElAdmin", "holaSombreros");
            _business.CreateUser("noSoyElAdmin", "laAguaAzul");
            _business.CreateGroup("LosBanditos", "¡Mira este hijo!", "soyElAdmin");

            _business.SendClientGroupInvitation("soyElAdmin", "noSoyElAdmin", "LosBanditos");
            _business.AcknowledgeInvite("noSoyElAdmin", "LosBanditos", true);
            Assert.AreEqual("soyElAdmin", _business.GetGroupList().FirstOrDefault(g => g.Name == "LosBanditos")?.Administrator.Name);

            _business.ChangeAdministratorGroup("soyElAdmin", "noSoyElAdmin", "LosBanditos");
            Assert.AreEqual("noSoyElAdmin", _business.GetGroupList().FirstOrDefault(g => g.Name == "LosBanditos")?.Administrator.Name);
        }
Example #3
0
        public void When_Creating_With_Existing_NonEmpty_Files_Then_Loads_Correctly()
        {
            _business = new ServerBusiness(_loadGroups, _loadClients);
            var clients = _business.GetClientList();
            var groups  = _business.GetGroupList();

            Assert.IsNotNull(clients);
            Assert.IsNotNull(groups);
        }
Example #4
0
        public void When_Admin_Kicks_User_Then_User_Is_Removed()
        {
            _business = new ServerBusiness(GroupsSaveFile, ClientsSaveFile);
            _business.CreateUser("soyElAdmin", "holaSombreros");
            _business.CreateUser("noSoyElAdmin", "laAguaAzul");
            _business.CreateGroup("LosBanditos", "¡Mira este hijo!", "soyElAdmin");
            _business.SendClientGroupInvitation("soyElAdmin", "noSoyElAdmin", "LosBanditos");
            _business.AcknowledgeInvite("noSoyElAdmin", "LosBanditos", true);

            var group = _business.GetGroupList().FirstOrDefault(g => g.Name == "LosBanditos");

            Assert.IsTrue(group?.Members.Count == 2);

            _business.KickUserFromGroup("soyElAdmin", "noSoyElAdmin", "LosBanditos");

            Assert.IsTrue(group.Members.Count == 1);
            Assert.IsTrue(_business.GetGroupListForClient("noSoyElAdmin").Count == 0);
        }