protected override string CreateValue(StringConstrainedValueProviderContext context) { var targetWordLength = context.Random.Next(context.StringConstraints.MinLength, context.StringConstraints.MaxLength); var wordBuilder = new StringBuilder(); while (wordBuilder.Length < targetWordLength) { _randomSyllabileGenerator.Fill(context, wordBuilder); } if (context.Random.Next() > 0.5 && wordBuilder.Length > 0) { wordBuilder[0] = Char.ToUpper(wordBuilder[0]); } return(wordBuilder.ToString().Substring(0, targetWordLength)); }
protected override string CreateAttributeBasedValue(AttributeValueProviderContext <string, EmailAddressAttribute> context) { var emailSb = new StringBuilder(); _firstNameGenerator.Fill(context, emailSb); //[email protected] or [email protected] if (context.Random.Next() > 0.5) { emailSb.Append('.'); _secondNameGenerator.Fill(context, emailSb); } emailSb.Append('@'); _domainNameGenerator.Fill(context, emailSb); emailSb.Append('.'); _topLevelDomainGenerator.Fill(context, emailSb); return(emailSb.ToString()); }