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(); }
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); }