Пример #1
0
        public void GrantsAWeaponBonus()
        {
            var bond      = new DivineBondWeapon();
            var character = CharacterTestTemplates.Paladin();

            character.SetLevel(13);
            character.Add(bond);
            Assert.Equal(bond.WeaponBonus, 3);
            Assert.Equal(bond.UsesPerDay, 3);
            Assert.Equal(bond.DisplayString(), "Divine Bond (Weapon +3, 3/day)");
        }
Пример #2
0
        public void SelectsAUniqueMercyFromAvailableLevelAndAddsToMerciesAbility()
        {
            var mercies = new Mercy[] {
                new Mercy("Mercy 1", 3),
                new Mercy("Mercy 2", 3),
                new Mercy("Mercy 3", 6),
                new Mercy("Mercy 4", 6)
            };
            var character = CharacterTestTemplates.Paladin();

            character.SetLevel(5);

            var process = new SelectMercy(EntityGateway <Mercy> .LoadFromList(mercies));

            process.ExecuteStep(character);
            process.ExecuteStep(character);
            var selected = character.Get <Mercies>();

            Assert.Equal(selected.MercyList.Count, 2);
            Assert.Equal(selected.MercyList[0].Level, 3);
            Assert.Equal(selected.MercyList[1].Level, 3);
            Assert.NotEqual(selected.MercyList[0].Name, selected.MercyList[1].Name);
        }