Exemplo n.º 1
0
        public void PartyResponseAcceptNewParty()
        {
            var handler   = new PartyResponseAction(this.GetGameServer());
            var player    = CreatePartyMember();
            var requester = CreatePartyMember();

            player.LastPartyRequester = requester;
            player.PlayerState.TryAdvanceTo(PlayerState.PartyRequest);

            handler.HandleResponse(player, true);
            Assert.That(player.Party, Is.Not.Null);
            Assert.That(player.Party.PartyMaster, Is.SameAs(requester));
            Assert.That(player.LastPartyRequester, Is.Null);
            Assert.That(player.Party.PartyList, Contains.Item(player));
            Mock.Get(player.PlayerView.PartyView).Verify(v => v.UpdatePartyList(), Times.AtLeastOnce);
            Mock.Get(requester.PlayerView.PartyView).Verify(v => v.UpdatePartyList(), Times.AtLeastOnce);
        }
Exemplo n.º 2
0
        public void PartyResponseAcceptExistingParty()
        {
            var handler = new PartyResponseAction(this.GetGameServer());

            // first put the player in a party with another player
            var player = CreatePartyMember();

            player.LastPartyRequester = CreatePartyMember();
            player.PlayerState.TryAdvanceTo(PlayerState.PartyRequest);
            handler.HandleResponse(player, true);

            // now another player will try to request party from the player, which should fail
            var requester = CreatePartyMember();

            player.LastPartyRequester = requester;
            handler.HandleResponse(player, true);
            Assert.That(player.Party.PartyList, Is.Not.Contains(requester));
            Assert.That(player.LastPartyRequester, Is.Null);
            Assert.That(requester.Party, Is.Null);
            Mock.Get(player.PlayerView.PartyView).Verify(v => v.ShowPartyRequest(requester), Times.Never);
        }
Exemplo n.º 3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PartyResponseHandler"/> class.
 /// </summary>
 /// <param name="gameContext">The game context.</param>
 public PartyResponseHandler(IGameContext gameContext)
 {
     this.action = new PartyResponseAction(gameContext);
 }