public RandomizerMACAddress(FieldOptionsMACAddress options) : base(options) { byte[] octetsMin = string.IsNullOrEmpty(Options.Min) ? defaultMin : Options.Min.Split(Options.Separator.First()).Select(x => byte.Parse(x, NumberStyles.HexNumber)).ToArray(); byte[] octetsMax = string.IsNullOrEmpty(Options.Max) ? defaultMax : Options.Max.Split(Options.Separator.First()).Select(x => byte.Parse(x, NumberStyles.HexNumber)).ToArray(); for (int i = 0; i < 6; i++) { octets[i] = new RandomThingsGenerator <byte>(octetsMin[i], octetsMax[i]); } }
public RandomizerIPv4Address(FieldOptionsIPv4Address options) : base(options) { byte[] octetsMin = string.IsNullOrEmpty(Options.Min) ? new byte[] { 0, 0, 0, 0 } : Options.Min.Split('.').Select(x => byte.Parse(x)).ToArray(); byte[] octetsMax = string.IsNullOrEmpty(Options.Max) ? new byte[] { 0xff, 0xff, 0xff, 0xff } : Options.Max.Split('.').Select(x => byte.Parse(x)).ToArray(); for (int i = 0; i < 4; i++) { octets[i] = new RandomThingsGenerator <byte>(octetsMin[i], octetsMax[i]); } }
public RandomizerIPv6Address(FieldOptionsIPv6Address options) : base(options) { int[] hextetsMin = string.IsNullOrEmpty(Options.Min) ? defaultMin : Options.Min.Split(':').Select(x => int.Parse(x, NumberStyles.HexNumber)).ToArray(); int[] hextetsMax = string.IsNullOrEmpty(Options.Max) ? defaultMax : Options.Max.Split(':').Select(x => int.Parse(x, NumberStyles.HexNumber)).ToArray(); for (int i = 0; i < 8; i++) { hextets[i] = new RandomThingsGenerator <int>(hextetsMin[i], hextetsMax[i]); } }
public RandomizerFirstName(FieldOptionsFirstName options) : base(options) { if (options.Male) { _genderSetGenerators.Add(new RandomStringFromListGenerator(ListData.Instance.MaleNames)); } if (options.Female) { _genderSetGenerators.Add(new RandomStringFromListGenerator(ListData.Instance.FemaleNames)); } _numberGenerator = new RandomThingsGenerator <int>(0, _genderSetGenerators.Count); }
/// <summary> /// 初始化一个<see cref="MACAddressRandomizer"/>类型的实例 /// </summary> /// <param name="options">MAC地址配置</param> public MACAddressRandomizer(MACAddressFieldOptions options) : base(options) { byte[] octetsMin = string.IsNullOrEmpty(options.Min) ? _defaultMin : options.Min.Split(options.Separator.First()).Select(byte.Parse).ToArray(); byte[] octetsMax = string.IsNullOrEmpty(options.Max) ? _defaultMax : options.Max.Split(options.Separator.First()).Select(byte.Parse).ToArray(); for (var i = 0; i < 6; i++) { _generators[i] = new RandomThingsGenerator <byte>(octetsMin[i], octetsMax[i]); } }
/// <summary> /// 初始化一个<see cref="FullNameRandomizer"/>类型的实例 /// </summary> /// <param name="options">全名配置</param> public FullNameRandomizer(FullNameFieldOptions options) : base(options) { _lastNameGenerator = new RandomStringFromListGenerator(CommonData.Instance.LastNames); if (options.Male) { _genderSetGenerators.Add(new RandomStringFromListGenerator(CommonData.Instance.MaleNames)); } if (options.Female) { _genderSetGenerators.Add(new RandomStringFromListGenerator(CommonData.Instance.FemaleNames)); } _numberGenerator = new RandomThingsGenerator <int>(0, _genderSetGenerators.Count); }
public RandomizerEmailAddress(FieldOptionsEmailAddress options) : base(options) { _lastNamesGenerator = new RandomStringFromListGenerator(ListData.Instance.LastNames.Select(l => l.ToLower())); _topLevelDomainGenerator = new RandomStringFromListGenerator(ListData.Instance.TopLevelDomains.Select(l => l.ToLower())); if (options.Male) { _genderSetGenerators.Add(new RandomStringFromListGenerator(ListData.Instance.MaleNames.Select(l => l.ToLower()))); } if (options.Female) { _genderSetGenerators.Add(new RandomStringFromListGenerator(ListData.Instance.FemaleNames.Select(l => l.ToLower()))); } _numberGenerator = new RandomThingsGenerator <int>(0, _genderSetGenerators.Count); }
public RandomizerNumber(FieldOptionsNumber <T> options) : base(options) { _generator = new RandomThingsGenerator <T>(options.Min, options.Max); }
public RandomizerTimeSpan(FieldOptionsTimeSpan options) : base(options) { _generator = new RandomThingsGenerator <TimeSpan>(options.From, options.To, options.Seed); }
/// <summary> /// 初始化一个<see cref="TextWordsRandomizer"/>类型的实例 /// </summary> /// <param name="options"></param> public TextWordsRandomizer(TextWordsFieldOptions options) : base(options) { _numberGenerator = new RandomThingsGenerator <int>(Math.Min(options.Min, options.Max), Math.Max(options.Min, options.Max) + 1); }
/// <summary> /// 初始化一个<see cref="DateTimeRandomizer"/>类型的实例 /// </summary> /// <param name="options">日期时间配置</param> public DateTimeRandomizer(DateTimeFieldOptions options) : base(options) { _generator = new RandomThingsGenerator <DateTime>(options.From, options.To); }
public RandomizerDateTime(FieldOptionsDateTime options) : base(options) { _generator = new RandomThingsGenerator <DateTime>(options.From, options.To); }
/// <summary> /// 初始化一个<see cref="TimeSpanRandomizer"/>类型的实例 /// </summary> /// <param name="options">时间跨度配置</param> public TimeSpanRandomizer(TimeSpanFieldOptions options) : base(options) { _generator = new RandomThingsGenerator <TimeSpan>(options.From, options.To); }