public CustomFaker(string locale, double mistakesNumber) { switch (locale) { case "en_US": this.locale = "en_US"; break; case "ru_RU": this.locale = "ru"; break; case "be_BY": this.locale = "be"; break; default: throw new ArgumentException($"Unsupported locale: {locale}"); } this.mistakesNumber = mistakesNumber; nameDataSet = new Bogus.DataSets.Name(this.locale); addressDataSet = new Bogus.DataSets.Address(this.locale); phoneNumbersDataSet = new Bogus.DataSets.PhoneNumbers(this.locale); loremDataSet = new Bogus.DataSets.Lorem(this.locale); random = new Random(); }
public Game gameGenerate() { var numPlayers = new Bogus.DataSets.Commerce().Random.Int(1, 3); var numMovements = new Bogus.DataSets.Commerce().Random.Int(1, 5); var name = new Bogus.DataSets.Name(); var word = new Bogus.DataSets.Hacker(); var players = new List <Player>(); for (var i = 0; i < numPlayers; i++) { var longitude = new Bogus.DataSets.Address().Longitude(); var latitude = new Bogus.DataSets.Address().Latitude(); var movements = new List <Movement>(); for (var j = 0; j < numMovements; j++) { movements.Add(new Movement() { playedAt = DateTime.UtcNow, word = word.Noun() }); } players.Add(new Player() { username = name.FirstName(), joinedAt = DateTime.UtcNow, movements = movements, longitude = longitude, latitude = latitude }); } return(new Game() { owner = name.FirstName(), maxPlayers = 3, type = "TEST", createdAt = DateTime.UtcNow, players = players, state = GameStates.Open }); }
static void Main(string[] args) { // create data sets var nameDataSet = new Bogus.DataSets.Name(); var addressDataSet = new Bogus.DataSets.Address(); var phoneDataSet = new Bogus.DataSets.PhoneNumbers(); // create list to hold results var list = new List <Address>(); for (var i = 0; i < 780000; i++) { // generate a result var address = new Address(); address.First = nameDataSet.FirstName(); address.Last = nameDataSet.LastName(); address.Street = addressDataSet.StreetAddress(); address.City = addressDataSet.City(); address.State = addressDataSet.State(); address.Zip = addressDataSet.ZipCode(); address.Phone = phoneDataSet.PhoneNumberFormat(0); list.Add(address); } // serialize to output.json var json = Newtonsoft.Json.JsonConvert.SerializeObject(list); File.WriteAllText("output.json", json); }
/// <summary> /// Método responsável por criar um usuario para uso no sistema. /// </summary> /// <returns></returns> public Usuario UsuarioPadrao() { var faker = new Faker("pt_BR"); var estadoFaker = new Bogus.DataSets.Address("en"); var usuario = new Usuario { Sexo = faker.Random.Bool() ? 'F' : 'M', PrimeiroNome = faker.Name.FirstName(), UltimoNome = faker.Name.LastName(), Password = "******" }; usuario.Email = faker.Internet.Email(usuario.PrimeiroNome); usuario.DataAniversario = DateTime.Now.AddYears(-20); usuario.Empresa = faker.Company.CompanyName(); usuario.EmpresaEndereco = faker.Address.StreetAddress(); usuario.Cidade = faker.Address.City(); usuario.Estado = estadoFaker.State(); usuario.Cep = "12345"; usuario.Pais = "United States"; usuario.InformacaoAdicional = faker.Lorem.Lines(); usuario.TelefoneComDDD = "(23)34732957"; usuario.CelularComDDD = "(55)947345729"; usuario.EnderecoAlternativo = faker.Random.Bool() ? "Home" : "Work"; return(usuario); }
static void Main() { var random = new Randomizer(); var lorem = new Bogus.DataSets.Lorem(); var addresses = new Bogus.DataSets.Address(); var order = new Order() { OrderId = random.Number(1, 100), Item = string.Join(" ", lorem.Letter(100)), Quantity = random.Number(1, 10), ZipCode = addresses.ZipCode() }; order.Dump(); Console.ReadLine(); var fruit = new[] { "apple", "banana", "orange", "strawberry", "kiwi", "grapefruit" }; var testOrders = new Faker <Order>() //Ensure all properties have rules. By default, StrictMode is false //Set a global policy by using Faker.DefaultStrictMode .StrictMode(true) //OrderId is deterministic .RuleFor(o => o.OrderId, f => f.Random.Number(1, 100)) //Pick some fruit from a basket .RuleFor(o => o.Item, f => f.PickRandom(fruit)) //A random quantity from 1 to 10 .RuleFor(o => o.Quantity, f => f.Random.Number(1, 10)) .RuleFor(o => o.ZipCode, f => f.Address.ZipCode()); testOrders.Generate(3).ToList().ForEach(o => o.Dump()); Console.ReadLine(); }
/// <summary> /// Generates a random address using the Bogus library (a port of Faker.js) /// </summary> /// <returns></returns> private static IEnumerable <Address> RandomAddresses() { List <Address> addresses = new List <Address>(); var random = new Random(); for (int i = 0; i < random.Next(1, 5); i++) { var bogusAddress = new Bogus.DataSets.Address(); Country country; State state; var countries = Enum.GetValues(typeof(Country)); var states = Enum.GetValues(typeof(State)); if (random.Next(1, 100) > 75) { country = (Country)countries.GetValue(random.Next(countries.Length)); } else { country = Country.United_States; } if (country == Country.United_States) { state = (State)states.GetValue(random.Next(states.Length)); } else { state = State.NA; } addresses.Add(new Address() { HouseNum = bogusAddress.BuildingNumber(), Street = bogusAddress.StreetName() + (random.Next() % 2 == 0 ? bogusAddress.StreetSuffix() : ""), City = bogusAddress.City(), CountryCode = country, StateCode = state, Zip = bogusAddress.ZipCode(), Pid = System.Guid.NewGuid() }); } return(addresses); }
private static Customer CreateCustomer(_CustomerType type) { var name = new Bogus.DataSets.Name(); var address = new Bogus.DataSets.Address(); var random = new Randomizer(); if (type == _CustomerType.Individual) { var phoneNo = new Bogus.DataSets.PhoneNumbers(); return(new IndividualCustomer() { FirstName = name.FirstName(), LastName = name.LastName(), CustomerType = type.ToString(), Street = address.StreetName(), City = address.City(), State = address.State(), Zipcode = int.Parse(address.ZipCode("######")), PhoneNo = int.Parse(phoneNo.PhoneNumber("########")), Age = random.Number(18, 100), Gender = (int)random.Enum <_Gender>() }); } else if (type == _CustomerType.Enterprise) { var companyName = new Bogus.DataSets.Company(); return(new EnterpriseCustomer() { FirstName = name.FirstName(), LastName = name.LastName(), CustomerType = type.ToString(), Street = address.StreetName(), City = address.City(), State = address.State(), Zipcode = int.Parse(address.ZipCode("######")), OrganizationName = companyName.CompanyName() + companyName.CompanySuffix(), OrganizationType = random.Enum <_OrganizationType>().ToString() }); } else { return(null); } }
public Record() { var randombogus = new Bogus.DataSets.Name.Gender(); var randomName = new Bogus.DataSets.Name("en"); var randomPhone = new Bogus.DataSets.PhoneNumbers("en"); var randomAddress = new Bogus.DataSets.Address("en"); Random rand = new Random(); if (rand.NextDouble() >= 0.5) { Sex = "female"; randombogus = (Bogus.DataSets.Name.Gender) 1; } else { Sex = "male"; randombogus = (Bogus.DataSets.Name.Gender) 0; } //generate race //source for stats: 2019 US census beaurau estimates var racerand = rand.NextDouble(); if (racerand <= 0.6) { Race = "white"; } else if (racerand > 0.6 && racerand <= 0.78) { Race = "hispanic (of any race)"; } else if (racerand > 0.78 && racerand <= 0.91) { Race = "black"; } else if (racerand > 0.91 && racerand <= 0.97) { Race = "asian"; } else if (racerand > 0.97 && racerand <= 0.98) { Race = "native american or alaskan native"; } else if (racerand > 0.98 && racerand <= 0.985) { Race = "native hawaiian or other pacific islander"; } else { Race = "two or more races"; } if (Sex == "male") { //The multiplier makes taller people slightly heavier. Someone 1.9 meters will be about 8% heavier than someone that's 1.5 meters, compared to without the bonus. Make divisor smaller to make effect more extreme HeightInMeters = NormalDistribution.Random(1.8, 0.1); //if (HeightInMeters < 2.0) { var heightWeightMultiplier = (1 + (HeightInMeters - 2.0) / 4.0); } //else { var heightWeightMultiplier = (2.0 + ((HeightInMeters -2.0) / 4.0)); } Weight = NormalDistribution.Random(86, 18); //average values and stddev. source: google Waistline = 40 + ((Weight - 86) / 4); //you gain 1in / 4kg } else { HeightInMeters = NormalDistribution.Random(1.65, 0.1); //if (HeightInMeters < 2.0) { var heightWeightMultiplier = (1 + (HeightInMeters - 2.0) / 4.0); } //else { var heightWeightMultiplier = (2.0 + ((HeightInMeters - 2.0) / 4.0)); } Weight = NormalDistribution.Random(78, 14); Waistline = 36 + ((Weight - 86) / 4); //in meters. since 1kg causes +/- 0.01m waistline. average just happens to be 1.0 } double weightHeightCorrelation = (.5) * ((HeightInMeters * 100) - 180); Weight += weightHeightCorrelation; //convert meters to ft/in var inchFeet = (HeightInMeters / 0.3048); HeightFeet = (int)inchFeet; HeightInches = Math.Floor(Math.Round((inchFeet - HeightFeet) / 0.0833)); //convert kg to pounds WeightInLb = Weight * 2.20462; FirstName = randomName.FirstName(randombogus); LastName = randomName.LastName(); PhoneNumber = randomPhone.PhoneNumber(); Address = randomAddress.StreetAddress(); Random gen = new Random(); double probability = gen.NextDouble(); DateTime start = new DateTime(DateTime.Today.Year - 85, 1, 1); int rangeMax; int rangeMin; if (probability <= 0.15) { rangeMin = 0; rangeMax = (85 * 365 - 65 * 365); } else { rangeMin = 21 * 365; rangeMax = 65 * 365; } DateOfBirth = start.AddDays(gen.Next(rangeMin, rangeMax)); Age = DateTime.Today.Year - DateOfBirth.Year; if (DateOfBirth.Date > DateTime.Today.AddYears(-Age)) { Age--; } BMI = Weight / Math.Pow(HeightInMeters, 2); }
public static string DowntownTorontoPostalCode(this Bogus.DataSets.Address address) { return(address.Random.ArrayElement(CanadaDowntownTorontoPostalCodes)); }
public GivenAnAddress() { _address = new Address(); _bogusAddress = new Faker().Address; }