public async Task Test_Delete_Friend_No_Friend() { var targetSession = TestHelpers.Instance.GenerateSession(); var guid = Guid.NewGuid(); var targetGuid = Guid.NewGuid(); var list = new List <CharacterDto> { _session !.Character !, targetSession.Character ! }; _characterDao !.Setup(s => s.FirstOrDefault(It.IsAny <Expression <Func <CharacterDto, bool> > >())) .Returns((Expression <Func <CharacterDto, bool> > exp) => list.FirstOrDefault(exp.Compile())); var blDelPacket = new BlDelPacket { CharacterId = targetSession.Character.CharacterId }; await _blDelPacketHandler !.ExecuteAsync(blDelPacket, _session).ConfigureAwait(false); var lastpacket = (InfoPacket?)_session.LastPackets.FirstOrDefault(s => s is InfoPacket); Assert.AreEqual(GameLanguage.Instance.GetMessageFromKey(LanguageKey.NOT_IN_BLACKLIST, _session.Account.Language), lastpacket !.Message); } }
public async Task Test_Delete_Friend_When_Disconnected() { var targetGuid = Guid.NewGuid(); var list = new List <CharacterDto> { _session !.Character !, new CharacterDto { CharacterId = 2, Name = "test" } }; _characterDao !.Setup(s => s.FirstOrDefault(It.IsAny <Expression <Func <CharacterDto, bool> > >())) .Returns((Expression <Func <CharacterDto, bool> > exp) => list.FirstOrDefault(exp.Compile())); _characterRelationDao !.InsertOrUpdate(new[] { new CharacterRelationDto { RelatedCharacterId = 2, CharacterRelationId = targetGuid, CharacterId = _session.Character.CharacterId, RelationType = CharacterRelationType.Blocked } }); var blDelPacket = new BlDelPacket { CharacterId = 2 }; await _blDelPacketHandler !.ExecuteAsync(blDelPacket, _session).ConfigureAwait(false); Assert.IsTrue(!_characterRelationDao.LoadAll().Any()); }
public async Task Test_Delete_FriendAsync() { var targetSession = await TestHelpers.Instance.GenerateSessionAsync().ConfigureAwait(false); Guid.NewGuid(); var targetGuid = Guid.NewGuid(); var list = new List <CharacterDto> { _session !.Character !, targetSession.Character ! }; _characterDao !.Setup(s => s.FirstOrDefaultAsync(It.IsAny <Expression <Func <CharacterDto, bool> > >())) .Returns((Expression <Func <CharacterDto, bool> > exp) => Task.FromResult(list.FirstOrDefault(exp.Compile())) !); await _characterRelationDao !.TryInsertOrUpdateAsync(new[] { new CharacterRelationDto { RelatedCharacterId = targetSession.Character.CharacterId, CharacterRelationId = targetGuid, CharacterId = _session.Character.CharacterId, RelationType = CharacterRelationType.Blocked } }).ConfigureAwait(false); var blDelPacket = new BlDelPacket { CharacterId = targetSession.Character.CharacterId }; await _blDelPacketHandler !.ExecuteAsync(blDelPacket, _session).ConfigureAwait(false); Assert.IsTrue(!_characterRelationDao.LoadAll().Any()); }
public void Test_Delete_Friend_When_Disconnected() { var guid = Guid.NewGuid(); var targetGuid = Guid.NewGuid(); var list = new List <CharacterDto> { _session.Character, new CharacterDto { CharacterId = 2, Name = "test" } }; _characterDao.Setup(s => s.FirstOrDefault(It.IsAny <Expression <Func <CharacterDto, bool> > >())) .Returns((Expression <Func <CharacterDto, bool> > exp) => list.FirstOrDefault(exp.Compile())); _characterRelationDao.InsertOrUpdate(new[] { new CharacterRelationDto { RelatedCharacterId = 2, CharacterRelationId = targetGuid, CharacterId = _session.Character.CharacterId, RelationType = CharacterRelationType.Blocked } }); var blDelPacket = new BlDelPacket { CharacterId = 2 }; _BlDelPacketHandler.Execute(blDelPacket, _session); Assert.IsTrue(_characterRelationDao.LoadAll().Count() == 0); }
/// <summary> /// bldel packet /// </summary> /// <param name="bldelPacket"></param> public void BlackListDelete(BlDelPacket bldelPacket) { if (!Session.Character.CharacterRelations.Values.Any(s => s.RelatedCharacterId == bldelPacket.CharacterId && s.RelationType == CharacterRelationType.Blocked)) { Session.SendPacket(new InfoPacket { Message = Language.Instance.GetMessageFromKey(LanguageKey.NOT_IN_BLACKLIST, Session.Account.Language) }); return; } Session.Character.DeleteBlackList(bldelPacket.CharacterId); }
public void Test_Delete_Blacklist() { var blinsPacket = new BlInsPacket { CharacterId = _targetSession.Character.CharacterId }; _handler.BlackListAdd(blinsPacket); var bldelPacket = new BlDelPacket { CharacterId = _targetSession.Character.CharacterId }; _handler.BlackListDelete(bldelPacket); Assert.IsTrue(_session.Character.CharacterRelations.All(s => s.Value.RelatedCharacterId != _targetSession.Character.CharacterId)); }
public void Test_Delete_Blacklist_When_Disconnected() { var guid = Guid.NewGuid(); _session.Character.CharacterRelations.TryAdd(guid, new CharacterRelation { CharacterId = _session.Character.CharacterId, CharacterRelationId = guid, RelatedCharacterId = 2, RelationType = CharacterRelationType.Blocked }); var bldelPacket = new BlDelPacket { CharacterId = 2 }; Assert.IsTrue(_session.Character.CharacterRelations.Any(s => s.Value.RelatedCharacterId == 2)); _handler.BlackListDelete(bldelPacket); Assert.IsTrue(_session.Character.CharacterRelations.All(s => s.Value.RelatedCharacterId != 2)); }