public CharacterGenerator(IAlignmentGenerator alignmentGenerator, ICharacterClassGenerator characterClassGenerator, IRaceGenerator raceGenerator, IAdjustmentsSelector adjustmentsSelector, IRandomizerVerifier randomizerVerifier, IPercentileSelector percentileSelector, IAbilitiesGenerator abilitiesGenerator, ICombatGenerator combatGenerator, IEquipmentGenerator equipmentGenerator, IMagicGenerator magicGenerator, Generator generator, ICollectionsSelector collectionsSelector) { this.alignmentGenerator = alignmentGenerator; this.characterClassGenerator = characterClassGenerator; this.raceGenerator = raceGenerator; this.abilitiesGenerator = abilitiesGenerator; this.combatGenerator = combatGenerator; this.equipmentGenerator = equipmentGenerator; this.generator = generator; this.adjustmentsSelector = adjustmentsSelector; this.randomizerVerifier = randomizerVerifier; this.percentileSelector = percentileSelector; this.magicGenerator = magicGenerator; this.collectionsSelector = collectionsSelector; }
public void Setup() { mockArmorClassGenerator = new Mock<IArmorClassGenerator>(); mockHitPointsGenerator = new Mock<IHitPointsGenerator>(); mockSavingThrowsGenerator = new Mock<ISavingThrowsGenerator>(); mockAdjustmentsSelector = new Mock<IAdjustmentsSelector>(); mockCollectionsSelector = new Mock<ICollectionsSelector>(); combatGenerator = new CombatGenerator(mockArmorClassGenerator.Object, mockHitPointsGenerator.Object, mockSavingThrowsGenerator.Object, mockAdjustmentsSelector.Object, mockCollectionsSelector.Object); characterClass = new CharacterClass(); feats = new List<Feat>(); stats = new Dictionary<string, Stat>(); equipment = new Equipment(); race = new Race(); maxDexterityBonuses = new Dictionary<string, int>(); sizeModifiers = new Dictionary<string, int>(); averageBaseAttacks = new List<string>(); goodBaseAttacks = new List<string>(); racialBaseAttackAdjustments = new Dictionary<string, int>(); initiativeFeats = new List<string>(); attackBonusFeats = new List<string>(); poorBaseAttacks = new List<string>(); characterClass.Name = "class name"; characterClass.Level = 20; race.Size = "size"; stats[StatConstants.Constitution] = new Stat(StatConstants.Constitution); stats[StatConstants.Constitution].Value = 9266; stats[StatConstants.Dexterity] = new Stat(StatConstants.Dexterity); stats[StatConstants.Dexterity].Value = 42; stats[StatConstants.Strength] = new Stat(StatConstants.Strength); stats[StatConstants.Strength].Value = 600; racialBaseAttackAdjustments[string.Empty] = 0; sizeModifiers[race.Size] = 0; maxDexterityBonuses[string.Empty] = 42; averageBaseAttacks.Add("other class name"); goodBaseAttacks.Add("other class name"); poorBaseAttacks.Add(characterClass.Name); mockAdjustmentsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Adjustments.MaxDexterityBonus)).Returns(maxDexterityBonuses); mockAdjustmentsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Adjustments.SizeModifiers)).Returns(sizeModifiers); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.ClassNameGroups, GroupConstants.GoodBaseAttack)).Returns(goodBaseAttacks); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.ClassNameGroups, GroupConstants.AverageBaseAttack)).Returns(averageBaseAttacks); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.ClassNameGroups, GroupConstants.PoorBaseAttack)).Returns(poorBaseAttacks); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.FeatGroups, GroupConstants.Initiative)).Returns(initiativeFeats); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.FeatGroups, FeatConstants.AttackBonus)).Returns(attackBonusFeats); mockAdjustmentsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Adjustments.RacialBaseAttackAdjustments)).Returns(racialBaseAttackAdjustments); }