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() { mockBooleanPercentileSelector = new Mock<IBooleanPercentileSelector>(); mockAdjustmentsSelector = new Mock<IAdjustmentsSelector>(); mockCollectionsSelector = new Mock<ICollectionsSelector>(); characterClassGenerator = new CharacterClassGenerator(mockAdjustmentsSelector.Object, mockCollectionsSelector.Object, mockBooleanPercentileSelector.Object); alignment = new Alignment(); mockLevelRandomizer = new Mock<ILevelRandomizer>(); mockClassNameRandomizer = new Mock<IClassNameRandomizer>(); specialistFieldQuantities = new Dictionary<string, int>(); prohibitedFieldQuantities = new Dictionary<string, int>(); specialistFields = new List<string>(); prohibitedFields = new List<string>(); mockAdjustmentsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Adjustments.SpecialistFieldQuantities)).Returns(specialistFieldQuantities); mockAdjustmentsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Adjustments.ProhibitedFieldQuantities)).Returns(prohibitedFieldQuantities); mockClassNameRandomizer.Setup(r => r.Randomize(alignment)).Returns(ClassName); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.SpecialistFields, ClassName)).Returns(specialistFields); mockCollectionsSelector.Setup(s => s.SelectFrom(TableNameConstants.Set.Collection.ProhibitedFields, ClassName)).Returns(prohibitedFields); mockCollectionsSelector.Setup(s => s.SelectRandomFrom(It.IsAny<IEnumerable<string>>())).Returns((IEnumerable<string> c) => c.First()); }