public void Ossuous_can_be_attacked_if_hero_of_at_least_level_1_is_present() { // Arrange var context = new TestContext(); var hero = context.DrawHeroFromTopOfDeck(x => x.Level == 1); context.SetPlayerHand(hero); var ossuous = context.SetMonsterInFirstRank<UndeadSkeleton>("Ossuous"); // Act Assert.That(context.Game.Dungeon.Ranks[0].Card, Is.SameAs(ossuous)); context.Player.SelectMonster(); // Assert Assert.That(context.SelectCardsIds, Has.Member(ossuous.Id), "Valid targets should contain Ossuous"); }
public void A_hero_not_armed_with_a_pike_is_not_immune_to_battle_effects() { // Arrange var context = new TestContext(); var player = context.Player; var hero = context.CreateCard<Criochan>(); var pike = context.CreateCard<Pike>(); context.SetPlayerHand(hero, pike); var ettin = context.SetMonsterInFirstRank<OgreHumanoid>("Ettin"); // Act context.WhenBattling(ettin); // Assert Assert.That(player.Hand, Has.No.Member(hero), "Ettin eats hero."); }
public void Pike_only_protects_the_hero_that_has_it_equipped() { // Arrange var context = new TestContext(); var player = context.Player; var equippedHero = context.CreateCard<Criochan>(); var unequippedHero = context.CreateCard<Criochan>(); var pike = context.CreateCard<Pike>(); context.SetPlayerHand(equippedHero, pike); var ettin = context.SetMonsterInFirstRank<OgreHumanoid>("Ettin"); // Act context.HeroEquipsWeapon(equippedHero, pike); context.WhenBattling(ettin); // Assert Assert.That(player.Hand, Has.Member(equippedHero), "Pike should protect hero from Ettin."); Assert.That(player.Hand, Has.No.Member(unequippedHero), "Ettin eats unequipped hero."); }
public void Pike_does_not_protect_from_non_battle_effects() { // Arrange var context = new TestContext(); var player = context.Player; var hero = context.CreateBasicCard<Regular>(); var pike = context.CreateCard<Pike>(); context.SetPlayerHand(hero, pike); var ogre = context.SetMonsterInFirstRank<OgreHumanoid>("Ogre"); // Act context.HeroEquipsWeapon(hero, pike); context.SetPlayerState(Phase.Aftermath); player.OnSelectMonster(ogre); context.UseAbilityOf(ogre); // Assert Assert.That(player.Hand, Has.No.Member(hero), "Pike should not protect hero from Ogre."); }