Exemplo n.º 1
0
        public void IfNoAppropriateItemsAreFoundAssignNothing()
        {
            var action    = new PurchaseMeleeWeapon(shop);
            var character = CharacterTestTemplates.AverageBob();

            //With no specification nothing should match
            action.ExecuteStep(character);
            Assert.Empty(character.Inventory.Weapons);
        }
Exemplo n.º 2
0
        public void CharactersGetAMeleeWeaponIfTheyAreProficient()
        {
            //Bad test, but good enough for now
            var action        = new PurchaseMeleeWeapon(shop);
            var proficiencies = new string[] { "simple", "martial" };
            var character     = CharacterTestTemplates.AverageBob();

            character.Inventory.CoinPurse.SetValue(30000);
            character.Offense.AddWeaponProficiencies(proficiencies);

            action.ExecuteStep(character);
            Assert.Equal(character.Inventory.Weapons.Count(), 1);
            Assert.True(character.Inventory.Weapons.Any(x => x.Type != WeaponType.Ranged));
            Assert.False(character.Inventory.Weapons.Any(x => x.Type == WeaponType.Ranged));
            Assert.False(character.Inventory.Weapons.Any(x => x.Level == WeaponTrainingLevel.Exotic));
        }
Exemplo n.º 3
0
 public void PurchasingAMeleeWeaponSpendsMoney()
 {
     character.Inventory.CoinPurse.SetValue(30000);
     subject.ExecuteStep(character);
     Assert.Equal(27000, character.Inventory.CoinPurse.Value);
 }