public void Using_ability_destroys_curse(Phase phase) { // Arrange var context = new TestContext(); var player = context.Player; var curse = context.CreateCard<CurseOfWar>(); var card1 = context.CreateBasicCard<Torch>(); var card2 = context.CreateBasicCard<Regular>(); context.SetPlayerHand(curse, card1, card2); context.SetPlayerState(phase); context.WhenSelectingCardsSelectFirst(); // Act context.UseAbilityOf(curse); // Assert Assert.That(player.Hand, Has.No.Member(curse)); }
public void Using_ability_destroys_one_random_card() { // Arrange var context = new TestContext(); var player = context.Player; var curse = context.CreateCard<CurseOfWar>(); var card1 = context.CreateBasicCard<Torch>(); var card2 = context.CreateBasicCard<Regular>(); context.SetPlayerHand(curse, card1, card2); context.SetPlayerState(Phase.Village); context.WhenSelectingCardsSelectFirst(); // Act context.UseAbilityOf(curse); // Assert Assert.That(player.Hand.Count, Is.EqualTo(1)); }
public void If_terror_destroys_disease_then_can_use_ability_one_additional_time() { var context = new TestContext(); var terror = context.CreateCard<Skinshifter>("Terror"); var disease1 = context.CreateCard<CurseOfDecay>(); var disease2 = context.CreateCard<CurseOfDecay>(); var disease3 = context.CreateCard<CurseOfDecay>(); context.SetPlayerHand(terror, disease1, disease2, disease3); context.SetPlayerState(Phase.Dungeon); context.WhenSelectingOptionSelect("Destroy"); context.WhenSelectingCardsSelectFirst(); var ability = context.GetAbilityOf(terror); // Act context.UseAbility(ability); context.UseAbilityOf(terror); // Assert Assert.That(context.Player.Hand, Has.No.Member(disease1)); Assert.That(context.Player.Hand, Has.No.Member(disease2)); Assert.That(context.Player.ActiveAbilities, Has.No.Member(ability)); }