public void Test_Add_Distant_Friend() { var targetSession = TestHelpers.Instance.GenerateSession(); var friendRequestHolder = new FriendRequestHolder(); friendRequestHolder.FriendRequestCharacters.TryAdd(Guid.NewGuid(), new Tuple <long, long>(targetSession.Character.CharacterId, _session.Character.CharacterId)); var flPacket = new FlPacket { CharacterName = targetSession.Character.Name }; TestHelpers.Instance.ConnectedAccountHttpClient .Setup(s => s.GetCharacter(targetSession.Character.CharacterId, null)) .Returns((new ServerConfiguration(), new ConnectedAccount { ChannelId = 1, ConnectedCharacter = new Character { Id = targetSession.Character.CharacterId } })); TestHelpers.Instance.ConnectedAccountHttpClient .Setup(s => s.GetCharacter(_session.Character.CharacterId, null)) .Returns((new ServerConfiguration(), new ConnectedAccount { ChannelId = 1, ConnectedCharacter = new Character { Id = _session.Character.CharacterId } })); using var friend = new FriendController(_logger, _characterRelationDao, TestHelpers.Instance.CharacterDao, friendRequestHolder, TestHelpers.Instance.ConnectedAccountHttpClient.Object); TestHelpers.Instance.FriendHttpClient.Setup(s => s.AddFriend(It.IsAny <FriendShipRequest>())) .Returns(friend.AddFriend(new FriendShipRequest { CharacterId = _session.Character.CharacterId, FinsPacket = new FinsPacket { CharacterId = targetSession.Character.VisualId, Type = FinsPacketType.Accepted } })); _flPacketHandler.Execute(flPacket, _session); Assert.IsTrue(_characterRelationDao.FirstOrDefault(s => (s.CharacterId == _session.Character.CharacterId) && (s.RelatedCharacterId == targetSession.Character.CharacterId) && (s.RelationType == CharacterRelationType.Friend)) != null); }
public void Test_Add_Not_Requested_Friend() { var finsPacket = new FinsPacket { CharacterId = _targetSession.Character.CharacterId, Type = FinsPacketType.Accepted }; using var friend = new FriendController(_logger, _characterRelationDao, TestHelpers.Instance.CharacterDao, _friendRequestHolder, _connectedAccountHttpClient.Object); _friendHttpClient.Setup(s => s.AddFriend(It.IsAny <FriendShipRequest>())) .Returns(friend.AddFriend(new FriendShipRequest { CharacterId = _session.Character.CharacterId, FinsPacket = finsPacket })); _finsPacketHandler.Execute(finsPacket, _session); Assert.IsFalse(_characterRelationDao.LoadAll().Any()); }
public void Test_Add_Friend() { _friendRequestHolder.FriendRequestCharacters.TryAdd(Guid.NewGuid(), new Tuple <long, long>(_targetSession.Character.CharacterId, _session.Character.CharacterId)); var finsPacket = new FinsPacket { CharacterId = _targetSession.Character.CharacterId, Type = FinsPacketType.Accepted }; using var friend = new FriendController(_logger, _characterRelationDao, TestHelpers.Instance.CharacterDao, _friendRequestHolder, _connectedAccountHttpClient.Object); _friendHttpClient.Setup(s => s.AddFriend(It.IsAny <FriendShipRequest>())) .Returns(friend.AddFriend(new FriendShipRequest { CharacterId = _session.Character.CharacterId, FinsPacket = finsPacket })); _finsPacketHandler.Execute(finsPacket, _session); Assert.IsTrue(_characterRelationDao.LoadAll().Count() == 2); }