public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); dataAnnotationConventionMapper = new Mock<IDataAnnotationConventionMapper>(); populateNullableDoubleService = new PopulateNullableDoubleService(dataAnnotationConventionMapper.Object); populateNullableDoubleService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void SetUp() { populateDictionaryService = new PopulateDictionaryService(); autoBuilderConfiguration = new AutoBuilderConfiguration(); autoBuilderConfiguration.DefaultCollectionItemCount = 1; populateDictionaryService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateStringService = new Mock <PopulateProperty <string> >(); populateIntService = new Mock <PopulateProperty <int> >(); populateNullableIntService = new Mock <PopulateProperty <int?> >(); populateDoubleService = new Mock <PopulateProperty <double> >(); populateNullableDoubleService = new Mock <PopulateProperty <double?> >(); populateBoolService = new Mock <PopulateProperty <bool> >(); populateNullableBoolService = new Mock <PopulateProperty <bool?> >(); populateByteService = new Mock <PopulateProperty <byte> >(); populateNullableByteService = new Mock <PopulateProperty <byte?> >(); populateDateTimeService = new Mock <PopulateProperty <DateTime> >(); populateNullableDateTimeService = new Mock <PopulateProperty <DateTime?> >(); populateUriService = new Mock <PopulateProperty <Uri> >(); populateGuidService = new Mock <PopulateProperty <Guid> >(); populateLongService = new Mock <PopulateProperty <long> >(); populateNullableLongService = new Mock <PopulateProperty <long?> >(); populateShortService = new Mock <PopulateProperty <short> >(); populateCharService = new Mock <PopulateProperty <char> >(); populateNullableCharService = new Mock <PopulateProperty <char?> >(); populateDecimalService = new Mock <PopulateProperty <decimal> >(); populateNullableDecimalService = new Mock <PopulateProperty <decimal?> >(); populateEnumService = new Mock <IPopulateEnumService>(); buildConstructorParameterService = new Mock <IBuildConstructorParametersService>(); populateComplexObjectService = new Mock <IPopulateComplexObjectService>(); populateListService = new Mock <IPopulateListService>(); populateDictionaryService = new Mock <IPopulateDictionaryService>(); populateArrayService = new Mock <IPopulateArrayService>(); propertyPopulationService = new PropertyPopulationService( populateStringService.Object, populateIntService.Object, populateNullableIntService.Object, populateDoubleService.Object, populateNullableDoubleService.Object, populateBoolService.Object, populateNullableBoolService.Object, populateByteService.Object, populateNullableByteService.Object, populateDateTimeService.Object, populateNullableDateTimeService.Object, populateUriService.Object, populateGuidService.Object, populateLongService.Object, populateNullableLongService.Object, populateShortService.Object, populateCharService.Object, populateNullableCharService.Object, populateDecimalService.Object, populateNullableDecimalService.Object, populateEnumService.Object, buildConstructorParameterService.Object, populateComplexObjectService.Object, populateListService.Object, populateDictionaryService.Object, populateArrayService.Object); propertyPopulationService.AddConfiguration(autoBuilderConfiguration); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); dataAnnotationConventionMapper = new Mock <IDataAnnotationConventionMapper>(); populateDoubleService = new PopulateDoubleService(dataAnnotationConventionMapper.Object); populateDoubleService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateStringService = new Mock<PopulateProperty<string>>(); populateIntService = new Mock<PopulateProperty<int>>(); populateNullableIntService = new Mock<PopulateProperty<int?>>(); populateDoubleService = new Mock<PopulateProperty<double>>(); populateNullableDoubleService = new Mock<PopulateProperty<double?>>(); populateBoolService = new Mock<PopulateProperty<bool>>(); populateNullableBoolService = new Mock<PopulateProperty<bool?>>(); populateByteService = new Mock<PopulateProperty<byte>>(); populateNullableByteService = new Mock<PopulateProperty<byte?>>(); populateDateTimeService = new Mock<PopulateProperty<DateTime>>(); populateNullableDateTimeService = new Mock<PopulateProperty<DateTime?>>(); populateUriService = new Mock<PopulateProperty<Uri>>(); populateGuidService = new Mock<PopulateProperty<Guid>>(); populateLongService = new Mock<PopulateProperty<long>>(); populateNullableLongService = new Mock<PopulateProperty<long?>>(); populateShortService = new Mock<PopulateProperty<short>>(); populateCharService = new Mock<PopulateProperty<char>>(); populateNullableCharService = new Mock<PopulateProperty<char?>>(); populateDecimalService = new Mock<PopulateProperty<decimal>>(); populateNullableDecimalService = new Mock<PopulateProperty<decimal?>>(); populateEnumService = new Mock<IPopulateEnumService>(); buildConstructorParameterService = new Mock<IBuildConstructorParametersService>(); populateComplexObjectService = new Mock<IPopulateComplexObjectService>(); populateListService = new Mock<IPopulateListService>(); populateDictionaryService = new Mock<IPopulateDictionaryService>(); populateArrayService = new Mock<IPopulateArrayService>(); propertyPopulationService = new PropertyPopulationService( populateStringService.Object, populateIntService.Object, populateNullableIntService.Object, populateDoubleService.Object, populateNullableDoubleService.Object, populateBoolService.Object, populateNullableBoolService.Object, populateByteService.Object, populateNullableByteService.Object, populateDateTimeService.Object, populateNullableDateTimeService.Object, populateUriService.Object, populateGuidService.Object, populateLongService.Object, populateNullableLongService.Object, populateShortService.Object, populateCharService.Object, populateNullableCharService.Object, populateDecimalService.Object, populateNullableDecimalService.Object, populateEnumService.Object, buildConstructorParameterService.Object, populateComplexObjectService.Object, populateListService.Object, populateDictionaryService.Object, populateArrayService.Object); propertyPopulationService.AddConfiguration(autoBuilderConfiguration); }
public void AddConfiguration(AutoBuilderConfiguration autoBuilderConfiguration) { configuration = autoBuilderConfiguration; populateStringService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateIntService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableIntProperty.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateDoubleService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableDoubleService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateBoolService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableBoolService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateByteService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableByteService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateDateTimeService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableDateTimeService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateUriService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateGuidService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateLongService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableLongService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateShortService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateCharService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableCharService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateDecimalService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateNullableDecimalService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateEnumService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateComplexObjectService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateListService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateDictionaryService.SetAutoBuilderConfiguration(autoBuilderConfiguration); populateArrayService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
private static string GenerateRandomStringFromDataAnnotations(PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { var minLength = autoBuilderConfiguration.StringMinLength; var maxLength = autoBuilderConfiguration.StringMaxLength; var minLengthAttribute = propertyInfo.GetCustomAttributes(typeof(MinLengthAttribute)).FirstOrDefault(); if (minLengthAttribute != null) { minLength = ((MinLengthAttribute)minLengthAttribute).Length; } var maxLengthAttribute = propertyInfo.GetCustomAttributes(typeof(MaxLengthAttribute)).FirstOrDefault(); if (maxLengthAttribute != null) { maxLength = ((MaxLengthAttribute)maxLengthAttribute).Length; } if (minLengthAttribute != null || maxLengthAttribute != null) { { return NAuto.GetRandomString( minLength, maxLength, autoBuilderConfiguration.DefaultStringCharacterSetType, autoBuilderConfiguration.DefaultStringSpaces, autoBuilderConfiguration.DefaultStringCasing, autoBuilderConfiguration.DefaultLanguage); } } var stringLengthAttribute = propertyInfo.GetCustomAttributes(typeof(StringLengthAttribute)).FirstOrDefault(); if (stringLengthAttribute != null) { var minStringLength = ((StringLengthAttribute)stringLengthAttribute).MinimumLength; var maxStringLength = ((StringLengthAttribute)stringLengthAttribute).MaximumLength; if (maxStringLength == 0) { maxStringLength = minStringLength + 50; } if (maxStringLength < minStringLength) { throw new ArgumentException("Property " + propertyInfo.Name + ": the minimum string length cannot be greater than the maximum string length..."); } return NAuto.GetRandomString( minStringLength, maxStringLength, autoBuilderConfiguration.DefaultStringCharacterSetType, autoBuilderConfiguration.DefaultStringSpaces, autoBuilderConfiguration.DefaultStringCasing, autoBuilderConfiguration.DefaultLanguage); } return null; }
public void Should_Return_Email_Type_Base_On_Property_Name() { var autoTestBuilderConfiguration = new AutoBuilderConfiguration(); var conventionsTestModel = NAuto.AutoBuild <ConventionsModel>(autoTestBuilderConfiguration) .Configure(x => x.DefaultLanguage = Language.Russian) .Construct() .Build(); conventionsTestModel.Email.ShouldContain("@"); }
public void Should_Generate_List_With_Specified_Number_Of_Arguments() { var config = new AutoBuilderConfiguration(defaultLanguage: Language.Chinese); var testModel = NAuto.AutoBuild <TestModel>(config) .Configure(x => x.DefaultLanguage = Language.Chinese) .Construct() .With(x => x.FavouriteStringList = NAuto.GetRandomList <string>(5, autoBuilderConfiguration: config)) .Build(); testModel.ShouldNotBeNull(); }
public void Should_Override_Property_With_Custom_Convention() { var autoTestBuilderConfiguration = new AutoBuilderConfiguration(); autoTestBuilderConfiguration.Conventions.Add(new ConventionMap(ConventionFilterType.Contains, "PetName", typeof(string), config => "Rex")); var conventionsTestModel = NAuto.AutoBuild <ConventionsModel>(autoTestBuilderConfiguration) .Construct() .Build(); // Assert conventionsTestModel.PetName.ShouldEqual("Rex"); conventionsTestModel.SubConventionsModel.PetName.ShouldEqual("Rex"); }
private static double GenerateRandomDoubleFromDataAnnotations(PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { var min = autoBuilderConfiguration.DoubleMinimum; var max = autoBuilderConfiguration.DoubleMaximum; var rangeAttribute = propertyInfo.GetCustomAttributes(typeof(RangeAttribute), false).FirstOrDefault(); if (rangeAttribute != null) { min = double.Parse(((RangeAttribute)rangeAttribute).Minimum.ToString()); max = double.Parse(((RangeAttribute)rangeAttribute).Maximum.ToString()); } return NAuto.GetRandomDouble(min, max); }
private static int GenerateRandomIntFromDataAnnotations(PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { var min = autoBuilderConfiguration.IntMinimum; var max = autoBuilderConfiguration.IntMaximum; var rangeAttribute = propertyInfo.GetCustomAttributes(typeof(RangeAttribute), false).FirstOrDefault(); if (rangeAttribute != null) { min = (int)((RangeAttribute)rangeAttribute).Minimum; max = (int)((RangeAttribute)rangeAttribute).Maximum; } return NAuto.GetRandomInteger(min, max); }
public static List <TModel> Get <TModel>(int numberOfItems = 2, AutoBuilderConfiguration configuration = null, Language language = Language.English) where TModel : class { var autoBuilder = configuration != null?NAuto.AutoBuild <List <TModel> >(configuration) : NAuto.AutoBuild <List <TModel> >(); if (language == Language.English && configuration != null) { language = configuration.DefaultLanguage; } return(autoBuilder .Configure(x => x.DefaultCollectionItemCount = numberOfItems) .Configure(x => x.DefaultLanguage = language) .Construct() .Build()); }
public void Should_Override_Properties_Data_Generation() { // Arrange const int minLength = 5; const int maxLength = 50; var config = new AutoBuilderConfiguration(stringMinLength: minLength, stringMaxLength: maxLength); // Act var testModel = NAuto.AutoBuild <TestModel>(config) .Construct() .Build(); // Assert testModel.SubTestModel.SubString.Length.ShouldBeGreaterThanOrEqualTo(minLength); testModel.SubTestModel.SubString.Length.ShouldBeLessThanOrEqualTo(maxLength); }
public object TryGetValue(Type type, PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { if (propertyInfo != null) { var dataTypeAttribute = propertyInfo.GetCustomAttributes(typeof(DataTypeAttribute), true).FirstOrDefault(); if (dataTypeAttribute != null) { var dataType = ((DataTypeAttribute)dataTypeAttribute).DataType; if (type == typeof(string)) { if (dataType == DataType.EmailAddress) { return NAuto.GetRandomPropertyType(PropertyType.Email); } if (dataType == DataType.PhoneNumber) { return NAuto.GetRandomPropertyType(PropertyType.TelephoneNumber); } if (dataType == DataType.Url) { return NAuto.GetRandomPropertyType(PropertyType.Url); } } } if (type == typeof(string)) { return GenerateRandomStringFromDataAnnotations(propertyInfo, autoBuilderConfiguration); } if (type == typeof(int)) { return GenerateRandomIntFromDataAnnotations(propertyInfo, autoBuilderConfiguration); } if (type == typeof(double)) { return GenerateRandomDoubleFromDataAnnotations(propertyInfo, autoBuilderConfiguration); } } return null; }
public object TryGetValue(Type type, PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { if (propertyInfo != null) { var dataTypeAttribute = propertyInfo.GetCustomAttributes(typeof(DataTypeAttribute), true).FirstOrDefault(); if (dataTypeAttribute != null) { var dataType = ((DataTypeAttribute)dataTypeAttribute).DataType; if (type == typeof(string)) { if (dataType == DataType.EmailAddress) { return(NAuto.GetRandomPropertyType(PropertyType.Email)); } if (dataType == DataType.PhoneNumber) { return(NAuto.GetRandomPropertyType(PropertyType.TelephoneNumber)); } if (dataType == DataType.Url) { return(NAuto.GetRandomPropertyType(PropertyType.Url)); } } } if (type == typeof(string)) { return(GenerateRandomStringFromDataAnnotations(propertyInfo, autoBuilderConfiguration)); } if (type == typeof(int)) { return(GenerateRandomIntFromDataAnnotations(propertyInfo, autoBuilderConfiguration)); } if (type == typeof(double)) { return(GenerateRandomDoubleFromDataAnnotations(propertyInfo, autoBuilderConfiguration)); } } return(null); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateNullableCharService = new PopulateNullableCharService(); populateNullableCharService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); dataAnnotationConventionMapper = new DataAnnotationConventionMapper(); }
public void SetUp() { populateListService = new PopulateListService(); autoBuilderConfiguration = new AutoBuilderConfiguration(); populateListService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void Should_Return_Email_Type_Base_On_Property_Name() { var autoTestBuilderConfiguration = new AutoBuilderConfiguration(); var conventionsTestModel = NAuto.AutoBuild<ConventionsModel>(autoTestBuilderConfiguration) .Configure(x => x.DefaultLanguage = Language.Russian) .Construct() .Build(); conventionsTestModel.Email.ShouldContain("@"); }
public void Should_Override_Properties_Data_Generation() { // Arrange const int minLength = 5; const int maxLength = 50; var config = new AutoBuilderConfiguration(stringMinLength:minLength, stringMaxLength:maxLength); // Act var testModel = NAuto.AutoBuild<TestModel>(config) .Construct() .Build(); // Assert testModel.SubTestModel.SubString.Length.ShouldBeGreaterThanOrEqualTo(minLength); testModel.SubTestModel.SubString.Length.ShouldBeLessThanOrEqualTo(maxLength); }
public void SetAutoBuilderConfiguration(AutoBuilderConfiguration autoBuilderConfiguration) { AutoBuilderConfiguration = autoBuilderConfiguration; }
private static int GenerateRandomIntFromDataAnnotations(PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { var min = autoBuilderConfiguration.IntMinimum; var max = autoBuilderConfiguration.IntMaximum; var rangeAttribute = propertyInfo.GetCustomAttributes(typeof(RangeAttribute), false).FirstOrDefault(); if (rangeAttribute != null) { min = (int)((RangeAttribute)rangeAttribute).Minimum; max = (int)((RangeAttribute)rangeAttribute).Maximum; } return(NAuto.GetRandomInteger(min, max)); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateByteService = new PopulateByteService(); populateByteService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateNullableDecimalService = new PopulateNullableDecimalService(); populateNullableDecimalService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public static List <TModel> Get <TModel>(Expression <Func <TModel, int> > identityProperty, int numberOfItems = 2, int seed = 1, int increment = 1, AutoBuilderConfiguration configuration = null, Language language = Language.English) where TModel : class { var autoBuilder = configuration != null?NAuto.AutoBuild <List <TModel> >(configuration) : NAuto.AutoBuild <List <TModel> >(); if (language == Language.English && configuration != null) { language = configuration.DefaultLanguage; } var list = autoBuilder .Configure(x => x.DefaultCollectionItemCount = numberOfItems) .Configure(x => x.DefaultLanguage = language) .Construct() .Build(); var id = seed; foreach (var model in list) { var memberExpression = (MemberExpression)identityProperty.Body; var property = memberExpression.Member as PropertyInfo; var instanceToUpdate = model; if (property != null) { property.SetValue(instanceToUpdate, id, null); } id += increment; } return(list); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateComplexObjectService = new PopulateComplexObjectService(); populateComplexObjectService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
/// <summary> /// Automatically build an instance of the passed in model type. /// </summary> /// <typeparam name="TModel">The type of the model.</typeparam> /// <param name="autoBuilderConfiguration">The configuration.</param> /// <returns>Autobuilder instance.</returns> public static IAutoBuilder <TModel> AutoBuild <TModel>(AutoBuilderConfiguration autoBuilderConfiguration) where TModel : class { return(new AutoBuilder <TModel>(Container.Resolve <IPropertyPopulationService>(), autoBuilderConfiguration)); }
public void Should_Override_Property_With_Custom_Convention() { var autoTestBuilderConfiguration = new AutoBuilderConfiguration(); autoTestBuilderConfiguration.Conventions.Add(new ConventionMap(ConventionFilterType.Contains, "PetName", typeof(string), config => "Rex")); var conventionsTestModel = NAuto.AutoBuild<ConventionsModel>(autoTestBuilderConfiguration) .Construct() .Build(); // Assert conventionsTestModel.PetName.ShouldEqual("Rex"); conventionsTestModel.SubConventionsModel.PetName.ShouldEqual("Rex"); }
/// <summary> /// Gets the random list with a sequenced column. /// </summary> /// <typeparam name="TModel"> /// The type of the model. /// </typeparam> /// <param name="identityProperty"> /// The identity property. /// </param> /// <param name="numberOfItems"> /// The number of items. /// </param> /// <param name="seed"> /// The seed. /// </param> /// <param name="increment"> /// The increment. /// </param> /// <param name="autoBuilderConfiguration"> /// The auto Builder Configuration. /// </param> /// <param name="language"> /// The language. /// </param> /// <returns> /// Random list. /// </returns> public static List <TModel> GetRandomList <TModel>(Expression <Func <TModel, int> > identityProperty, int numberOfItems = 2, int seed = 1, int increment = 1, AutoBuilderConfiguration autoBuilderConfiguration = null, Language language = Language.English) where TModel : class { return(RandomListGenerator.Get(identityProperty, numberOfItems, seed, increment, autoBuilderConfiguration, language)); }
private static string GenerateRandomStringFromDataAnnotations(PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { var minLength = autoBuilderConfiguration.StringMinLength; var maxLength = autoBuilderConfiguration.StringMaxLength; //var minLengthAttribute = propertyInfo.GetCustomAttributes(typeof(MinLengthAttribute), false).FirstOrDefault(); //if (minLengthAttribute != null) //{ // minLength = ((MinLengthAttribute)minLengthAttribute).Length; //} //var maxLengthAttribute = propertyInfo.GetCustomAttributes(typeof(MaxLengthAttribute), false).FirstOrDefault(); //if (maxLengthAttribute != null) //{ // maxLength = ((MaxLengthAttribute)maxLengthAttribute).Length; //} //if (minLengthAttribute != null || maxLengthAttribute != null) //{ // { // return NAuto.GetRandomString( // minLength, // maxLength, // autoBuilderConfiguration.DefaultStringCharacterSetType, // autoBuilderConfiguration.DefaultStringSpaces, // autoBuilderConfiguration.DefaultStringCasing, // autoBuilderConfiguration.DefaultLanguage); // } //} var stringLengthAttribute = propertyInfo.GetCustomAttributes(typeof(StringLengthAttribute), false).FirstOrDefault(); if (stringLengthAttribute != null) { var minStringLength = ((StringLengthAttribute)stringLengthAttribute).MinimumLength; var maxStringLength = ((StringLengthAttribute)stringLengthAttribute).MaximumLength; if (maxStringLength == 0) { maxStringLength = minStringLength + 50; } if (maxStringLength < minStringLength) { throw new ArgumentException("Property " + propertyInfo.Name + ": the minimum string length cannot be greater than the maximum string length..."); } return(NAuto.GetRandomString( minStringLength, maxStringLength, autoBuilderConfiguration.DefaultStringCharacterSetType, autoBuilderConfiguration.DefaultStringSpaces, autoBuilderConfiguration.DefaultStringCasing, autoBuilderConfiguration.DefaultLanguage)); } return(null); }
/// <summary> /// Gets the random list. /// </summary> /// <typeparam name="TModel"> /// The type of the model. /// </typeparam> /// <param name="numberOfItems"> /// The number of items. /// </param> /// <param name="autoBuilderConfiguration"> /// The auto Builder Configuration. /// </param> /// <param name="language"> /// The language. /// </param> /// <returns> /// Random list. /// </returns> public static List <TModel> GetRandomList <TModel>(int numberOfItems = 2, AutoBuilderConfiguration autoBuilderConfiguration = null, Language language = Language.English) where TModel : class { return(RandomListGenerator.Get <TModel>(numberOfItems, autoBuilderConfiguration, language)); }
public void SetUp() { autoBuilderConfiguration = new AutoBuilderConfiguration(); populateDecimalService = new PopulateDecimalService(); populateDecimalService.SetAutoBuilderConfiguration(autoBuilderConfiguration); }
public void Should_Generate_List_With_Specified_Number_Of_Arguments() { var config = new AutoBuilderConfiguration(defaultLanguage: Language.Chinese); var testModel = NAuto.AutoBuild<TestModel>(config) .Configure(x => x.DefaultLanguage = Language.Chinese) .Construct() .With(x => x.FavouriteStringList = NAuto.GetRandomList<string>(5, autoBuilderConfiguration: config)) .Build(); testModel.ShouldNotBeNull(); }
private static double GenerateRandomDoubleFromDataAnnotations(PropertyInfo propertyInfo, AutoBuilderConfiguration autoBuilderConfiguration) { var min = autoBuilderConfiguration.DoubleMinimum; var max = autoBuilderConfiguration.DoubleMaximum; var rangeAttribute = propertyInfo.GetCustomAttributes(typeof(RangeAttribute), false).FirstOrDefault(); if (rangeAttribute != null) { min = double.Parse(((RangeAttribute)rangeAttribute).Minimum.ToString()); max = double.Parse(((RangeAttribute)rangeAttribute).Maximum.ToString()); } return(NAuto.GetRandomDouble(min, max)); }