public bool ToggleConnection(Guid fromUserId, Guid toUserId) { if (fromUserId == toUserId) { return(false); } var userConnection = _userConnectionRepository.FindUserConnection(fromUserId, toUserId); if (userConnection == null) { var fromUser = _userRepository.FindById(fromUserId); var toUser = _userRepository.FindById(toUserId); if (fromUser != null && toUser != null) { userConnection = new UserConnection { FromUser = fromUser, ToUser = toUser }; _userConnectionRepository.Create(userConnection); return(true); } return(false); } _userConnectionRepository.Delete(userConnection); return(false); }
private static void CreateUsers() { IUserRepository userRepository = ServiceLocator.Current.GetInstance <IUserRepository>(); IUserConnectionRepository userConnectionRepository = ServiceLocator.Current.GetInstance <IUserConnectionRepository>(); IUnitOfWork unitOfWork = ServiceLocator.Current.GetInstance <IUnitOfWork>(); var usertest1 = CreateValidUser("usertest1", "Martin", "Test1"); var usertest2A = CreateValidUser("usertest2A", "Arnold", "Test2A"); var usertest2B = CreateValidUser("usertest2B", "Victor", "Test2B"); var usertest3 = CreateValidUser("usertest3", "Victor", "Test3"); var usertest4 = CreateValidUser("usertest4", "Victor", "Test4"); var usertest5 = CreateValidUser("usertest5", "Victor", "Test5"); var usertest6 = CreateValidUser("usertest6", "Victor", "Test6"); var usertest7 = CreateValidUser("usertest7", "Victor", "Test7"); var usertest8 = CreateValidUser("usertest8", "Victor", "Test8"); var usertest9 = CreateValidUser("usertest9", "Victor", "Test9"); var unknown1 = CreateValidUser("unknown1", "Victor", "Unknown1"); var unknown2 = CreateValidUser("unknown2", "Victor", "Unknown2"); userRepository.Create(usertest1); userRepository.Create(usertest2A); userRepository.Create(usertest2B); userRepository.Create(usertest3); userRepository.Create(usertest4); userRepository.Create(usertest5); userRepository.Create(usertest6); userRepository.Create(usertest7); userRepository.Create(usertest8); userRepository.Create(usertest9); userRepository.Create(unknown1); userRepository.Create(unknown2); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest1, ToUser = usertest2A }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest2A, ToUser = usertest2B }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest2A, ToUser = usertest3 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest2B, ToUser = usertest2A }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest3, ToUser = usertest4 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest4, ToUser = usertest5 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest5, ToUser = usertest6 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest6, ToUser = usertest7 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest7, ToUser = usertest8 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = usertest8, ToUser = usertest9 }); userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = unknown1, ToUser = unknown2 }); unitOfWork.Commit(); }
public void connection_must_be_removed_after_toggle_when_connection_exists() { var user1 = DatabaseHelper.CreateValidUser("user3"); var user2 = DatabaseHelper.CreateValidUser("user4"); _userReposiotry.Create(user1); _userReposiotry.Create(user2); _userConnectionRepository.Create(new UserConnection { Id = Guid.NewGuid(), FromUser = user1, ToUser = user2 }); _unitOfWork.Commit(); bool userHaveConnection = _userConnectionService.ToggleConnection(user1.Id, user2.Id); _unitOfWork.Commit(); Assert.IsFalse(userHaveConnection, "User must not have connection after toggle connection"); Assert.IsFalse(_userConnectionService.IsConnectionBetweenUsers(user1.Id, user2.Id), "User must not have connection after toggle connection"); }