Beispiel #1
0
        public void teamuserstest()
        {
            Data.Entities.HLContext _db   = new Data.Entities.HLContext();
            Data.UserRepository     test  = new Data.UserRepository(_db);
            Data.TeamRepository     test2 = new Data.TeamRepository(_db);
            string username = "******";
            string password = "******";

            Domain.User user1 = new Domain.User();
            user1.UserFill(username, password);
            string username2 = "Akash";
            string password2 = "other";

            Domain.User user2 = new Domain.User();
            user2.UserFill(username2, password2);
            bool actual1  = false;
            bool actual2  = false;
            bool expected = true;

            test.AddUser(user1);
            test.AddUser(user2);
            test.Save();

            var user1inteam2 = test.GetUserByUsername(username);
            var user2inteam2 = test.GetUserByUsername(username2);

            List <Domain.User> usersinteam1 = new List <Domain.User>();

            usersinteam1.Add(user1inteam2);
            usersinteam1.Add(user2inteam2);

            bool user1role = true;
            bool user2role = false;

            List <Boolean> team1roleslist = new List <Boolean>();

            team1roleslist.Add(user1role);
            team1roleslist.Add(user2role);

            Domain.Team team1 = new Domain.Team(usersinteam1, team1roleslist);
            team1.teamname = "Team1";

            test2.AddTeam(team1);
            _db.SaveChanges();
            var team1got = test2.GetByTeamName("Team1");

            Assert.AreEqual(team1got.teamname, "Team1");

            _db.SaveChanges();

            var usersinteamlist = test.TeamUsers(team1.teamname);

            foreach (var userinteamlist in usersinteamlist)
            {
                if (userinteamlist.username == username)
                {
                    actual1 = true;
                }
                if (userinteamlist.username == username2)
                {
                    actual2 = true;
                }
            }

            Assert.AreEqual(expected, actual1);
            Assert.AreEqual(expected, actual2);

            test.DeleteUser(user1inteam2);
            test.DeleteUser(user2inteam2);
            test2.DeleteTeam(team1got);
            test.Save();
            _db.SaveChanges();
        }
Beispiel #2
0
        public void GetByTeamNameTest()
        {
            Data.Entities.HLContext _db      = new Data.Entities.HLContext();
            Data.TeamRepository     test     = new Data.TeamRepository(_db);
            Data.UserRepository     usertest = new Data.UserRepository(_db);
            bool success;



            Domain.Team miteam = new Domain.Team();
            miteam.teamname = "grisaia";
            Domain.User user1 = new Domain.User("username1", "password1");

            /*
             * //get team id for next query
             * Data.Entities.Team ii = _db.Team.Where(ss => ss.Teamname.Equals("grisaia")).FirstOrDefault();
             * //first remove all userteams associated with this team
             * IEnumerable<Data.Entities.UserTeam> grisaiausers = _db.UserTeam.Where(a => a.Teamid == ii.Id);
             * _db.SaveChanges();
             * if (grisaiausers.GetEnumerator()!=null)
             * {
             *  foreach (var item in grisaiausers)
             *  {
             *      _db.UserTeam.Remove(item);
             *
             *  }
             *  _db.SaveChanges();
             *
             *
             * }
             */

            //remove user from db if it exist
            success = usertest.DeleteUser(user1);
            usertest.Save();
            //add user to the database;
            success = usertest.AddUser(user1);
            usertest.Save();
            if (!success)
            {
                Assert.Fail();
            }
            _db.SaveChanges();

            //obtain the user from the database so it has the userID
            var x = _db.User.Where(a => a.Username.Equals(user1.username)).FirstOrDefault();

            Domain.User user1withID = Mapper.Map(x);

            miteam.Userlist.Add(user1withID);
            miteam.Roles.Add(true);

            //remove team from db if it exist
            success = test.DeleteTeam(miteam);
            //add team to database
            success = test.AddTeam(miteam);



            //obtain the team from the database so it has a teamID
            var y = _db.Team.Where(gg => gg.Teamname.Equals(miteam.teamname)).FirstOrDefault();

            Domain.Team miteamwithID = Mapper.Map(y);
            miteamwithID.Userlist.Add(user1withID);
            miteamwithID.Roles.Add(true);

            //create the userteam entity from the above.
            IEnumerable <Data.Entities.UserTeam> userteam = Mapper.Map(miteam).UserTeam;



            Domain.Team newteam = test.GetByTeamName("grisaia");



            Assert.AreEqual(newteam.Userlist.Count, miteam.Userlist.Count);
            Assert.AreEqual(newteam.Roles.Count, miteam.Roles.Count);

            //remove stuffs from database.


            //delete the userteam enetities in the database if they are already there
            foreach (var item in userteam)
            {
                var uu = _db.UserTeam.Where(gg => gg.Id == item.Id).FirstOrDefault();
                if (uu != null)
                {
                    _db.UserTeam.Remove(item);
                    _db.SaveChanges();
                }
            }

            success = test.DeleteTeam(miteamwithID);
            success = usertest.DeleteUser(user1withID);
        }