From acb657fac8bfeb9d64e6520c14bea2794a72a1f8 Mon Sep 17 00:00:00 2001 From: Michael van den Berg <5636940+MichaelVanDenBerg@users.noreply.github.com> Date: Fri, 16 Sep 2022 20:46:57 +0200 Subject: [PATCH 01/10] Add Dutch names, phone numbers and addresses --- CHANGELOG.md | 3 + USAGE.md | 3 + lib/faker/address/nl.ex | 571 ++++++++++++++++++++++++++++++++++++ lib/faker/person/nl.ex | 418 ++++++++++++++++++++++++++ lib/faker/phone/nl.ex | 91 ++++++ test/faker/address_test.exs | 1 + test/faker/person_test.exs | 1 + test/faker/phone_test.exs | 1 + 8 files changed, 1089 insertions(+) create mode 100644 lib/faker/address/nl.ex create mode 100644 lib/faker/person/nl.ex create mode 100644 lib/faker/phone/nl.ex diff --git a/CHANGELOG.md b/CHANGELOG.md index ef1e56ead..f30955793 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,9 @@ Change log itself follows [Keep a CHANGELOG](http://keepachangelog.com) format. ### Added - `Faker.Fruits.En` - add english fruits [[@KevinDaSilvaS](https://github.com/KevinDaSilvaS)] +- `Faker.Address.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] +- `Faker.Person.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] +- `Faker.Phone.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] ### Changed - `Faker.Commerce.PtBr` - add more products in product_name_product [[@igorgbr](https://github.com/igorgbr)] diff --git a/USAGE.md b/USAGE.md index a323a03c6..91ec49eb0 100644 --- a/USAGE.md +++ b/USAGE.md @@ -5,6 +5,7 @@ - [Faker.Address.Es](lib/faker/address/es.ex) - [Faker.Address.Hy](lib/faker/address/hy.ex) - [Faker.Address.It](lib/faker/address/it.ex) +- [Faker.Address.Nl](lib/faker/address/nl.ex) - [Faker.Address.PtBr](lib/faker/address/pt_br.ex) - [Faker.Address.Ru](lib/faker/address/ru.ex) - [Faker.Airports](lib/faker/airports.ex) @@ -92,11 +93,13 @@ - [Faker.Person.Es](lib/faker/person/es.ex) - [Faker.Person.Fr](lib/faker/person/fr.ex) - [Faker.Person.Hy](lib/faker/person/hy.ex) +- [Faker.Person.Nl](lib/faker/person/nl.ex) - [Faker.Person.It](lib/faker/person/it.ex) - [Faker.Person.PtBr](lib/faker/person/pt_br.ex) - [Faker.Phone.EnUs](lib/faker/phone/en_us.ex) - [Faker.Phone.EnGb](lib/faker/phone/en_gb.ex) - [Faker.Phone.Hy](lib/faker/phone/hy.ex) +- [Faker.Phone.Nl](lib/faker/phone/nl.ex) - [Faker.Phone.PtBr](lib/faker/phone/pt_br.ex) - [Faker.Pizza](lib/faker/pizza.ex) - [Faker.Pokemon](lib/faker/pokemon.ex) diff --git a/lib/faker/address/nl.ex b/lib/faker/address/nl.ex new file mode 100644 index 000000000..38296e1df --- /dev/null +++ b/lib/faker/address/nl.ex @@ -0,0 +1,571 @@ +defmodule Faker.Address.Nl do + import Faker, only: [sampler: 2] + + alias Faker.Person.Nl, as: Person + + @moduledoc """ + Functions for generating addresses in Dutch + """ + + @doc """ + Return a city name. + + ## Examples + + iex> Faker.Address.Nl.city() + "Katwijk aan Zee" + iex> Faker.Address.Nl.city() + "Wijk bij Duurstede" + iex> Faker.Address.Nl.city() + "Sliedrecht" + iex> Faker.Address.Nl.city() + "Amsterdam" + """ + @spec city() :: String.t() + sampler(:city, [ + "'s-Heerenberg", + "'s-Hertogenbosch", + "Acquoy", + "Alblasserdam", + "Alkmaar", + "Almere", + "Alphen aan den Rijn", + "Amersfoort", + "Amsterdam", + "Amsterdam", + "Anna Paulowna", + "Apeldoorn", + "Arnhem", + "Baarle-Nassau", + "Beesd", + "Bergen op Zoom", + "Breda", + "Brielle", + "Capelle aan den IJssel", + "Castricum", + "Coevoorden", + "Dalfsen", + "Delft", + "Den Haag", + "Den Helder", + "Deventer", + "Doetinchem", + "Dokkum", + "Dordrecht", + "Drachten", + "Ede", + "Eindhoven", + "Emmeloord", + "Emmen", + "Emmer-Compascuum", + "Enschede", + "Gasselterboerveenschemond", + "Geldermalsen", + "Goes", + "Gorinchem", + "Groesbeek", + "Groningen", + "Haarlem", + "Haarlemmermeer", + "Harderwijk", + "Hardinxveld-Giessendam", + "Heerhugowaard", + "Heerlen", + "Hendrik-Ido-Ambacht", + "Hengelo", + "Hilversum", + "Hoogeveen", + "IJmuiden", + "Kampen", + "Katwijk aan Zee", + "Landgraaf", + "Leerdam", + "Leeuwarden", + "Leiden", + "Lelystad", + "Maastricht", + "Meppel", + "Middelburg", + "Naarden", + "Nijkerk", + "Nijmegen", + "Oss", + "Papendrecht", + "Purmerend", + "Roermond", + "Roosendaal", + "Rotterdam", + "Rucphen", + "Ruigoord", + "Sleeuwijk", + "Sliedrecht", + "Sneek", + "Stadskanaal", + "Tilburg", + "Urk", + "Utrecht", + "Valkenburg", + "Veenendaal", + "Venlo", + "Vlaardingen", + "Vlissingen", + "Waalwijk", + "Wageningen", + "Westland", + "Wijk bij Duurstede", + "Wijngaarden", + "Winterswijk", + "Zaanstad", + "Zoetermeer", + "Zwijndrecht", + "Zwolle" + ]) + + @doc """ + Return street address. + + ## Examples + + iex> Faker.Address.Nl.street_address() + "Floortje van Voskade 67" + iex> Faker.Address.Nl.street_address() + "Kalver-erf 181" + iex> Faker.Address.Nl.street_address() + "Dorpkade 170" + iex> Faker.Address.Nl.street_address() + "Lingepark 23" + """ + @spec street_address() :: String.t() + def street_address do + "#{street_name()} #{house_number()}" + end + + @doc """ + Return street name. + + ## Examples + + iex> Faker.Address.Nl.street_name() + "Floortje van Voskade" + iex> Faker.Address.Nl.street_name() + "Rijnplein" + iex> Faker.Address.Nl.street_name() + "Sijmen Hoeklaan" + iex> Faker.Address.Nl.street_name() + "Annekesteeg" + """ + @spec street_name() :: String.t() + def street_name do + street_name(Faker.random_between(0, 9)) + end + + defp street_name(0), + do: "#{Person.first_name()} #{Person.tussenvoegsel()} #{Person.last_name()}#{street_suffix()}" + + defp street_name(1), do: "#{Person.first_name()} #{Person.last_name()}#{street_suffix()}" + defp street_name(2), do: "#{Person.first_name()}#{street_suffix()}" + defp street_name(3), do: "#{Person.last_name()}#{street_suffix()}" + + defp street_name(n) when is_integer(n) do + "#{street_prefix()}#{street_suffix()}" + end + + @doc """ + Return street prefix. + + ## Examples + + iex> Faker.Address.Nl.street_prefix() + "Vis" + iex> Faker.Address.Nl.street_prefix() + "School" + iex> Faker.Address.Nl.street_prefix() + "Hof" + iex> Faker.Address.Nl.street_prefix() + "Haven" + """ + @spec street_prefix() :: String.t() + sampler(:street_prefix, [ + "Aardappel", + "Dorp", + "Gasthuis", + "Graaf", + "Groen", + "Haven", + "Hof", + "IJssel", + "Kalver", + "Kerk", + "Konings", + "Lek", + "Linge", + "Maas", + "Molen", + "Nieuwe", + "Noorder", + "Oude", + "Parallel", + "Rijn", + "School", + "Vis", + "Voor", + "Waal", + "Wijn", + "Zand", + "Zuider" + ]) + + @doc """ + Return street suffix. + + ## Examples + + iex> Faker.Address.Nl.street_suffix() + "dijk" + iex> Faker.Address.Nl.street_suffix() + "-erf" + iex> Faker.Address.Nl.street_suffix() + "park" + iex> Faker.Address.Nl.street_suffix() + "markt" + """ + @spec street_suffix() :: String.t() + sampler(:street_suffix, [ + "dijk", + "-erf", + "kade", + "laan", + "markt", + "park", + "plein", + "steeg", + "straat", + "weg" + ]) + + @doc """ + Return random postcode. + + Dutch zip codes never start with a '0' and always end with two uppercase letters. + + ## Examples + + iex> Faker.Address.Nl.zip_code() + "2110 LR" + iex> Faker.Address.Nl.zip_code() + "8304 EA" + iex> Faker.Address.Nl.zip_code() + "9164 GD" + iex> Faker.Address.Nl.zip_code() + "2380 WZ" + """ + @spec zip_code() :: String.t() + def zip_code do + "#{Faker.random_between(1000, 9999)} ??" + |> Faker.format() + |> String.upcase() + end + + @doc """ + Return building number. + + But since we rarely use building numbers in the Netherlands, this will call 'Faker.Address.Nl.house_number()' instead. + """ + @spec building_number :: String.t() + def building_number, do: house_number() + + @doc """ + Return random house number. + + Dutch house numbers never start with a '0'. + + ## Examples + + iex> Faker.Address.Nl.house_number() + "211" + iex> Faker.Address.Nl.house_number() + "102" + iex> Faker.Address.Nl.house_number() + "136" + iex> Faker.Address.Nl.house_number() + "105" + """ + @spec house_number() :: String.t() + def house_number, do: "#{Faker.random_between(1, 300)}" + + @doc """ + Return a country name. + + Source: https://github.com/faker-ruby/faker + + ## Examples + + iex> Faker.Address.Nl.country() + "Zuidelijke Oceaan" + iex> Faker.Address.Nl.country() + "Sri Lanka" + iex> Faker.Address.Nl.country() + "Maldiven" + iex> Faker.Address.Nl.country() + "Macedonië" + """ + @spec country() :: String.t() + sampler(:country, [ + "Afghanistan", + "Akrotiri", + "Albanië", + "Algerije", + "Amerikaanse Maagdeneilanden", + "Amerikaans-Samoa", + "Andorra", + "Angola", + "Anguilla", + "Antarctica", + "Antigua en Barbuda", + "Noordelijke IJszee", + "Argentinië", + "Armenië", + "Aruba", + "Ashmore- en Cartiereilanden", + "Atlantische Oceaan", + "Australië", + "Azerbeidzjan", + "Bahama's", + "Bahrein", + "Bangladesh", + "Barbados", + "Belarus", + "België", + "Belize", + "Benin", + "Bermuda", + "Bhutan", + "Bolivië", + "Bosnië-Herzegovina", + "Botswana", + "Bouveteiland", + "Brazilië", + "Brits Indische Oceaanterritorium", + "Britse Maagdeneilanden", + "Brunei", + "Bulgarije", + "Burkina Faso", + "Burundi", + "Cambodja", + "Canada", + "Caymaneilanden", + "Centraal-Afrikaanse Republiek", + "Chili", + "China", + "Christmaseiland", + "Clipperton", + "Cocoseilanden", + "Colombia", + "Comoren (Unie)", + "Congo (Democratische Republiek)", + "Congo (Volksrepubliek)", + "Cook", + "Coral Sea Islands", + "Costa Rica", + "Cuba", + "Cyprus", + "Denemarken", + "Dhekelia", + "Djibouti", + "Dominica", + "Dominicaanse Republiek", + "Duitsland", + "Ecuador", + "Egypte", + "El Salvador", + "Equatoriaal-Guinea", + "Eritrea", + "Estland", + "Ethiopië", + "Europese Unie", + "Falkland", + "Faeröer", + "Fiji", + "Filipijnen", + "Finland", + "Frankrijk", + "Frans-Polynesië", + "Franse Zuidelijke en Antarctische Gebieden", + "Gabon", + "Gambia", + "Gaza Strip", + "Georgië", + "Ghana", + "Gibraltar", + "Grenada", + "Griekenland", + "Groenland", + "Guam", + "Guatemala", + "Guernsey", + "Guinea", + "Guinee-Bissau", + "Guyana", + "Haïti", + "Heard en McDonaldeilanden", + "Heilige Stoel", + "Honduras", + "Hongarije", + "Hongkong", + "Ierland", + "IJsland", + "India", + "Indian Ocean", + "Indonesië", + "Irak", + "Iran", + "Isle of Man", + "Israël", + "Italië", + "Ivoorkust", + "Jamaica", + "Jan Mayen", + "Japan", + "Jemen", + "Jersey", + "Jordanië", + "Kaapverdië", + "Kameroen", + "Kazachstan", + "Kenia", + "Kirgizstan", + "Kiribati", + "Koeweit", + "Kroatië", + "Laos", + "Lesotho", + "Letland", + "Libanon", + "Liberia", + "Libië", + "Liechtenstein", + "Litouwen", + "Luxemburg", + "Macao", + "Macedonië", + "Madagaskar", + "Malawi", + "Maldiven", + "Maleisië", + "Mali", + "Malta", + "Marokko", + "Marshalleilanden", + "Mauritanië", + "Mauritius", + "Mayotte", + "Mexico", + "Micronesia, Federale Staten van", + "Moldavië", + "Monaco", + "Mongolië", + "Montenegro", + "Montserrat", + "Mozambique", + "Myanmar", + "Namibië", + "Nauru", + "Navassa", + "Nederland", + "Nederlandse Antillen", + "Nepal", + "Ngwane", + "Nicaragua", + "Nieuw-Caledonië", + "Nieuw-Zeeland", + "Niger", + "Nigeria", + "Niue", + "Noordelijke Marianen", + "Noord-Korea", + "Noorwegen", + "Norfolk (eiland)", + "Oekraïne", + "Oezbekistan", + "Oman", + "Oostenrijk", + "Grote Oceaan", + "Pakistan", + "Palau", + "Panama", + "Papoea-Nieuw-Guinea", + "Paracel Islands", + "Paraguay", + "Peru", + "Pitcairn", + "Polen", + "Portugal", + "Puerto Rico", + "Qatar", + "Roemenië", + "Rusland", + "Rwanda", + "Saint Helena", + "Saint Lucia", + "Saint Vincent en de Grenadines", + "Saint-Pierre en Miquelon", + "Salomon", + "Samoa", + "San Marino", + "São Tomé en Principe", + "Saudi-Arabië", + "Senegal", + "Servië", + "Seychellen", + "Sierra Leone", + "Singapore", + "Sint-Kitts en Nevis", + "Slovenië", + "Slowakije", + "Soedan", + "Somalië", + "South Georgia and the South Sandwich Islands", + "Zuidelijke Oceaan", + "Spanje", + "Spratly Islands", + "Sri Lanka", + "Suriname", + "Svalbard", + "Syrië", + "Tadzjikistan", + "Taiwan", + "Tanzania", + "Thailand", + "Timor Leste", + "Togo", + "Tokelau", + "Tonga", + "Trinidad en Tobago", + "Tsjaad", + "Tsjechië", + "Tunesië", + "Turkije", + "Turkmenistan", + "Turks-en Caicoseilanden", + "Tuvalu", + "Uganda", + "Uruguay", + "Vanuatu", + "Venezuela", + "Verenigd Koninkrijk", + "Verenigde Arabische Emiraten", + "Verenigde Staten van Amerika", + "Vietnam", + "Wake (eiland)", + "Wallis en Futuna", + "Wereld", + "Westelijke Jordaanoever", + "Westelijke Sahara", + "Zambia", + "Zimbabwe", + "Zuid-Afrika", + "Zuid-Korea", + "Zweden", + "Zwitserland" + ]) +end diff --git a/lib/faker/person/nl.ex b/lib/faker/person/nl.ex new file mode 100644 index 000000000..70aa015af --- /dev/null +++ b/lib/faker/person/nl.ex @@ -0,0 +1,418 @@ +defmodule Faker.Person.Nl do + import Faker, only: [sampler: 2] + + @moduledoc """ + Functions for name data in Dutch + """ + + @doc """ + Returns a complete name (may include a suffix/prefix or both) + + ## Examples + iex> Faker.Person.Nl.name() + "Floortje van Vos" + iex> Faker.Person.Nl.name() + "Beatrix van de Klein" + iex> Faker.Person.Nl.name() + "Sijmen Hoek" + iex> Faker.Person.Nl.name() + "Theo Brouwer" + """ + @spec name() :: String.t() + def name, do: name(Faker.random_between(0, 15)) + defp name(0), do: "#{prefix()} #{first_name()} #{tussenvoegsel()} #{last_name()} #{suffix()}" + defp name(1), do: "#{prefix()} #{first_name()} #{last_name()} #{suffix()}" + defp name(2), do: "#{first_name()} #{tussenvoegsel()} #{last_name()} #{suffix()}" + defp name(3), do: "#{first_name()} #{last_name()} #{suffix()}" + + defp name(n) when is_integer(n) and n < 9, + do: "#{first_name()} #{tussenvoegsel()} #{last_name()}" + + defp name(n) when is_integer(n) do + "#{first_name()} #{last_name()}" + end + + @doc """ + Returns a random first name + + ## Examples + + iex> Faker.Person.Nl.first_name() + "Adriaan" + iex> Faker.Person.Nl.first_name() + "Floortje" + iex> Faker.Person.Nl.first_name() + "Bas" + iex> Faker.Person.Nl.first_name() + "Sietske" + """ + @spec first_name() :: String.t() + sampler(:first_name, [ + "Adriaan", + "Amber", + "Anna", + "Anne", + "Anneke", + "Annefleur", + "Annelies", + "Annemiek", + "Anouk", + "Arnoud", + "Bas", + "Beatrix", + "Benjamin", + "Benthe", + "Boudewijn", + "Bram", + "Britt", + "Carlijn", + "Carolien", + "Chantal", + "Charlotte", + "Christine", + "Claire", + "Cor", + "Cornelia", + "Cornelis", + "Daan", + "Daniël", + "David", + "Diederik", + "Dick", + "Dirk", + "Doutzen", + "Egbert-Jan", + "Emma", + "Esmee", + "Eva", + "Femke", + "Finn", + "Fleur", + "Floor", + "Floortje", + "Floris", + "Froukje", + "Gerard", + "Gerben", + "Gerrit", + "Hendrik", + "Hans", + "Henk-Jan", + "Hidde", + "Iris", + "Isa", + "Jan", + "Janna", + "Janneke", + "Jasmijn", + "Jasper", + "Jayden", + "Jesse", + "Jetske", + "Johannes", + "Jolanda", + "Joop", + "Joost", + "Julia", + "Julian", + "Karel", + "Karlijn", + "Kees", + "Kevin", + "Koen", + "Lars", + "Laurentine", + "Levi", + "Lia", + "Lieke", + "Lieve", + "Lisa", + "Lisanne", + "Lisette", + "Liza", + "Lodewijk", + "Lotte", + "Lucas", + "Luuk", + "Maartje", + "Madelief", + "Maikel", + "Maria", + "Marie-Claire", + "Martine", + "Maud", + "Maurits", + "Max", + "Merel", + "Michelle", + "Mike", + "Milan", + "Mohamed", + "Nathalie", + "Nick", + "Nicolaas", + "Niels", + "Nienke", + "Noa", + "Pascalle", + "Paul", + "Pien", + "Piet", + "Pieter", + "Pim", + "Reinier", + "Renske", + "Ria", + "Rianne", + "Rick", + "Robbert", + "Robert-Jan", + "Roderick", + "Ronald", + "Roos", + "Rozemarijn", + "Ruben", + "Sander", + "Sandra", + "Sanne", + "Sebastiaan", + "Sem", + "Sietske", + "Sijmen", + "Sjoukje", + "Sophie", + "Sterre", + "Stijn", + "Sven", + "Tess", + "Theo", + "Thijs", + "Thomas", + "Tim", + "Tineke", + "Tom", + "Tooske", + "Twan", + "Victor", + "Vincent", + "Viviènne", + "Vlinder", + "Walram", + "Wilhelmina", + "Willem", + "Willemijn", + "Yinthe", + "Zwaantje" + ]) + + @doc """ + Returns a random tussenvoegsel + + ## Examples + + iex> Faker.Person.Nl.tussenvoegsel() + "van der" + iex> Faker.Person.Nl.tussenvoegsel() + "den" + iex> Faker.Person.Nl.tussenvoegsel() + "van" + iex> Faker.Person.Nl.tussenvoegsel() + "de" + """ + @spec tussenvoegsel() :: String.t() + sampler(:tussenvoegsel, [ + "de", + "den", + "ter", + "van", + "van de", + "van den", + "van der", + "van 't" + ]) + + @doc """ + Returns a random last name + + ## Examples + + iex> Faker.Person.Nl.last_name() + "Vliet" + iex> Faker.Person.Nl.last_name() + "Willems" + iex> Faker.Person.Nl.last_name() + "Hond" + iex> Faker.Person.Nl.last_name() + "Vos" + """ + @spec last_name() :: String.t() + sampler(:last_name, [ + "Aalbersberg", + "Aartsen", + "Achteren", + "Bakker", + "Beek", + "Beekhuis", + "Besseling", + "Berg", + "Bergen", + "Bergh", + "Boer", + "Boogaard", + "Boom", + "Bos", + "Bosch", + "Boudewijn", + "Brink", + "Broeders", + "Broek", + "Brouwer", + "Bruin", + "Buijtenhek", + "Dam", + "Dekker", + "Dijk", + "Dijkstra", + "Driel", + "Driessen", + "Ebbenhorst", + "Ellemeet", + "Gelderland", + "Genderen", + "Giersbergen", + "Graaf", + "Groot", + "Haan", + "Hendriks", + "Heuvel", + "Hoek", + "Hond", + "Hoppenbrouwer", + "Houwelingen", + "Huijbrechts", + "Huisman", + "IJzendoorn", + "Jacobs", + "Jansen", + "Janssen", + "Jong", + "Keizer", + "Klein", + "Kok", + "Koning", + "Kortekaas", + "Koster", + "Kroes", + "Kruijthoff", + "Leeuwen", + "Leeuwenburg", + "Lelivelt", + "Linden", + "Maas", + "Marijnissen", + "Markenstein", + "Mastenbroek", + "Meer", + "Meersbergen", + "Meijer", + "Meulenberg", + "Molenaar", + "Mulder", + "Naaktgeboren", + "Nijland", + "Oldenbarneveld", + "Oosterhout", + "Paulusma", + "Peters", + "Pijnenburg", + "Poelman", + "Ravenhorst", + "Ridder", + "Rijn", + "Ruiter", + "Rutte", + "Schaapstra", + "Schilder", + "Schimmelpenninck", + "Schouten", + "Simons", + "Singh", + "Smit", + "Smits", + "Spijkerman", + "Stellingwerff", + "Stichting", + "Stokvis", + "Tan", + "Timmermans", + "Tjeerdsma", + "Vaatstra", + "Veen", + "Ven", + "Vermeulen", + "Vis", + "Visser", + "Vliet", + "Voorst tot Voorst", + "Vos", + "Vries", + "Waalwijk", + "Westerling", + "Wietmarschen", + "Wal", + "Willems", + "Willemstein", + "Winter", + "Wit", + "Witteman", + "Yilmaz", + "Zanten", + "Zee", + "Zwijnenburg", + "Zwolle" + ]) + + @doc """ + Returns a random prefix + + ## Examples + + iex> Faker.Person.Nl.prefix() + "Dhr." + iex> Faker.Person.Nl.prefix() + "Mevr." + iex> Faker.Person.Nl.prefix() + "Dhr." + iex> Faker.Person.Nl.prefix() + "Drs." + """ + @spec prefix() :: String.t() + sampler(:prefix, [ + "Dhr.", + "Mevr.", + "Mr.", + "Ing.", + "Drs." + ]) + + @doc """ + Returns a random suffix + + ## Examples + + iex> Faker.Person.Nl.suffix() + "Jr." + iex> Faker.Person.Nl.suffix() + "PhD" + iex> Faker.Person.Nl.suffix() + "Jr." + iex> Faker.Person.Nl.suffix() + "PhD" + """ + @spec suffix() :: String.t() + sampler(:suffix, [ + "Jr.", + "Sr.", + "PhD" + ]) +end diff --git a/lib/faker/phone/nl.ex b/lib/faker/phone/nl.ex new file mode 100644 index 000000000..e70244d89 --- /dev/null +++ b/lib/faker/phone/nl.ex @@ -0,0 +1,91 @@ +defmodule Faker.Phone.Nl do + import Faker, only: [samplerp: 2] + + @moduledoc """ + Functions for generating phone related data for the Netherlands + """ + + @doc """ + Returns a random phone number. + + ## Examples + + iex> Faker.Phone.Nl.number() + "0495542646" + iex> Faker.Phone.Nl.number() + "0683297052" + iex> Faker.Phone.Nl.number() + "0031670203032" + iex> Faker.Phone.Nl.number() + "0707337603" + """ + + @spec number() :: String.t() + def number do + if Faker.random_between(0, 1) == 0 do + landline_number() + else + cell_number() + end + end + + samplerp(:landline_number_format, [ + "010#######", + "020#######", + "024#######", + "0342######", + "038#######", + "0495######", + "050#######", + "070#######", + "078#######", + "085#######", + "088#######", + "003110#######" + ]) + + @doc """ + Returns a random landline phone number + + ## Examples + + iex> Faker.Phone.Nl.landline_number() + "0501542646" + iex> Faker.Phone.Nl.landline_number() + "0342083297" + iex> Faker.Phone.Nl.landline_number() + "0505235702" + iex> Faker.Phone.Nl.landline_number() + "0883032097" + """ + + @spec landline_number() :: String.t() + def landline_number do + Faker.format(landline_number_format()) + end + + samplerp(:cell_number_format, [ + "06########", + "00316########" + ]) + + @doc """ + Returns a random cell phone number + + ## Examples + + iex> Faker.Phone.Nl.cell_number() + "0615426461" + iex> Faker.Phone.Nl.cell_number() + "0683297052" + iex> Faker.Phone.Nl.cell_number() + "0031657020303" + iex> Faker.Phone.Nl.cell_number() + "0609733760" + """ + + @spec cell_number() :: String.t() + def cell_number do + Faker.format(cell_number_format()) + end +end diff --git a/test/faker/address_test.exs b/test/faker/address_test.exs index dec47b551..cf9f2181d 100644 --- a/test/faker/address_test.exs +++ b/test/faker/address_test.exs @@ -6,6 +6,7 @@ defmodule Faker.AddressTest do doctest Faker.Address.Es doctest Faker.Address.Hy doctest Faker.Address.It + doctest Faker.Address.Nl doctest Faker.Address.PtBr doctest Faker.Address.Ru end diff --git a/test/faker/person_test.exs b/test/faker/person_test.exs index 3c9c4d678..0464d0264 100644 --- a/test/faker/person_test.exs +++ b/test/faker/person_test.exs @@ -7,5 +7,6 @@ defmodule Faker.PersonTest do doctest Faker.Person.Fr doctest Faker.Person.Hy doctest Faker.Person.It + doctest Faker.Person.Nl doctest Faker.Person.PtBr end diff --git a/test/faker/phone_test.exs b/test/faker/phone_test.exs index b52949916..aeb1f610d 100644 --- a/test/faker/phone_test.exs +++ b/test/faker/phone_test.exs @@ -4,5 +4,6 @@ defmodule Faker.PhoneTest do doctest Faker.Phone.EnGb doctest Faker.Phone.EnUs doctest Faker.Phone.Hy + doctest Faker.Phone.Nl doctest Faker.Phone.PtBr end From 9089cf6eecb57d1e5b9f453b22f158c89c696697 Mon Sep 17 00:00:00 2001 From: Christof Verhoeven Date: Tue, 5 Mar 2024 19:44:40 +0100 Subject: [PATCH 02/10] dutch name faker --- lib/faker/person/nl.ex | 5526 ++++++++++++++++++++++++++++++++++++ test/faker/person_test.exs | 1 + 2 files changed, 5527 insertions(+) create mode 100644 lib/faker/person/nl.ex diff --git a/lib/faker/person/nl.ex b/lib/faker/person/nl.ex new file mode 100644 index 000000000..fc193229d --- /dev/null +++ b/lib/faker/person/nl.ex @@ -0,0 +1,5526 @@ +defmodule Faker.Person.Nl do + import Faker, only: [sampler: 2] + + @moduledoc """ + Functions for name data in English + """ + + @doc """ + Returns a complete name (may include a suffix/prefix or both) + + ## Examples + + iex> Faker.Person.Nl.name() + "Dhr. Noah Theunis Jr." + iex> Faker.Person.Nl.name() + "Richard Van Kessel" + iex> Faker.Person.Nl.name() + "Sabine Terlouw" + iex> Faker.Person.Nl.name() + "Rossie Rovers" + """ + @spec name() :: String.t() + def name, do: name(Faker.random_between(0, 9)) + defp name(0), do: "#{prefix()} #{first_name()} #{last_name()} #{suffix()}" + defp name(1), do: "#{prefix()} #{first_name()} #{last_name()}" + defp name(2), do: "#{first_name()} #{last_name()} #{suffix()}" + + defp name(n) when is_integer(n) do + "#{first_name()} #{last_name()}" + end + + @doc """ + Returns a random first name + + ## Examples + + iex> Faker.Person.Nl.first_name() + "Benjamin" + iex> Faker.Person.Nl.first_name() + "Anne" + iex> Faker.Person.Nl.first_name() + "Noah" + iex> Faker.Person.Nl.first_name() + "Elinor" + """ + @spec first_name() :: String.t() + sampler(:first_name, [ + "Ad", + "Aad", + "Aafje", + "Aaron", + "Abbey", + "Abbie", + "Abbigail", + "Abby", + "Abdiel", + "Abdul", + "Abdullah", + "Abe", + "Abel", + "Abelardo", + "Abigail", + "Abner", + "Abraham", + "Ada", + "Adah", + "Adaline", + "Adam", + "Adan", + "Addie", + "Addison", + "Adela", + "Adelbert", + "Adelheid", + "Adele", + "Adelia", + "Adeline", + "Adella", + "Adelle", + "Aditya", + "Adolfo", + "Adolph", + "Adolphus", + "Adonis", + "Adrian", + "Adriaan", + "Adriana", + "Adrianus", + "Adriel", + "Adrien", + "Adrienne", + "Adryen", + "Agatha", + "Agnes", + "Agnus", + "Agustin", + "Agustina", + "Ahmad", + "Ahmed", + "Aida", + "Aidan", + "Aiden", + "Aileen", + "Aimé", + "Aimee", + "Aisha", + "Akeem", + "Al", + "Alaina", + "Alan", + "Alana", + "Alanis", + "Alanna", + "Alayna", + "Alba", + "Albert", + "Alberta", + "Alberto", + "Albertus", + "Albin", + "Albina", + "Alda", + "Aldert", + "Alec", + "Aleid", + "Aleida", + "Alejandra", + "Alejandrin", + "Alek", + "Alena", + "Alene", + "Alessandra", + "Alessandro", + "Alessia", + "Aletha", + "Alex", + "Alexa", + "Alexander", + "Alexandra", + "Alexandre", + "Alexandrea", + "Alexandria", + "Alexandrine", + "Alexandro", + "Alexane", + "Alexanne", + "Alexie", + "Alexis", + "Alexys", + "Alexzander", + "Alfons", + "Alfonso", + "Alfonzo", + "Alfred", + "Alfreda", + "Alfredo", + "Ali", + "Alia", + "Alice", + "Alida", + "Alicia", + "Alisa", + "Alisha", + "Alivia", + "Aliya", + "Aliyah", + "Aliza", + "Alize", + "Allan", + "Allard", + "Allen", + "Allene", + "Allie", + "Allisia", + "Ally", + "Alphonse", + "Alphonso", + "Alta", + "Althea", + "Alva", + "Alvah", + "Alvena", + "Alvera", + "Alverta", + "Alvina", + "Alvis", + "Alwin", + "Alyce", + "Alycia", + "Alysa", + "Alysha", + "Alyson", + "Amalia", + "Amanda", + "Amani", + "Amara", + "Amari", + "Amaya", + "Amber", + "Ambroos", + "Ambrosius", + "Amelia", + "Amelie", + "Amely", + "Americo", + "Amie", + "Amina", + "Amir", + "Amira", + "Amiya", + "Amos", + "Amparo", + "Amy", + "Amya", + "An", + "Anabel", + "Anabelle", + "Anahi", + "Anais", + "Anastacio", + "Anastasia", + "André", + "Andrea", + "Andreas", + "Andres", + "Andries", + "Andy", + "Angèle", + "Angela", + "Angelien", + "Angelina", + "Angeline", + "Angelique", + "Angelo", + "Angie", + "Angus", + "Anibal", + "Anika", + "Anissa", + "Anita", + "Anja", + "Anjes", + "Anke", + "Ann", + "Anna", + "Annabel", + "Annabella", + "Annabelle", + "Anne", + "Anneke", + "Annelien", + "Annelies", + "Annemarie", + "Annemie", + "Annemieke", + "Annette", + "Annie", + "Annika", + "Anouk", + "Ansel", + "Anthony", + "Antje", + "Antoine", + "Antoinette", + "Anton", + "Antoon", + "Antonie", + "Antonius", + "Antonio", + "Antwan", + "Anya", + "April", + "Ara", + "Araceli", + "Aracely", + "Arch", + "Archibald", + "Ardella", + "Arden", + "Arend", + "Arie", + "Ariane", + "Arianna", + "Ariel", + "Arielle", + "Aris", + "Arjan", + "Arlene", + "Arlie", + "Arlo", + "Armand", + "Armando", + "Armani", + "Arnaldo", + "Arne", + "Arno", + "Arnold", + "Arnoud", + "Arnout", + "Aron", + "Art", + "Arthur", + "Arturo", + "Arvel", + "Arvid", + "Arvilla", + "Aryanna", + "Asa", + "Asha", + "Ashlee", + "Ashleigh", + "Ashley", + "Ashlynn", + "Ashton", + "Aster", + "Astrid", + "Athena", + "Aubree", + "Aubrey", + "Audreanne", + "Audrey", + "August", + "Augusta", + "Augustijn", + "Augustus", + "Aurelia", + "Aurelie", + "Aurelio", + "Aurore", + "Ava", + "Avery", + "Avis", + "Axel", + "Axelle", + "Ayda", + "Ayden", + "Aylin", + "Babette", + "Barbara", + "Barend", + "Baron", + "Barry", + "Bart", + "Bartel", + "Bartholomeus", + "Bas", + "Bastiaan", + "Bea", + "Beatrice", + "Beatrijs", + "Beatrix", + "Beau", + "Beaulah", + "Bella", + "Belle", + "Ben", + "Benedictus", + "Benjamin", + "Benji", + "Bennie", + "Benny", + "Bent", + "Bente", + "Berend", + "Berendina", + "Bernadette", + "Bernadine", + "Bernard", + "Bernardo", + "Bernhard", + "Bernice", + "Bernie", + "Bernita", + "Berry", + "Bert", + "Berta", + "Bertha", + "Bertram", + "Bertrand", + "Beryl", + "Bessie", + "Beth", + "Bethany", + "Bethel", + "Betsy", + "Betje", + "Bettie", + "Betty", + "Bettye", + "Beulah", + "Beverly", + "Bianka", + "Bill", + "Billie", + "Billy", + "Birgen", + "Birger", + "Bjorn", + "Blaise", + "Blake", + "Blanche", + "Blaze", + "Bo", + "Bob", + "Bobbie", + "Boele", + "Bokkie", + "Bonifaas", + "Bonita", + "Bonnie", + "Boris", + "Boudewijn", + "Brad", + "Bradley", + "Brady", + "Braeden", + "Brain", + "Bram", + "Bran", + "Brandon", + "Brandt", + "Brandy", + "Brandyn", + "Brannon", + "Branson", + "Brant", + "Braulinde", + "Braxton", + "Brayen", + "Breana", + "Breanna", + "Breanne", + "Brecht", + "Brenda", + "Brendan", + "Brenden", + "Brendon", + "Brenna", + "Brennan", + "Brennon", + "Brent", + "Brett", + "Bria", + "Brian", + "Briana", + "Brianne", + "Brice", + "Bridgette", + "Brielle", + "Brigitta", + "Brigitte", + "Brionna", + "Brit", + "Britney", + "Brittany", + "Brock", + "Broderick", + "Brody", + "Brook", + "Brooke", + "Brooklyn", + "Broos", + "Brown", + "Bruce", + "Bryana", + "Bryce", + "Brycen", + "Bryon", + "Buck", + "Bud", + "Buddy", + "Buford", + "Bulah", + "Burdette", + "Burley", + "Burnice", + "Buster", + "Cade", + "Caden", + "Caesar", + "Caitlyn", + "Cale", + "Caleb", + "Caleigh", + "Cali", + "Calista", + "Callie", + "Camden", + "Cameron", + "Camila", + "Camilla", + "Camille", + "Camren", + "Camron", + "Camryn", + "Camylle", + "Candace", + "Candelario", + "Candice", + "Candida", + "Candido", + "Cara", + "Carey", + "Carissa", + "Carlee", + "Carleton", + "Carley", + "Carli", + "Carlie", + "Carlo", + "Carlos", + "Carlotta", + "Carmel", + "Carmela", + "Carmella", + "Carmelo", + "Carmen", + "Carmine", + "Caro", + "Carol", + "Carolien", + "Carolina", + "Caroline", + "Carolyn", + "Carolyne", + "Carrie", + "Carroll", + "Carson", + "Carter", + "Cas", + "Casandra", + "Casey", + "Casimer", + "Casimir", + "Casper", + "Cassandra", + "Cassandre", + "Cassidy", + "Cassie", + "Catalina", + "Caterina", + "Catharine", + "Catherine", + "Cathrine", + "Cathryn", + "Cathy", + "Cayla", + "Ceasar", + "Cecelia", + "Cecil", + "Cecile", + "Cecilia", + "Cedrick", + "Celestine", + "Celestijn", + "Celia", + "Celine", + "Céline", + "César", + "Chad", + "Chaim", + "Chance", + "Chandler", + "Chanel", + "Chanelle", + "Chantal", + "Chantalle", + "Charlene", + "Charles", + "Charley", + "Charlie", + "Charlotte", + "Chase", + "Chasity", + "Chancey", + "Chaya", + "Chaz", + "Chelsea", + "Chelsey", + "Chelsie", + "Chesley", + "Chester", + "Chet", + "Cheyanne", + "Cheyenne", + "Chloë", + "Chris", + "Christel", + "Christelle", + "Christian", + "Christiana", + "Christina", + "Christine", + "Christof", + "Christoph", + "Christophe", + "Christopher", + "Christy", + "Chyna", + "Ciara", + "Cicero", + "Cid", + "Cielo", + "Cierra", + "Cindy", + "Clair", + "Claire", + "Clara", + "Clarabelle", + "Clare", + "Clarissa", + "Clark", + "Claude", + "Claudia", + "Claudie", + "Claudine", + "Claudius", + "Clay", + "Clemens", + "Clement", + "Clementina", + "Clementine", + "Clemmie", + "Cleo", + "Cleora", + "Cleta", + "Cletus", + "Cleve", + "Cleveland", + "Cliff", + "Clifford", + "Clint", + "Clinton", + "Clotilde", + "Clovis", + "Cloyd", + "Clyde", + "Cobe", + "Coby", + "Cody", + "Colby", + "Cole", + "Colin", + "Colleen", + "Collin", + "Colt", + "Colten", + "Columbus", + "Conchita", + "Conner", + "Connie", + "Connor", + "Conrad", + "Constance", + "Constantin", + "Consuela", + "Cooper", + "Cor", + "Cora", + "Coralie", + "Corben", + "Cordelia", + "Cordell", + "Cordia", + "Cordie", + "Corine", + "Cornelius", + "Cornell", + "Corrine", + "Cortez", + "Cortney", + "Corwin", + "Cory", + "Coty", + "Courtney", + "Coy", + "Craig", + "Crawford", + "Creola", + "Cristal", + "Cristian", + "Cristina", + "Cristobal", + "Cristopher", + "Cruz", + "Crystal", + "Crystel", + "Cullen", + "Curt", + "Curtis", + "Cydney", + "Cynthia", + "Cyril", + "Cyrus", + "Daan", + "Dagmar", + "Dahlia", + "Daija", + "Daisha", + "Daisy", + "Dakota", + "Dale", + "Dallas", + "Dallin", + "Dalton", + "Damaris", + "Dameon", + "Damian", + "Damien", + "Damion", + "Damon", + "Dan", + "Dana", + "Dandre", + "Dangelo", + "Daniël", + "Daniela", + "Daniella", + "Danielle", + "Danika", + "Dannie", + "Danny", + "Dante", + "Danyka", + "Daphne", + "Daphnee", + "Daphney", + "Darcy", + "Daren", + "Darian", + "Dariana", + "Darien", + "Dario", + "Darion", + "Darius", + "Darlene", + "Daron", + "Darrel", + "Darrell", + "Darren", + "Darrick", + "Darrin", + "Darrion", + "Darron", + "Darryl", + "Darwin", + "Daryl", + "Dasia", + "Dave", + "David", + "Davin", + "Davion", + "Davon", + "Davy", + "Dawson", + "Dax", + "Dayana", + "Dayna", + "Dayne", + "Dean", + "Deangelo", + "Deanna", + "Deborah", + "Dedric", + "Dedrick", + "Dee", + "Deion", + "Deja", + "Dejah", + "Dejon", + "Dejuan", + "Delaney", + "Delbert", + "Delfina", + "Deli", + "Delia", + "Delilah", + "Della", + "Delmer", + "Delores", + "Delpha", + "Delphia", + "Delphine", + "Delta", + "Demarco", + "Demarcus", + "Demario", + "Demetris", + "Demetrius", + "Demond", + "Dena", + "Denis", + "Dennis", + "Deon", + "Deondre", + "Deontae", + "Deonte", + "Dereck", + "Derek", + "Derick", + "Dero", + "Derrick", + "Deshaun", + "Deshawn", + "Desiree", + "Desmond", + "Dessie", + "Destany", + "Destin", + "Destinee", + "Destiney", + "Destini", + "Destiny", + "Devan", + "Devante", + "Deven", + "Devin", + "Devon", + "Devonte", + "Devy", + "Dewayne", + "Dewey", + "Dexter", + "Diamond", + "Diana", + "Dianna", + "Dick", + "Diego", + "Dillan", + "Dillon", + "Dimitri", + "Dina", + "Dino", + "Dion", + "Dixie", + "Dolly", + "Dolores", + "Domenic", + "Domenica", + "Domenick", + "Dominiek", + "Domenico", + "Domingo", + "Dominique", + "Don", + "Donald", + "Donato", + "Donavon", + "Donna", + "Donnie", + "Donny", + "Doortje", + "Dora", + "Dorian", + "Dorien", + "Doris", + "Dorothea", + "Dorothy", + "Dorris", + "Dortha", + "Dorthy", + "Doug", + "Douglas", + "Dovie", + "Drako", + "Dré", + "Drew", + "Dries", + "Dudley", + "Dulce", + "Duncan", + "Durward", + "Dustin", + "Dusty", + "Dwight", + "Dylan", + "Earl", + "Earlene", + "Earline", + "Earnest", + "Earnestine", + "Easter", + "Easton", + "Ebba", + "Ebony", + "Ed", + "Eda", + "Edd", + "Eddie", + "Eden", + "Edgar", + "Edgardo", + "Edison", + "Edith", + "Edmond", + "Edmund", + "Edna", + "Eduardo", + "Edward", + "Edwardo", + "Edwin", + "Edwina", + "Edyth", + "Effie", + "Efrain", + "Efren", + "Eileen", + "Einar", + "Eino", + "Eladio", + "Elaina", + "Elbert", + "Elda", + "Eldon", + "Eldora", + "Eldred", + "Eldridge", + "Eleanora", + "Eleanore", + "Eleazar", + "Electa", + "Elena", + "Elenor", + "Elenora", + "Eleonore", + "Elfrieda", + "Eli", + "Elian", + "Eliane", + "Elias", + "Elijah", + "Elinor", + "Elinore", + "Elio", + "Elisa", + "Elisabeth", + "Elise", + "Eliseo", + "Elisha", + "Elissa", + "Eliza", + "Elizabeth", + "Ella", + "Ellen", + "Ellie", + "Elliot", + "Ellis", + "Elma", + "Elmer", + "Elmira", + "Elmo", + "Elmut", + "Elna", + "Elnora", + "Elody", + "Eloisa", + "Eloise", + "Elouise", + "Eloy", + "Elroy", + "Els", + "Elsa", + "Elsie", + "Elsje", + "Elton", + "Elva", + "Elvera", + "Elvie", + "Elvis", + "Elwin", + "Elwyn", + "Elyse", + "Elyssa", + "Elza", + "Emanuel", + "Emelia", + "Emelie", + "Emely", + "Emerald", + "Emerson", + "Emery", + "Emie", + "Emiel", + "Emile", + "Emilia", + "Emiliano", + "Emilie", + "Emilio", + "Emily", + "Emma", + "Emmalia", + "Emmanuel", + "Emmanuelle", + "Emmet", + "Emmett", + "Emmie", + "Emmerik", + "Emory", + "Emy", + "Ena", + "Enid", + "Enoch", + "Enola", + "Enos", + "Enrico", + "Enrique", + "Ephraim", + "Era", + "Eriberto", + "Eric", + "Erica", + "Erich", + "Erick", + "Ericka", + "Erik", + "Erika", + "Erin", + "Erling", + "Erna", + "Ernest", + "Ernestina", + "Ernestine", + "Ernesto", + "Ernie", + "Ervin", + "Erwin", + "Eryn", + "Esmeralda", + "Esperanza", + "Esta", + "Esteban", + "Estefania", + "Estel", + "Estell", + "Estella", + "Estelle", + "Estevan", + "Esther", + "Estrella", + "Etha", + "Ethan", + "Ethel", + "Ethelyn", + "Ethyl", + "Ettie", + "Eudora", + "Eugene", + "Eugenia", + "Eula", + "Eulah", + "Eulalia", + "Euna", + "Eunice", + "Eusebio", + "Eva", + "Evalyn", + "Evan", + "Evangeline", + "Evans", + "Eve", + "Eveline", + "Evelyn", + "Everardo", + "Everett", + "Evert", + "Evie", + "Evy", + "Ewald", + "Ezekiel", + "Ezequiel", + "Ezra", + "Fabian", + "Fabiola", + "Fabrice", + "Fabricius", + "Fae", + "Fannie", + "Fanny", + "Fatima", + "Fausto", + "Favian", + "Fay", + "Faye", + "Federico", + "Felicia", + "Felicita", + "Felicity", + "Felipa", + "Felipe", + "Felix", + "Ferdinand", + "Fernando", + "Ferne", + "Fil", + "Filemon", + "Filibert", + "Finn", + "Fiona", + "Firmin", + "Flavie", + "Flavio", + "Fleur", + "Flinn", + "Flip", + "Flo", + "Flor", + "Florke", + "Floor", + "Florence", + "Florentine", + "Florian", + "Floriaan", + "Florine", + "Flossie", + "Floyd", + "Forest", + "Forrest", + "Foster", + "Frances", + "Francesca", + "Francesco", + "Francis", + "Francisca", + "Francisco", + "Franco", + "Frank", + "Frankie", + "Frans", + "Franz", + "Fred", + "Freda", + "Freddie", + "Freddy", + "Frederic", + "Frederick", + "Frederik", + "Frederique", + "Fredrick", + "Fredy", + "Freeda", + "Freek", + "Frida", + "Frieda", + "Friedrich", + "Frits", + "Fritz", + "Gabe", + "Gabriël", + "Gabriella", + "Gabrielle", + "Gaby", + "Gaetano", + "Gail", + "Gardner", + "Garett", + "Garfield", + "Garland", + "Garnet", + "Garnett", + "Garret", + "Garrett", + "Garrick", + "Garrison", + "Garry", + "Garth", + "Gaston", + "Gavin", + "Gay", + "Gayle", + "Gaylord", + "Gene", + "General", + "Genesis", + "Genevieve", + "Gennaro", + "Genoveva", + "Geo", + "Geoffrey", + "George", + "Georgette", + "Georgiana", + "Georgianna", + "Geovanni", + "Geovanny", + "Geovany", + "Gerald", + "Geraldine", + "Gerard", + "Gerardo", + "Gerda", + "Gerhard", + "Germaine", + "German", + "Gerry", + "Gert", + "Gertrude", + "Gia", + "Gianni", + "Gideon", + "Gilbert", + "Gilberto", + "Gilda", + "Giles", + "Gill", + "Gillian", + "Gina", + "Gino", + "Giovani", + "Giovanna", + "Giovanni", + "Giovanny", + "Gisselle", + "Giuseppe", + "Gladyce", + "Gladys", + "Glen", + "Glenda", + "Glenn", + "Glennie", + "Gloria", + "Godfried", + "Goedele", + "Goes", + "Gonzalo", + "Gordon", + "Grace", + "Gracie", + "Graciela", + "Grady", + "Graham", + "Grant", + "Granville", + "Grayce", + "Grayson", + "Greet", + "Greg", + "Gregg", + "Gregoria", + "Gregorio", + "Gregory", + "Greta", + "Gretchen", + "Greyson", + "Griffin", + "Guadalupe", + "Gudrun", + "Guido", + "Guillermo", + "Guiseppe", + "Gunnar", + "Gunther", + "Gus", + "Gussie", + "Gust", + "Gustaaf", + "Gustave", + "Guus", + "Guust", + "Guy", + "Gwen", + "Gwendolyn", + "Hadley", + "Hailee", + "Hailey", + "Hailie", + "Hal", + "Haleigh", + "Haley", + "Halie", + "Halle", + "Hallie", + "Hanna", + "Hannah", + "Hans", + "Hardy", + "Harley", + "Harmon", + "Harmony", + "Harold", + "Harrison", + "Harry", + "Harvey", + "Haskel", + "Hassan", + "Hassie", + "Hattie", + "Haven", + "Hayden", + "Haylee", + "Hayley", + "Haylie", + "Hazel", + "Hazle", + "Heath", + "Heather", + "Heber", + "Hector", + "Hedwig", + "Hedwin", + "Heidi", + "Helen", + "Helena", + "Helene", + "Helga", + "Hellen", + "Helmut", + "Heloise", + "Hendrik", + "Henk", + "Henri", + "Henriette", + "Henry", + "Herbert", + "Herman", + "Hermann", + "Hermina", + "Herminio", + "Hershel", + "Herta", + "Hertha", + "Hester", + "Hettie", + "Hilario", + "Hilbert", + "Hilda", + "Hildegard", + "Hillard", + "Hillary", + "Hilma", + "Hilton", + "Hipolito", + "Hiram", + "Hobart", + "Holden", + "Hollie", + "Hollis", + "Holly", + "Hope", + "Horace", + "Horacio", + "Hortense", + "Hosea", + "Houston", + "Howard", + "Howell", + "Hoyt", + "Hubert", + "Hudson", + "Hugh", + "Hulda", + "Humberto", + "Hunter", + "Hyman", + "Ian", + "Ibrahim", + "Icie", + "Ida", + "Idell", + "Idella", + "Ignacio", + "Ignatius", + "Ike", + "Ilya", + "Ilene", + "Iliana", + "Ima", + "Imani", + "Imelda", + "Immanuel", + "Imogene", + "Ine", + "Ines", + "Irma", + "Irwin", + "Isaac", + "Isaak", + "Isabel", + "Isabella", + "Isabelle", + "Isac", + "Isadore", + "Isai", + "Isaiah", + "Isaias", + "Isidoor", + "Ismael", + "Isobel", + "Isom", + "Israel", + "Issac", + "Itzel", + "Iva", + "Ivan", + "Ivo", + "Ivy", + "Izabella", + "Izaiah", + "Jaak", + "Jabari", + "Jace", + "Jacob", + "Jacobus", + "Jack", + "Jackeline", + "Jackie", + "Jacklyn", + "Jackson", + "Jacky", + "Jaclyn", + "Jacquelyn", + "Jacques", + "Jacynthe", + "Jade", + "Jaden", + "Jadyn", + "Jaeden", + "Jaida", + "Jaiden", + "Jailyn", + "Jaime", + "Jaimie", + "Jake", + "Jakie", + "Jakob", + "Jaleel", + "Jalen", + "Jalon", + "Jalyn", + "Jamaal", + "Jamal", + "Jamar", + "Jamarcus", + "Jamel", + "James", + "Jamey", + "Jamie", + "Jamil", + "Jamir", + "Jamison", + "Jammie", + "Jan", + "Jan Jaap", + "Jana", + "Jane", + "Janelle", + "Janessa", + "Janet", + "Janice", + "Janick", + "Janie", + "Janis", + "Jannick", + "Jannie", + "Jany", + "Jaques", + "Jaquelin", + "Jaqueline", + "Jared", + "Jaren", + "Jarod", + "Jaron", + "Jarred", + "Jarrell", + "Jarret", + "Jarrett", + "Jarrod", + "Jarvis", + "Jasen", + "Jasmijn", + "Jasmine", + "Jason", + "Jasper", + "Jaunita", + "Javier", + "Javon", + "Javonte", + "Jay", + "Jayce", + "Jaycee", + "Jayda", + "Jayden", + "Jaydon", + "Jaylan", + "Jaylen", + "Jaylin", + "Jaylon", + "Jayme", + "Jayne", + "Jayson", + "Jazlyn", + "Jazmin", + "Jazmyn", + "Jazmyne", + "Jean", + "Jean-Claude", + "Jean-Luc", + "Jean-Marie", + "Jean-Paul", + "Jean-Pierre", + "Jeanette", + "Jeanie", + "Jeanne", + "Jed", + "Jef", + "Jeff", + "Jeffrey", + "Jeffry", + "Jena", + "Jenifer", + "Jennie", + "Jennifer", + "Jennyfer", + "Jensen", + "Jerad", + "Jerald", + "Jeramie", + "Jeramy", + "Jerel", + "Jeremie", + "Jeremy", + "Jermain", + "Jermaine", + "Jermey", + "Jeroen", + "Jerome", + "Jeromy", + "Jerre", + "Jerrod", + "Jerrold", + "Jerry", + "Jess", + "Jesse", + "Jessica", + "Jessie", + "Jessika", + "Jessy", + "Jessyca", + "Jesus", + "Jett", + "Jettie", + "Jevon", + "Jewel", + "Jewell", + "Jillian", + "Jimmie", + "Jimmy", + "Jo", + "Joah", + "Joan", + "Joanna", + "Joanne", + "Joannie", + "Joanny", + "Joany", + "Joaquin", + "Jocelyn", + "Jodie", + "Jody", + "Joe", + "Joel", + "Joelle", + "Joey", + "Johan", + "Johanna", + "Johannes", + "Johathan", + "John", + "Johnnie", + "Johnny", + "Johnson", + "Jolie", + "Jon", + "Jonas", + "Jonatan", + "Jonathan", + "Joos", + "Joost", + "Jordan", + "Jorden", + "Jordi", + "Jordy", + "Joren", + "Jorge", + "Jos", + "José", + "Josefien", + "Josefina", + "Joseph", + "Josephine", + "Joshua", + "Joshuah", + "Josiah", + "Josiane", + "Josianne", + "Josie", + "Jovan", + "Jovani", + "Jovanny", + "Jowan", + "Jowannes", + "Joy", + "Joyce", + "Jozef", + "Juana", + "Juanita", + "Judah", + "Jude", + "Judge", + "Judson", + "Jules", + "Julia", + "Julian", + "Juliana", + "Julianne", + "Julie", + "Julien", + "Juliet", + "Juliette", + "Julio", + "Julius", + "June", + "Junior", + "Junius", + "Jurgen", + "Justen", + "Justin", + "Justina", + "Justine", + "Justien", + "Justus", + "Justyn", + "Juvenal", + "Juwan", + "Kaat", + "Kacey", + "Kaci", + "Kacie", + "Kade", + "Kaden", + "Kaela", + "Kaelyn", + "Kai", + "Kailee", + "Kailey", + "Kailyn", + "Kaitlin", + "Kaitlyn", + "Kal", + "Kaleb", + "Kaleigh", + "Kaley", + "Kali", + "Kallie", + "Kameron", + "Kamiel", + "Kamille", + "Kamron", + "Kane", + "Kara", + "Kareem", + "Karel", + "Karen", + "Kari", + "Kariane", + "Karianne", + "Karina", + "Karine", + "Karl", + "Karlee", + "Karley", + "Karli", + "Karlie", + "Karolien", + "Karson", + "Kas", + "Kasandra", + "Kasey", + "Kassandra", + "Kat", + "Katarina", + "Kateline", + "Katelijn", + "Katelynn", + "Katharina", + "Katherine", + "Katheryn", + "Kathleen", + "Kathlyn", + "Kathryn", + "Kathryne", + "Katleen", + "Katlien", + "Katrina", + "Katrien", + "Katie", + "Kay", + "Kaya", + "Kaycee", + "Kayden", + "Kayla", + "Kaylah", + "Kaylee", + "Kayleigh", + "Kayley", + "Kayli", + "Kaylie", + "Kaylin", + "Keagan", + "Keanu", + "Keara", + "Keaton", + "Keegan", + "Keeley", + "Kees", + "Keesje", + "Keira", + "Keith", + "Kellen", + "Kelley", + "Kelli", + "Kellie", + "Kelly", + "Kelsi", + "Kelsie", + "Kelton", + "Kelvin", + "Ken", + "Kendra", + "Kendrick", + "Kenji", + "Kenna", + "Kennedi", + "Kennedy", + "Kenneth", + "Kennie", + "Kenny", + "Kenton", + "Kenya", + "Kenyatta", + "Kenyon", + "Keshaun", + "Keven", + "Kevin", + "Kevon", + "Keyon", + "Keyshawn", + "Khalid", + "Khalil", + "Kian", + "Kiana", + "Kianna", + "Kiara", + "Kiarra", + "Kiel", + "Kiera", + "Kieran", + "Kiley", + "Kim", + "Kimberly", + "King", + "Kip", + "Kira", + "Kirk", + "Kirsten", + "Kitty", + "Klaartje", + "Klara", + "Kobe", + "Koby", + "Kody", + "Koen", + "Koenraad", + "Kole", + "Korbin", + "Korey", + "Kory", + "Kraig", + "Kris", + "Krista", + "Kristel", + "Kristian", + "Kristien", + "Kristina", + "Kristof", + "Kristoff", + "Kristoffer", + "Kristy", + "Krystal", + "Krystel", + "Krystina", + "Kurt", + "Kyla", + "Kyle", + "Kylee", + "Kyleigh", + "Kyler", + "Kylie", + "Kyra", + "Lacey", + "Lacy", + "Lafayette", + "Laila", + "Laisha", + "Lamar", + "Lambert", + "Lambik", + "Lamont", + "Lance", + "Landen", + "Lane", + "Laney", + "Larissa", + "Laron", + "Larry", + "Larue", + "Laura", + "Laurel", + "Lauren", + "Laurence", + "Lauretta", + "Lauriane", + "Laurianne", + "Laurie", + "Laurine", + "Laury", + "Lauryn", + "Lavada", + "Lavern", + "Laverna", + "Laverne", + "Lavina", + "Lavinia", + "Lavon", + "Lavonne", + "Lawrence", + "Lawson", + "Layla", + "Layne", + "Lazaro", + "Lea", + "Leander", + "Leandro", + "Leanna", + "Leanne", + "Leatha", + "Leda", + "Lee", + "Leen", + "Leentje", + "Leif", + "Leila", + "Lela", + "Leland", + "Lelia", + "Lempi", + "Lemuel", + "Lenna", + "Lennert", + "Lennie", + "Lenny", + "Lenora", + "Lenore", + "Leo", + "Leola", + "Leon", + "Leonard", + "Leonardo", + "Leone", + "Leonel", + "Leonie", + "Leonore", + "Leontine", + "Leopold", + "Leopoldo", + "Leora", + "Lera", + "Lesley", + "Leslie", + "Lesly", + "Lessie", + "Lester", + "Leta", + "Letha", + "Letitia", + "Levi", + "Lew", + "Lewis", + "Lex", + "Lexie", + "Lexus", + "Lia", + "Liam", + "Liana", + "Lies", + "Lien", + "Lieve", + "Lieven", + "Lila", + "Lilian", + "Liliana", + "Liliane", + "Lillian", + "Lilliana", + "Lillie", + "Lilly", + "Lily", + "Lilyan", + "Lina", + "Linda", + "Linde", + "Lindsay", + "Lindsey", + "Linn", + "Line", + "Linnie", + "Lionel", + "Lisa", + "Lise", + "Lisette", + "Liza", + "Lizeth", + "Lizzie", + "Llewellyn", + "Lloyd", + "Logan", + "Lois", + "Loise", + "Lola", + "Lolita", + "Loma", + "Lon", + "London", + "Lonie", + "Lonnie", + "Lonny", + "Lora", + "Lore", + "Loraine", + "Loren", + "Lorena", + "Lorens", + "Lorenz", + "Lorenzo", + "Lori", + "Lorine", + "Lorke", + "Lotte", + "Lou", + "Louie", + "Louisa", + "Lourdes", + "Louvenia", + "Lowie", + "Loy", + "Luc", + "Luca", + "Lucas", + "Luciano", + "Lucie", + "Lucienne", + "Lucile", + "Lucinda", + "Lucio", + "Lucius", + "Lucy", + "Ludie", + "Ludwig", + "Luigi", + "Luis", + "Luisa", + "Luise", + "Luk", + "Luka", + "Lukas", + "Luke", + "Lula", + "Lulu", + "Luna", + "Lupe", + "Lurline", + "Lut", + "Luther", + "Lyda", + "Lydia", + "Lyn", + "Lynn", + "Lyric", + "Lysanne", + "Maaike", + "Mabel", + "Mabelle", + "Mac", + "Macey", + "Macie", + "Machteld", + "Mack", + "Mackenzie", + "Macy", + "Madaline", + "Madalyn", + "Maddison", + "Madeline", + "Madelyn", + "Madelynn", + "Madie", + "Madilyn", + "Madisen", + "Madison", + "Madisyn", + "Madonna", + "Madyson", + "Mae", + "Maegan", + "Maeve", + "Mafalda", + "Magali", + "Magdalen", + "Magdalena", + "Maggie", + "Magnolia", + "Magnus", + "Maia", + "Maida", + "Maiya", + "Major", + "Makayla", + "Makenna", + "Makenzie", + "Malachi", + "Malcolm", + "Malika", + "Malinda", + "Mallie", + "Mallory", + "Malvina", + "Mandy", + "Manley", + "Manuel", + "Manuela", + "Mara", + "Marc", + "Marcel", + "Marcelina", + "Marcelino", + "Marcella", + "Marcelle", + "Marcellus", + "Marcelo", + "Marcia", + "Marco", + "Marcos", + "Marcus", + "Margaret", + "Margarett", + "Margaretta", + "Margarette", + "Margarita", + "Marge", + "Margie", + "Margot", + "Margret", + "Marguerite", + "Maria", + "Mariah", + "Mariam", + "Marian", + "Mariane", + "Marianna", + "Marianne", + "Mariano", + "Maribel", + "Marie", + "Marie-Anne", + "Marie-Jeanne", + "Mariela", + "Marielle", + "Marietta", + "Marijn", + "Marilie", + "Marilou", + "Marilyne", + "Marina", + "Mario", + "Marion", + "Marius", + "Marja", + "Marjan", + "Marjolijn", + "Marjorie", + "Mark", + "Markus", + "Marlee", + "Marleen", + "Marlene", + "Marleyne", + "Marlijn", + "Marq", + "Marquis", + "Marquise", + "Marta", + "Marthe", + "Martijn", + "Martin", + "Martina", + "Martine", + "Marty", + "Mary", + "Marya", + "Maryse", + "Mason", + "Mateo", + "Mathew", + "Mathijs", + "Mathias", + "Mathilde", + "Matijs", + "Matilda", + "Matilde", + "Matt", + "Matteo", + "Matthias", + "Matthijs", + "Mattias", + "Maud", + "Maude", + "Maudie", + "Maureen", + "Maurice", + "Mauricio", + "Maurine", + "Maverick", + "Mavis", + "Max", + "Maxie", + "Maxime", + "Maximiliaan", + "Maximillia", + "Maximillian", + "Maximus", + "Maxine", + "Maxwell", + "May", + "Maya", + "Maybell", + "Maybelle", + "Maynard", + "Mazie", + "Meaghan", + "Meda", + "Megan", + "Megane", + "Meggie", + "Meghan", + "Mekhi", + "Melany", + "Melanie", + "Melisa", + "Melissa", + "Mellie", + "Melody", + "Melvin", + "Melvina", + "Melyna", + "Melyssa", + "Mercedes", + "Meredith", + "Merijn", + "Merl", + "Merle", + "Merlijn", + "Mertie", + "Mervin", + "Mia", + "Mica", + "Micaela", + "Micah", + "Michael", + "Michaël", + "Michaela", + "Michale", + "Michel", + "Michele", + "Michelle", + "Miel", + "Miguel", + "Mika", + "Mike", + "Mikel", + "Milan", + "Miles", + "Milford", + "Millie", + "Milo", + "Milton", + "Mina", + "Minerva", + "Minnie", + "Miracle", + "Mireille", + "Mireya", + "Misael", + "Misty", + "Mitch", + "Mitchell", + "Mittie", + "Modesta", + "Modesto", + "Mohamed", + "Mohammed", + "Moises", + "Mollie", + "Molly", + "Mon", + "Mona", + "Monica", + "Monique", + "Monserrat", + "Monserrate", + "Montana", + "Monte", + "Monty", + "Morgan", + "Moriah", + "Morris", + "Mortimer", + "Morton", + "Mose", + "Moses", + "Moshe", + "Mossie", + "Mozella", + "Mozelle", + "Muhammad", + "Muriel", + "Murielle", + "Murphy", + "Murray", + "Mustafa", + "Mya", + "Myah", + "Mylene", + "Myles", + "Myra", + "Myriam", + "Myrl", + "Myrna", + "Myron", + "Myrtice", + "Nadia", + "Nakia", + "Name", + "Nannie", + "Naomi", + "Naomie", + "Napoleon", + "Nasir", + "Nat", + "Natalia", + "Natalie", + "Natasha", + "Nathan", + "Nathaniël", + "Nathen", + "Nayeli", + "Ned", + "Nedra", + "Neha", + "Neil", + "Nelda", + "Nella", + "Nelle", + "Nellie", + "Nels", + "Nelson", + "Neoma", + "Nestor", + "Nettie", + "Neva", + "Newell", + "Newton", + "Nia", + "Niander", + "Nicholas", + "Nicholaus", + "Nichole", + "Nick", + "Nickolas", + "Nico", + "Nicola", + "Nicolas", + "Nicole", + "Nicolette", + "Niek", + "Niel", + "Niels", + "Nigel", + "Nikita", + "Nikki", + "Niko", + "Nikolas", + "Nils", + "Nina", + "Noah", + "Nobel", + "Noë", + "Noëlle", + "Noemi", + "Noemie", + "Nola", + "Nolan", + "Noor", + "Nora", + "Norbert", + "Norberto", + "Norene", + "Norma", + "Norris", + "Norval", + "Norwood", + "Nova", + "Novella", + "Nya", + "Nyah", + "Nyasinth", + "Obelix", + "Oceanne", + "Octaaf", + "Octavia", + "Octavius", + "Odelle", + "Odessa", + "Odie", + "Ofelia", + "Okey", + "Olaf", + "Olav", + "Ole", + "Olen", + "Oleta", + "Olga", + "Olin", + "Olivier", + "Ollie", + "Omari", + "Omer", + "Ona", + "Onie", + "Opal", + "Ophelia", + "Ora", + "Oran", + "Oren", + "Orie", + "Orin", + "Orion", + "Orlando", + "Orlo", + "Orpha", + "Orrin", + "Orval", + "Orville", + "Osbaldo", + "Osborne", + "Oscar", + "Osvaldo", + "Oswald", + "Oswaldo", + "Otha", + "Otho", + "Otilia", + "Otis", + "Ottilie", + "Ottis", + "Otto", + "Ova", + "Owen", + "Ozella", + "Pablo", + "Paige", + "Pam", + "Pamela", + "Pan", + "Paolo", + "Paris", + "Pascal", + "Pascale", + "Pat", + "Patience", + "Patricia", + "Patrick", + "Patsy", + "Pattie", + "Paul", + "Paula", + "Pauline", + "Paxton", + "Payton", + "Pearl", + "Pearlie", + "Pedro", + "Peggie", + "Penelope", + "Pepijn", + "Percival", + "Percy", + "Perry", + "Peter", + "Petra", + "Petrus", + "Phil", + "Philemon", + "Philip", + "Philippe", + "Philippa", + "Pierke", + "Pierre", + "Pierre-Joseph", + "Pierre-Yves", + "Piet", + "Pieter", + "Pieter-Jan", + "Pieternel", + "Pietje", + "Pim", + "Pinkie", + "Pod", + "Poderik", + "Poe", + "Pol", + "Polly", + "Pommelien", + "Preston", + "Prince", + "Princess", + "Priscilla", + "Prudence", + "Queen", + "Queenie", + "Quentin", + "Quincy", + "Quinn", + "Quint", + "Quinten", + "Rachael", + "Rachel", + "Rachelle", + "Rae", + "Raf", + "Rafael", + "Rafaela", + "Raheem", + "Rahsaan", + "Rahul", + "Raimond", + "Ralf", + "Ralph", + "Ramiro", + "Ramon", + "Ramona", + "Rand", + "Randal", + "Randi", + "Randy", + "Ransom", + "Raoul", + "Raphael", + "Raphaelle", + "Raquel", + "Rashad", + "Rashawn", + "Rasheed", + "Raul", + "Raven", + "Ray", + "Raymond", + "Raymundo", + "Reagan", + "Reanna", + "Reba", + "Rebeca", + "Rebecca", + "Rebeka", + "Rebekah", + "Reece", + "Reed", + "Reese", + "Regan", + "Reggie", + "Reginald", + "Reid", + "Reilly", + "Reina", + "Reinhold", + "Remington", + "Rene", + "Renee", + "Ressie", + "Reta", + "Retha", + "Retta", + "Reuben", + "Reva", + "Rex", + "Rey", + "Reyes", + "Reymundo", + "Reyna", + "Reynold", + "Rhea", + "Rhett", + "Rhianna", + "Rhoda", + "Ricardo", + "Richard", + "Richie", + "Rick", + "Rickey", + "Rickie", + "Ricky", + "Rico", + "Rik", + "Riko", + "Rikkert", + "Rikkie", + "Rita", + "River", + "Rob", + "Robbe", + "Robbie", + "Robert", + "Roberta", + "Roberto", + "Robin", + "Robyn", + "Rocky", + "Rod", + "Roderik", + "Rodger", + "Rodolfo", + "Rodrick", + "Rodrigo", + "Roel", + "Roeland", + "Roger", + "Rogers", + "Roland", + "Rolando", + "Roma", + "Romaine", + "Roman", + "Romelu", + "Romero", + "Ron", + "Ronald", + "Ronaldo", + "Ronny", + "Roos", + "Rosa", + "Rosalee", + "Rosalia", + "Rosalind", + "Rosalinda", + "Rosalyn", + "Rosanna", + "Rosario", + "Rose", + "Rosella", + "Roselyn", + "Rosemarie", + "Rosemary", + "Rosemond", + "Rosendo", + "Rosetta", + "Rosie", + "Rosina", + "Roslyn", + "Ross", + "Rossie", + "Rowan", + "Rowena", + "Rowland", + "Roxane", + "Roxanne", + "Roy", + "Royal", + "Royce", + "Rozella", + "Ruben", + "Rubie", + "Ruby", + "Rudolf", + "Rudolph", + "Rudy", + "Rupert", + "Russ", + "Russel", + "Russell", + "Rusty", + "Ruth", + "Ruthe", + "Ruthie", + "Ryan", + "Ryann", + "Ryder", + "Rylan", + "Rylee", + "Ryleigh", + "Ryley", + "Saartje", + "Sabina", + "Sabine", + "Sabrina", + "Sadie", + "Sage", + "Saige", + "Sallie", + "Sally", + "Salma", + "Salvador", + "Salvatore", + "Sam", + "Samanta", + "Samantha", + "Samara", + "Samir", + "Sammie", + "Sammy", + "Samson", + "Sander", + "Sandra", + "Sandrine", + "Sandy", + "Santa", + "Santiago", + "Santina", + "Santino", + "Santos", + "Sarah", + "Sarina", + "Sasha", + "Saul", + "Savanah", + "Savanna", + "Savannah", + "Savion", + "Scarlett", + "Schuyler", + "Scot", + "Scottie", + "Scotty", + "Sean", + "Sebastian", + "Sebastiaan", + "Sedrick", + "Selena", + "Sem", + "Sep", + "Seppe", + "Serena", + "Serenity", + "Seth", + "Shad", + "Shaina", + "Shakira", + "Shana", + "Shane", + "Shanel", + "Shanelle", + "Shania", + "Shanie", + "Shaniya", + "Shanna", + "Shannon", + "Shanny", + "Shanon", + "Shany", + "Sharon", + "Shaun", + "Shawn", + "Shawna", + "Shaylee", + "Shayna", + "Shayne", + "Shea", + "Sheila", + "Sheldon", + "Sheridan", + "Sherman", + "Shirley", + "Shyanne", + "Sibyl", + "Sid", + "Sidney", + "Sien", + "Sierra", + "Sigmund", + "Sigrid", + "Sigurd", + "Silas", + "Sim", + "Simeon", + "Simon", + "Simone", + "Sippe", + "Sis", + "Siske", + "Skye", + "Skyla", + "Skylar", + "Sofia", + "Sofie", + "Soledad", + "Solomon", + "Sonja", + "Sonny", + "Sonya", + "Sophia", + "Sophie", + "Spencer", + "Stacey", + "Stacy", + "Staf", + "Stan", + "Stanley", + "Stantin", + "Stefan", + "Stefanie", + "Stella", + "Stephan", + "Stephane", + "Stephanie", + "Stephany", + "Stephen", + "Stephon", + "Sterling", + "Steve", + "Steven", + "Stevie", + "Stijn", + "Stuart", + "Summer", + "Sunny", + "Sus", + "Susan", + "Susanna", + "Susie", + "Suske", + "Suzanne", + "Sven", + "Syd", + "Sydney", + "Sydni", + "Sydnie", + "Sylvan", + "Sylvester", + "Sylvia", + "Tabitha", + "Tad", + "Talia", + "Talon", + "Tamara", + "Tamia", + "Tania", + "Tanner", + "Tanya", + "Tara", + "Taryn", + "Tate", + "Tatum", + "Tatyana", + "Taurean", + "Taya", + "Taylor", + "Tea", + "Ted", + "Telly", + "Teo", + "Terence", + "Teresa", + "Terrance", + "Terrell", + "Terrence", + "Terry", + "Tess", + "Tessie", + "Tevin", + "Teun", + "Teunis", + "Thalia", + "Thea", + "Thelma", + "Theo", + "Theodora", + "Theodore", + "Theresa", + "Therese", + "Theresia", + "Thijs", + "Thom", + "Thomas", + "Thor", + "Tia", + "Tiana", + "Tiara", + "Tiene", + "Tiffany", + "Tijl", + "Tijs", + "Tim", + "Timmothy", + "Timmy", + "Timothy", + "Tina", + "Tine", + "Tineke", + "Titus", + "Tobe", + "Tobias", + "Toby", + "Tom", + "Tomas", + "Tomasa", + "Tommie", + "Toney", + "Toni", + "Tony", + "Toon", + "Torsten", + "Toy", + "Trace", + "Tracey", + "Tracy", + "Travis", + "Travon", + "Trees", + "Tremaine", + "Tremayne", + "Trent", + "Trenton", + "Tressa", + "Tressie", + "Treva", + "Trever", + "Trevion", + "Trevor", + "Trey", + "Trinity", + "Tris", + "Tristan", + "Triston", + "Troy", + "Trudie", + "Trycia", + "Trystan", + "Turner", + "Twila", + "Tyler", + "Tyra", + "Tyree", + "Tyreek", + "Tyrel", + "Tyrell", + "Tyrese", + "Tyrique", + "Tyshawn", + "Tyson", + "Ubaldo", + "Ulices", + "Ulises", + "Una", + "Uma", + "Urbain", + "Urban", + "Urbanus", + "Uriel", + "Ursula", + "Vada", + "Valentin", + "Valentina", + "Valentine", + "Valerie", + "Vance", + "Vanessa", + "Vaughn", + "Veda", + "Velda", + "Vella", + "Velma", + "Velva", + "Vena", + "Verda", + "Verdie", + "Vergie", + "Verla", + "Verlie", + "Vern", + "Verna", + "Verner", + "Vernice", + "Vernie", + "Vernon", + "Verona", + "Veronica", + "Vesta", + "Vic", + "Vicenta", + "Vicente", + "Vickie", + "Vicky", + "Victor", + "Victoria", + "Vida", + "Vidal", + "Vilma", + "Vince", + "Vincent", + "Vincenza", + "Vincenzo", + "Vinnie", + "Viola", + "Violet", + "Violette", + "Virgie", + "Virgil", + "Virginia", + "Virginie", + "Vita", + "Vito", + "Viva", + "Vivian", + "Viviane", + "Vivianne", + "Vivien", + "Vivienne", + "Vladimir", + "Wade", + "Waldo", + "Walker", + "Wallace", + "Walt", + "Walter", + "Wan", + "Wannes", + "Ward", + "Warius", + "Warres", + "Watson", + "Waylon", + "Wayne", + "Webster", + "Weldon", + "Wellington", + "Wendell", + "Wendy", + "Werner", + "Wesley", + "West", + "Whitney", + "Wil", + "Wilber", + "Wilbert", + "Wiley", + "Wilford", + "Wilfred", + "Wilfredo", + "Wilfrid", + "Wilhelm", + "Wilhelmine", + "Will", + "Willa", + "Willem", + "William", + "Willie", + "Willis", + "Willow", + "Willy", + "Wilma", + "Wilmer", + "Wilson", + "Wim", + "Winfield", + "Winifred", + "Winnifred", + "Winona", + "Witse", + "Wout", + "Wouter", + "Wyman", + "Xander", + "Xavier", + "Xzavier", + "Yadira", + "Yannick", + "Yasmin", + "Yasmine", + "Yazmin", + "Yesenia", + "Yessenia", + "Yolanda", + "Yoshiko", + "Yvette", + "Yvonne", + "Zach", + "Zachariah", + "Zachary", + "Zack", + "Zackary", + "Zackie", + "Zakary", + "Zander", + "Zane", + "Zaria", + "Zechariah", + "Zelda", + "Zella", + "Zelma", + "Zena", + "Zetta", + "Zion", + "Zita", + "Zoë", + "Zoey", + "Zoie", + "Zoila", + "Zola", + "Zora", + "Zula" + ]) + + @doc """ + Returns a random last name + + ## Examples + + iex> Faker.Person.Nl.last_name() + "De Haene" + iex> Faker.Person.Nl.last_name() + "Heynen" + iex> Faker.Person.Nl.last_name() + "Peirs" + iex> Faker.Person.Nl.last_name() + "Laanstra" + """ + @spec last_name() :: String.t() + def last_name, do: last_name(Faker.random_between(0, 9)) + defp last_name(0), do: "De #{last_name_after_de()}" + defp last_name(1), do: "Van #{last_name_after_van()}" + + defp last_name(n) when is_integer(n) do + last_name_standalone() + end + + @doc """ + Returns a random last name + + ## Examples + + iex> Faker.Person.Nl.last_name_standalone() + "Schurink" + iex> Faker.Person.Nl.last_name_standalone() + "Strobbe" + iex> Faker.Person.Nl.last_name_standalone() + "Reunes" + iex> Faker.Person.Nl.last_name_standalone() + "Heynen" + """ + @spec last_name_standalone() :: String.t() + sampler(:last_name_standalone, [ + "Aalbers", + "Aalberts", + "Aarts", + "Abeel", + "Abbeel", + "Abbink", + "Abrahams", + "Abts", + "Achten", + "Ackaert", + "Acke", + "Ackerman", + "Ackermans", + "Adams", + "Adelaars", + "Adins", + "Adriaens", + "Adriaensen", + "Adriaensens", + "Adriaenssens", + "Aelberts", + "Aelbrecht", + "Aerts", + "Aernouts", + "Akkerman", + "Akkermans", + "Albert", + "Alberts", + "Alkema", + "Allegaert", + "Allewaert", + "Amand", + "Ambrosius", + "Ameel", + "Ameloot", + "Amelynck", + "Ameye", + "Amweg", + "Apeldoorn", + "Appelhof", + "Appelman", + "Appelmans", + "Arnouts", + "Arens", + "Arends", + "Arijs", + "Artois", + "Aspe", + "Asselijn", + "Asselman", + "Asselbergs", + "Assink", + "Astaes", + "Atema", + "Averink", + "Aversteeg", + "Avonds", + "Avonts", + "Awouters", + "Azema", + "Aziz", + "Baats", + "Baaten", + "Baccaert", + "Backer", + "Backaert", + "Baeke", + "Baeck", + "Baecke", + "Baele", + "Baert", + "Baeten", + "Baeyens", + "Bafort", + "Baggen", + "Baggerman", + "Baguet", + "Baijens", + "Bailly", + "Bakelants", + "Bakker", + "Balkema", + "Ballemans", + "Balliauw", + "Baltussen", + "Bamelis", + "Bamert", + "Bammens", + "Beck", + "Becker", + "Beckers", + "Bednar", + "Beds", + "Beeckaert", + "Beeckman", + "Beekman", + "Beekmans", + "Beelen", + "Beerens", + "Beernaert", + "Beets", + "Bekaert", + "Bellemans", + "Bellers", + "Bergman", + "Bergmans", + "Bernards", + "Bernaerts", + "Bertels", + "Bervoets", + "Bever", + "Biesemans", + "Bindels", + "Bink", + "Binnemans", + "Bikkembergs", + "Blancke", + "Block", + "Blomqvist", + "Blommaert", + "Blomme", + "Boden", + "Boecks", + "Boelen", + "Boelens", + "Boogaard", + "Boone", + "Boonen", + "Bok", + "Bokkers", + "Bokma", + "Bonte", + "Bontinck", + "Boskamp", + "Bosman", + "Braeckmans", + "Bracke", + "Braker", + "Brakke", + "Bral", + "Breughel", + "Breydel", + "Broos", + "Brouwer", + "Brusselmans", + "Bruyneel", + "Bruynincks", + "Bruynooghe", + "Buelens", + "Burm", + "Buysse", + "Buytaert", + "Caenen", + "Caerts", + "Caeyers", + "Cafmeyer", + "Calmeyn", + "Callebaut", + "Callens", + "Callewaert", + "Cannaert", + "Cannaerts", + "Cant", + "Cantens", + "Camerlynck", + "Campaert", + "Campert", + "Campe", + "Camus", + "Capelle", + "Capoen", + "Cappaert", + "Casper", + "Casteels", + "Castermans", + "Celie", + "Celis", + "Certyn", + "Ceulen", + "Ceulemans", + "Ceusters", + "Chielens", + "Christiaan", + "Christiaens", + "Christiaensen", + "Christoffels", + "Cielen", + "Cieremans", + "Cilissen", + "Claes", + "Claessen", + "Claessens", + "Clarebout", + "Cleemput", + "Clement", + "Cleymans", + "Clijsters", + "Cloet", + "Cluistra", + "Coene", + "Collier", + "Colpaert", + "Cools", + "Coppens", + "Cornelis", + "Cornelissen", + "Cosyn", + "Cox", + "Crabbe", + "Crabbeels", + "Creemers", + "Cremer", + "Creuwels", + "Crevits", + "Criel", + "Croene", + "Cuypers", + "Cuppens", + "Cuvelier", + "Daalder", + "Daane", + "Daansen", + "Daas", + "Daelemans", + "Daelman", + "Daens", + "Daem", + "Daemen", + "Danckaert", + "Daniels", + "Danneels", + "Dante", + "Damaert", + "Dammers", + "Damstra", + "Dauwe", + "Debaere", + "Debleke", + "Debruine", + "Decauwer", + "Decleir", + "Decorte", + "Dedonker", + "Dekker", + "Delodder", + "Deman", + "Demeester", + "Demeulemeester", + "Demey", + "Demayer", + "Demeyer", + "Depraeter", + "Diallo", + "Dibbets", + "Diels", + "Dielis", + "Dielman", + "Dieltjens", + "Diependaele", + "Dierickx", + "Dijkmans", + "Dijkstra", + "Dillen", + "Dhaenens", + "Dhooghe", + "Dhollander", + "Dhondt", + "Dobbelaere", + "Dobbeleer", + "Dockx", + "Doets", + "Donckers", + "Donkers", + "Doms", + "Dooms", + "Doorn", + "Douwe", + "Douwen", + "Drapers", + "Dreesen", + "Drieghe", + "Driessen", + "Driessens", + "Druyts", + "Dubois", + "Duerinck", + "Dufour", + "Dujardin", + "Dumoulin", + "Dupont", + "Dyckmans", + "Dykstra", + "Ebbers", + "Ebbink", + "Ebeling", + "Ebert", + "Eckert", + "Eckhardt", + "Eckman", + "Edelman", + "Edens", + "Eeckhout", + "Eeftink", + "Eekhuis", + "Eekma", + "Eelen", + "Eerdmans", + "Eerenberg", + "Eerens", + "Egbert", + "Egberts", + "Eggermont", + "Egghe", + "Eijsermans", + "Eikelboom", + "Eilander", + "Ekelmans", + "Ekels", + "Ekema", + "Ekers", + "Elen", + "Elias", + "Elsen", + "Elzinga", + "Embrechts", + "Emmens", + "Emmerechts", + "Enderman", + "Eppinga", + "Eppink", + "Erens", + "Eringa", + "Erkelbout", + "Ettema", + "Evenepoel", + "Everaert", + "Everts", + "Faas", + "Faasen", + "Fabre", + "Fabricius", + "Fakkel", + "Fatima", + "Faye", + "Feenstra", + "Feersma", + "Feijen", + "Feikema", + "Felix", + "Fels", + "Feryn", + "Feyaerts", + "Feys", + "Feytens", + "Flament", + "Fleerackers", + "Floren", + "Fokke", + "Fokkema", + "Fokkert", + "Fokkinga", + "Fonteyn", + "Fortuyn", + "Foubert", + "Fouquet", + "Foyer", + "Franken", + "Fredericks", + "Frissen", + "Froger", + "Fuik", + "Futselaar", + "Gaastra", + "Gabriëls", + "Galan", + "Galle", + "Gatz", + "Geboers", + "Geelen", + "Geenen", + "Geens", + "Geeraert", + "Geeraerts", + "Geerink", + "Geerinck", + "Geerinckx", + "Geers", + "Geerts", + "Geirnaert", + "Germijns", + "Gerrits", + "Geubels", + "Geuns", + "Gevaert", + "Gevers", + "Geysen", + "Gheysen", + "Gheysens", + "Ghyselinck", + "Ghysen", + "Gielen", + "Gielis", + "Gies", + "Gijbels", + "Gijs", + "Gijsen", + "Gilissen", + "Gillis", + "Glazemakers", + "Glastra", + "Goessens", + "Goethals", + "Goffin", + "Goosens", + "Goris", + "Gorissen", + "Gossaert", + "Govaert", + "Goovaerts", + "Gregorius", + "Greve", + "Groenenberg", + "Groenendijk", + "Groeneveld", + "Groenewoud", + "Groeninckx", + "Grootaers", + "Grooteman", + "Gruis", + "Gruizinga", + "Guijt", + "Guikema", + "Guldemond", + "Gunnink", + "Gutmann", + "Haaksma", + "Haan", + "Haartsen", + "Haasteren", + "Haas", + "Haeck", + "Haekens", + "Haenen", + "Haers", + "Hagemeijer", + "Hagen", + "Hagenaars", + "Hak", + "Haken", + "Halewyck", + "Halma", + "Halman", + "Halsema", + "Hamelink", + "Hamers", + "Hamstra", + "Hanekamp", + "Hanen", + "Hansen", + "Hanssens", + "Harten", + "Hautekiet", + "Haverkamp", + "Havermans", + "Havik", + "Heeren", + "Heeringa", + "Heerkens", + "Heerman", + "Heesbeen", + "Heijmans", + "Heijse", + "Hein", + "Heindryckx", + "Heirbaut", + "Heiremans", + "Heirman", + "Heirwegh", + "Hellemans", + "Hellemond", + "Helsen", + "Hellinckx", + "Hemelaar", + "Hemels", + "Hemeryck", + "Hendrickx", + "Hendriks", + "Henneman", + "Hennes", + "Hens", + "Heppe", + "Heremans", + "Heringa", + "Hermans", + "Herreman", + "Herregodts", + "Hertoghs", + "Heuninckx", + "Heurkens", + "Heutink", + "Heuvelmans", + "Hevel", + "Heyens", + "Heylen", + "Heynen", + "Heymans", + "Heyvaert", + "Hezemans", + "Hiel", + "Hillen", + "Hillewaere", + "Hillewaert", + "Himpe", + "Himschoot", + "Hintjens", + "Hoet", + "Hoeyberghs", + "Hofmans", + "Hollanders", + "Holvoet", + "Hoof", + "Hooft", + "Hooftman", + "Hoorens", + "Hoornaert", + "Hooyberghs", + "Hoste", + "Hoskens", + "Hovenier", + "Hovens", + "Hus", + "Huybrechts", + "Huycke", + "Huygen", + "Huygens", + "Huyghebaert", + "Huysmans", + "Jacobi", + "Jacobs", + "Jambers", + "Jambon", + "Jansen", + "Jansens", + "Janssen", + "Janssens", + "Jelinek", + "Jennes", + "Jespers", + "Jeurissen", + "Jitse", + "Jochems", + "Jonckers", + "Jonckheere", + "Jongbloed", + "Jonker", + "Joos", + "Joost", + "Joosten", + "Jorens", + "Joris", + "Jorissen", + "Juffermans", + "Jurgens", + "Kaas", + "Kaasjager", + "Kaal", + "Kaals", + "Kaats", + "Kabatek", + "Kabbedijk", + "Kafmaaijer", + "Kamoen", + "Kant", + "Karbaat", + "Karels", + "Kees", + "Keezer", + "Keersmaekers", + "Kefer", + "Keizer", + "Kellenaerts", + "Kempenaars", + "Kempenaers", + "Kempeneers", + "Kennof", + "Kerkhofs", + "Kersschot", + "Kesselaar", + "Kessels", + "Kesteloot", + "Kestens", + "Kesters", + "Ketelaars", + "Kieboom", + "Kiebooms", + "Kiek", + "Kiekens", + "Kielemoes", + "Kierkels", + "Kiers", + "Kietelaar", + "Kievit", + "Klaas", + "Klaasen", + "Klein", + "Klepper", + "Klijn", + "Klijsen", + "Klijsters", + "Kloet", + "Klok", + "Klokgieters", + "Klokkers", + "Klomp", + "Klooster", + "Kloosterman", + "Klootwijk", + "Klop", + "Kloppenburg", + "Klopper", + "Koelewijn", + "Koeman", + "Koenders", + "Koerts", + "Koevoet", + "Kok", + "Koks", + "Kokx", + "Konings", + "Kooij", + "Kooijman", + "Koppejan", + "Koppelaar", + "Koppelman", + "Koppen", + "Koppert", + "Koppes", + "Kordaat", + "Korteland", + "Korthals", + "Korthoudt", + "Koyen", + "Kraaij", + "Kraaijeveld", + "Kraak", + "Kral", + "Kramer", + "Kranendonk", + "Krekels", + "Kriekels", + "Kristelijn", + "Kristels", + "Kruis", + "Kuijken", + "Kuijsters", + "Kuipers", + "Kuit", + "Kuperus", + "Kuppens", + "Kupper", + "Kusseneers", + "Kustermans", + "Kusters", + "Kuypers", + "Laagland", + "Laamers", + "Laanstra", + "Laarman", + "Labeeuw", + "Laeremans", + "Lambert", + "Lamberts", + "Lambrecht", + "Lambrechts", + "Lammens", + "Lammers", + "Lammertyn", + "Lampaert", + "Lampers", + "Lampert", + "Lampo", + "Lanckman", + "Langbroek", + "Langedijk", + "Langeveld", + "Lannoo", + "Lanserhof", + "Lardenoit", + "Lareu", + "Lasoen", + "Lathouwers", + "Laudrie", + "Lauwers", + "Lecluyse", + "Lecocq", + "Lecompte", + "Leconte", + "Ledeboer", + "Ledema", + "Ledoux", + "Leduc", + "Leenaerts", + "Leenders", + "Leendert", + "Leemans", + "Leenknegt", + "Lefèvre", + "Leferink", + "Leffebure", + "Legerstee", + "Legrand", + "Legters", + "Leire", + "Lek", + "Lekker", + "Lekkerkerk", + "Leleu", + "Lelie", + "Lemarck", + "Lemmens", + "Lemmers", + "Lenaerts", + "Leonard", + "Leyers", + "Lombaert", + "Lombaerts", + "Loncke", + "Loos", + "Lootens", + "Lucas", + "Luiten", + "Luyckx", + "Luyten", + "Maagdenberg", + "Maarleveld", + "Maas", + "Maenhout", + "Maertens", + "Maes", + "Mafs", + "Magnussen", + "Mahieu", + "Maillard", + "Majoor", + "Mak", + "Makkinga", + "Malysse", + "Mampaey", + "Manders", + "Mariman", + "Martens", + "Matthys", + "Mayer", + "Mees", + "Meertens", + "Meersman", + "Meeus", + "Meeuse", + "Melis", + "Mellema", + "Mens", + "Meskens", + "Messens", + "Mestdagh", + "Meuleman", + "Meulemeester", + "Meuris", + "Meus", + "Meyers", + "Meynen", + "Meyvis", + "Michiels", + "Michielsen", + "Mijlemans", + "Minnaert", + "Minne", + "Moens", + "Moerman", + "Moeyaert", + "Mok", + "Mokveld", + "Molema", + "Molenaers", + "Molenberghs", + "Mols", + "Mondriaan", + "Montyn", + "Moonen", + "Moons", + "Moortgat", + "Mosselmans", + "Mostaert", + "Mulder", + "Muller", + "Muskens", + "Mussche", + "Mutsaers", + "Muyselaar", + "Nachtegaele", + "Naessens", + "Naert", + "Naeyaert", + "Nagels", + "Nauwelaerts", + "Neefs", + "Neele", + "Neeleman", + "Nees", + "Nefkens", + "Neggers", + "Neirynck", + "Nekkers", + "Nelissen", + "Nellens", + "Nemegheer", + "Nens", + "Neuts", + "Neven", + "Neyens", + "Neyrinck", + "Neyt", + "Nguyen", + "Nicolai", + "Niemegeers", + "Nies", + "Nieskens", + "Nieuwendaal", + "Nieuwstraten", + "Nijdeken", + "Nijeboer", + "Nijman", + "Nijs", + "Nobels", + "Noelmans", + "Noens", + "Nonneman", + "Nooijens", + "Noordijk", + "Nootebos", + "Noppe", + "Noppen", + "Noten", + "Nouwens", + "Novak", + "Noyens", + "Nuijens", + "Nuijten", + "Nuyens", + "Nuytemans", + "Nuytinck", + "Nuyts", + "Obbeek", + "Obelink", + "Oblak", + "Ockerman", + "Ockers", + "Ocket", + "Odeyn", + "Odink", + "Oegema", + "Oelbrandt", + "Oelen", + "Oeyen", + "Offermans", + "Offringa", + "Ogier", + "Ogink", + "Oisterwijk", + "Ojeda", + "Okamura", + "Okke", + "Okkema", + "Okken", + "Okkerman", + "Okon", + "Olbrecht", + "Olieslagers", + "Ollevier", + "Olsen", + "Omroep", + "Ongena", + "Ongenaet", + "Onraet", + "Ooghe", + "Ooms", + "Oosterlinck", + "Oosterlynck", + "Oostvogels", + "Opdebeeck", + "Opdeweegh", + "Oppedijk", + "Opsommer", + "Opreij", + "Ordeman", + "Orinx", + "Oris", + "Osinga", + "Oskam", + "Oskamp", + "Osselaer", + "Ost", + "Ostermeyer", + "Ostyn", + "Ottema", + "Otten", + "Ottevaere", + "Ottink", + "Ouborg", + "Ouderits", + "Ouwerkerk", + "Ovaere", + "Overbeeke", + "Owens", + "Paalman", + "Paap", + "Paas", + "Paasman", + "Paauwe", + "Pad", + "Padberg", + "Paddenburg", + "Padding", + "Paeleman", + "Paelinck", + "Paemeleire", + "Paesen", + "Paeshuyse", + "Palfijn", + "Palinckx", + "Palings", + "Palmans", + "Pals", + "Palstermans", + "Pamiers", + "Pampoen", + "Panis", + "Panhuysen", + "Pannecoeck", + "Panneels", + "Pannenkoeken", + "Pans", + "Pansaers", + "Paquet", + "Pardoen", + "Parijs", + "Parmentier", + "Parys", + "Pas", + "Pasman", + "Pasterkamp", + "Pastoors", + "Paternoster", + "Paternotte", + "Paters", + "Pattyn", + "Paulussen", + "Pauwels", + "Pavel", + "Peck", + "Peelman", + "Peers", + "Peetermans", + "Peeters", + "Pegels", + "Peijnenburg", + "Peirelinck", + "Peirs", + "Peirsman", + "Pek", + "Pekel", + "Pekkeriet", + "Pelckmans", + "Peleman", + "Pelgrims", + "Pelleboer", + "Pellens", + "Penneman", + "Penning", + "Penninckx", + "Pepels", + "Peperkamp", + "Pepermans", + "Pepernoot", + "Peereboom", + "Pereboom", + "Pereij", + "Peres", + "Permentier", + "Perneel", + "Persoons", + "Persijn", + "Peters", + "Petit", + "Pets", + "Petter", + "Petterson", + "Pettinga", + "Peumans", + "Poelaert", + "Poelman", + "Poels", + "Poelstra", + "Pol", + "Polak", + "Polfliet", + "Pollers", + "Pollier", + "Pollet", + "Poppe", + "Portier", + "Portaels", + "Powlowski", + "Preijers", + "Premereur", + "Presley", + "Proost", + "Pronk", + "Provoost", + "Provost", + "Pruijn", + "Pruim", + "Pruimboom", + "Pruis", + "Pruissers", + "Publie", + "Publiek", + "Put", + "Puttemans", + "Puttenaers", + "Putters", + "Putzeys", + "Puylaert", + "Puype", + "Puyvoet", + "Quaghebeur", + "Quartel", + "Quartier", + "Quinten", + "Quirijnen", + "Quispel", + "Quisquater", + "Quivooij", + "Raaijmakers", + "Raap", + "Raas", + "Rabaey", + "Rabens", + "Rabijns", + "Rachels", + "Radema", + "Rademakers", + "Rademeyer", + "Raedts", + "Raemdonck", + "Raes", + "Raeyen", + "Raeymaekers", + "Ramaekers", + "Ramboer", + "Raman", + "Ramen", + "Rampelberg", + "Ramaut", + "Ranzijn", + "Rap", + "Rappe", + "Rasschaert", + "Rats", + "Ratsma", + "Ratten", + "Raveling", + "Ravels", + "Raven", + "Ravens", + "Ravensbergen", + "Ravenstijn", + "Ravestijn", + "Ravnik", + "Reckers", + "Reckman", + "Redant", + "Redder", + "Redecker", + "Rederiet", + "Redert", + "Reed", + "Reedijk", + "Reef", + "Reefman", + "Reek", + "Reekmans", + "Reemer", + "Reemers", + "Reenders", + "Reesema", + "Reesink", + "Reeskens", + "Regaert", + "Regelink", + "Regensburg", + "Reggers", + "Regout", + "Reijers", + "Reijnders", + "Reijnen", + "Reijneveld", + "Reijntjes", + "Reimers", + "Reinders", + "Reinerink", + "Reintjes", + "Rek", + "Reker", + "Rekelhof", + "Remans", + "Remerink", + "Remie", + "Remijn", + "Remmers", + "Remmerswaal", + "Remus", + "Remy", + "Renard", + "Renders", + "Reniers", + "Renkema", + "Rens", + "Rensen", + "Repkes", + "Repko", + "Resink", + "Resnik", + "Retera", + "Reterink", + "Reumers", + "Reunes", + "Reurink", + "Reus", + "Reuten", + "Revier", + "Reweghs", + "Rewinkel", + "Reygaert", + "Reymen", + "Reynaers", + "Reynaert", + "Reynders", + "Reynebeau", + "Reyniers", + "Reyns", + "Reyskens", + "Ribbens", + "Ricaert", + "Rieken", + "Rietjens", + "Rietman", + "Rietveld", + "Rijckaert", + "Rijkeboer", + "Rijkers", + "Rijks", + "Rijnbeek", + "Rijnen", + "Rijntjes", + "Rijpma", + "Rijs", + "Rikken", + "Rikkert", + "Rimbaut", + "Ringoot", + "Rinke", + "Rinkel", + "Riphagen", + "Ripke", + "Rippe", + "Rippen", + "Risberg", + "Risseeuw", + "Rissewijck", + "Robben", + "Robbens", + "Robberechts", + "Robeyns", + "Robrechts", + "Robyn", + "Roche", + "Rochus", + "Rodenbach", + "Roegiers", + "Roelands", + "Roelandt", + "Roelant", + "Roelkens", + "Roels", + "Roggemans", + "Rogge", + "Roggen", + "Rogiers", + "Rojas", + "Rolink", + "Rolleman", + "Rombaut", + "Romberg", + "Rombouts", + "Romein", + "Romeyns", + "Rommel", + "Rommens", + "Rondeel", + "Ronsyn", + "Roobaert", + "Roodhooft", + "Rooijakkers", + "Rooijmans", + "Roos", + "Roosens", + "Roovers", + "Rosendaal", + "Rossaert", + "Rots", + "Rotsaert", + "Rottiers", + "Rovers", + "Rousseau", + "Rouwhorst", + "Ruis", + "Rutjes", + "Rutten", + "Ruymbeek", + "Ruymen", + "Sabbe", + "Sachs", + "Saenen", + "Saerens", + "Saeys", + "Saffe", + "Safi", + "Safranek", + "Sagal", + "Sagel", + "Sage", + "Sagers", + "Saijets", + "Saillart", + "Sails", + "Saitz", + "Salaets", + "Salet", + "Salie", + "Salvo", + "Samaras", + "Samoy", + "Sampers", + "Sampermans", + "Samson", + "Samuels", + "Samyn", + "Sanders", + "Sangers", + "Sannen", + "Santens", + "Santermans", + "Sap", + "Sapper", + "Saque", + "Sarens", + "Sargeant", + "Saris", + "Sarrazyn", + "Sas", + "Sassen", + "Sato", + "Savaete", + "Savenberg", + "Savenije", + "Saverys", + "Saveur", + "Sauter", + "Sauwens", + "Scheerders", + "Scheerlinck", + "Schelfhout", + "Schellekens", + "Schepens", + "Schepers", + "Schiettecat", + "Schipper", + "Schippers", + "Schmidt", + "Schmitt", + "Schockaert", + "Schoen", + "Schoenmaker", + "Schoenmakers", + "Schoepen", + "Schoeters", + "Schols", + "Scholz", + "Schoofs", + "Schoolmeesters", + "Schoonooghe", + "Schoors", + "Schraepen", + "Schraeyen", + "Schrans", + "Schreurs", + "Schrijvers", + "Schuddink", + "Schuit", + "Schuppert", + "Schurink", + "Schuurmans", + "Segers", + "Seghers", + "Sels", + "Semeins", + "Sempels", + "Senders", + "Sengers", + "Sennesael", + "Sepers", + "Sequens", + "Serbruyns", + "Serneels", + "Servaes", + "Sessink", + "Setten", + "Settels", + "Setz", + "Seurs", + "Seynaeve", + "Seys", + "Siao", + "Sibbel", + "Siberechts", + "Sichel", + "Siderius", + "Siebelink", + "Siemerink", + "Siemers", + "Siemons", + "Sierens", + "Siffert", + "Sijbers", + "Sijmons", + "Sijs", + "Sillis", + "Simoens", + "Simonis", + "Simons", + "Simonts", + "Sinnaeve", + "Sinnesael", + "Sintobin", + "Siobhan", + "Sioris", + "Sirks", + "Sistermans", + "Siszka", + "Siwek", + "Slabbinck", + "Slaets", + "Slagter", + "Slangen", + "Sleegers", + "Slegers", + "Sleijfer", + "Sleutels", + "Sleurs", + "Slijkerman", + "Slijpen", + "Slikker", + "Sloot", + "Sluijters", + "Sluis", + "Sluys", + "Sluyts", + "Smal", + "Smaling", + "Smallenbroek", + "Smeets", + "Smekens", + "Smet", + "Smets", + "Smeyers", + "Smid", + "Smissaert", + "Smit", + "Smits", + "Smolders", + "Smout", + "Smouts", + "Smulders", + "Smuts", + "Snackaert", + "Snacks", + "Snauwaert", + "Snelders", + "Snels", + "Sneppe", + "Sneyaert", + "Sneyders", + "Sneyers", + "Snick", + "Snijders", + "Snippe", + "Snoeck", + "Snoeckx", + "Snoeijink", + "Snoek", + "Snoekx", + "Snuif", + "Snuverink", + "Snyder", + "Sobry", + "Soenen", + "Soenens", + "Soetaert", + "Soeters", + "Somers", + "Sommers", + "Sondaar", + "Sonnemans", + "Sonnenberg", + "Sonneveld", + "Sorgeloos", + "Sovak", + "Spaan", + "Spaas", + "Spaenhoven", + "Speeckaert", + "Speelman", + "Speet", + "Spegelaere", + "Spek", + "Speleman", + "Spier", + "Spijkenisse", + "Spijker", + "Spijkerboer", + "Spijkerman", + "Spildooren", + "Spillebeen", + "Spilliaert", + "Spittaels", + "Spoed", + "Spoelhof", + "Spoelstra", + "Spons", + "Spooren", + "Spoormakers", + "Spreeuwenberg", + "Spriet", + "Springveld", + "Spruijt", + "Spruit", + "Spruyt", + "Staal", + "Staelens", + "Staes", + "Stalpaert", + "Stampaert", + "Stappers", + "Stas", + "Stassen", + "Stassijns", + "Steckel", + "Stecker", + "Stedin", + "Steegmans", + "Steels", + "Steen", + "Steenackers", + "Steenhoudt", + "Steensels", + "Stiers", + "Stijns", + "Stijven", + "Stinissen", + "Stinkens", + "Stillaert", + "Stobbaerts", + "Stockman", + "Stoel", + "Stoels", + "Stoffels", + "Stojka", + "Stok", + "Stoker", + "Stokmans", + "Stommel", + "Stomps", + "Storms", + "Straetman", + "Stracke", + "Strijbos", + "Strijckmans", + "Strijker", + "Strik", + "Stroeve", + "Stroman", + "Strobbe", + "Stroobants", + "Strubbe", + "Struelens", + "Struijs", + "Struik", + "Struyf", + "Struys", + "Struyven", + "Stubbe", + "Stuer", + "Stuerbout", + "Stuij", + "Stuyck", + "Stuyver", + "Styfhals", + "Swalens", + "Swerts", + "Swinnen", + "Taal", + "Taams", + "Tabak", + "Tack", + "Tackaert", + "Taelman", + "Taerwe", + "Taets", + "Taeymans", + "Tafel", + "Taillieu", + "Taks", + "Tambuyzer", + "Tange", + "Tanghe", + "Taselaar", + "Teeling", + "Teerlinck", + "Teeuwen", + "Teeuwisse", + "Teeuws", + "Teirlinck", + "Teirlynck", + "Telen", + "Telkamp", + "Temmerman", + "Temming", + "Temmink", + "Tempel", + "Tempelaar", + "Tempelaere", + "Ten Brink", + "Ten Haaf", + "Ten Hoor", + "Ten Hove", + "Ten Kate", + "Ten Tusscher", + "Ten Woude", + "Tenis", + "Tennant", + "Tensen", + "Tent", + "Ter Beek", + "Ter Haar", + "Ter Heide", + "Ter Horst", + "Ter Vaart", + "Ter Voert", + "Ter Wierik", + "Terlouw", + "Termont", + "Tersago", + "Tervaert", + "Teugels", + "Tibaut", + "Tibbe", + "Tibben", + "Tibido", + "Tichelaar", + "Ticken", + "Tiebosch", + "Tiegelaar", + "Tiel", + "Tielemans", + "Tieman", + "Tilleman", + "Tilmans", + "Timmermans", + "Tippelaar", + "Tirez", + "Thans", + "Theelen", + "Theunis", + "Theuwissen", + "Theys", + "Thibaut", + "Thiel", + "Thielemans", + "Thienpont", + "Thiers", + "Thieren", + "Thijs", + "Thijsen", + "Thijsmans", + "Thijssen", + "Thoelen", + "Thomas", + "Thomassen", + "Thooft", + "Thoonen", + "Thorsen", + "Thuy", + "Thys", + "Thyssen", + "Tol", + "Tollenaere", + "Tondeleir", + "Tops", + "Torfs", + "Tormans", + "Toye", + "Tremblay", + "Treutel", + "Tromp", + "Turcotte", + "Turner", + "Ullrich", + "Uiterhoeven", + "Vanderhoeven", + "Vandersand", + "Vandervoort", + "Vanderwaal", + "Vanderwiele", + "Vanderzande", + "Veeman", + "Veerman", + "Verbeek", + "Verbeke", + "Verbeeck", + "Verbeecke", + "Verdonck", + "Verdonk", + "Verhasselt", + "Verhoeven", + "Verkammen", + "Vermandel", + "Vermandere", + "Vermanderen", + "Verreweg", + "Verstichel", + "Verstichelt", + "Verstichellen", + "Vinck", + "Vinke", + "Visser", + "Vliegers", + "Vondel", + "Vondels", + "Vonk", + "Voppert", + "Vroom", + "Waals", + "Waas", + "Waels", + "Waes", + "Walker", + "Walsh", + "Walter", + "Waremans", + "Waters", + "Watsica", + "Weber", + "Wehner", + "Weimann", + "Weissnat", + "Welch", + "West", + "White", + "Wiegand", + "Wilderman", + "Wilders", + "Williams", + "Willems", + "Willemsen", + "Windler", + "Wintheiser", + "Wisoky", + "Wisozk", + "Witting", + "Wiza", + "Wolf", + "Wouters", + "Wuckert", + "Wunsch", + "Wyman", + "Zarkan", + "Zemlak", + "Ziemann", + "Zieme", + "Zundert" + ]) + + @doc """ + Returns a random last name after de + + ## Examples + + iex> Faker.Person.Nl.last_name_after_de() + "Saeger" + iex> Faker.Person.Nl.last_name_after_de() + "Haene" + iex> Faker.Person.Nl.last_name_after_de() + "Waele" + iex> Faker.Person.Nl.last_name_after_de() + "Hert" + """ + @spec last_name_after_de() :: String.t() + sampler(:last_name_after_de, [ + "Baat", + "Backer", + "Baerdemaeker", + "Baere", + "Baets", + "Baetzelier", + "Bakker", + "Bauw", + "Bel", + "Beir", + "Blanger", + "Bleke", + "Bock", + "Boeck", + "Boer", + "Bolle", + "Bont", + "Bosscher", + "Bosschere", + "Bot", + "Bouw", + "Brabander", + "Brabandere", + "Breker", + "Bruin", + "Bruine", + "Bruycker", + "Bruyn", + "Bruyne", + "Caluwe", + "Caluwé", + "Cauter", + "Cauwer", + "Ceulaer", + "Ceuster", + "Clerck", + "Clercq", + "Cock", + "Coninck", + "Corte", + "Coster", + "Craene", + "Crem", + "Cuyper", + "Cupere", + "Decker", + "Dekker", + "Donder", + "Donker", + "Fauw", + "Feijter", + "Ferm", + "Feyter", + "Frenne", + "Geest", + "Gelder", + "Gendt", + "Geyter", + "Graaf", + "Graaff", + "Graeve", + "Grauw", + "Groot", + "Groote", + "Haan", + "Haene", + "Haas", + "Heer", + "Hert", + "Hertogh", + "Hondt", + "Houwer", + "Jaeger", + "Jaeghere", + "Jager", + "Jeu", + "Jong", + "Jonge", + "Jongh", + "Jonghe", + "Kam", + "Kanter", + "Kapper", + "Kaste", + "Kat", + "Keijser", + "Keijzer", + "Keizer", + "Kemp", + "Kerpel", + "Ketele", + "Ketelaere", + "Keyser", + "Kievid", + "Kievit", + "Kimpe", + "Kinder", + "Kippenboer", + "Klein", + "Klerk", + "Kloet", + "Kock", + "Kok", + "Koninck", + "Koning", + "Kort", + "Korte", + "Koster", + "Kousemaeker", + "Krem", + "Krijger", + "Kruif", + "Kuiper", + "Kuijper", + "Kuyffer", + "Laat", + "Laet", + "Landmeter", + "Landsheer", + "Landtsheer", + "Lange", + "Langhe", + "Lat", + "Lathouwer", + "Leener", + "Leenheer", + "Leeuw", + "Lepeleire", + "Letter", + "Leyn", + "Lichte", + "Ligt", + "Lille", + "Loof", + "Loor", + "Naeyer", + "Nil", + "Nul", + "Nys", + "Maesschalck", + "Maeyer", + "Malsche", + "Man", + "Mesmaeker", + "Meyer", + "Mol", + "Moor", + "Munck", + "Munk", + "Paepe", + "Pagter", + "Palmeneire", + "Pauw", + "Pijper", + "Pillecyn", + "Poorter", + "Poortere", + "Pooter", + "Praeter", + "Praitere", + "Preter", + "Prez", + "Pril", + "Prins", + "Raeymaeker", + "Ridder", + "Rijcke", + "Roeck", + "Roo", + "Roover", + "Rouck", + "Ryck", + "Sadeleer", + "Saedeleir", + "Saeger", + "Saegher", + "Schaepdrijver", + "Schepper", + "Schilder", + "Schrijver", + "Schryver", + "Schutter", + "Schuyteneer", + "Smet", + "Smedt", + "Smidt", + "Sutter", + "Taeye", + "Tand", + "Tandt", + "Tegelman", + "Temmerman", + "Timmerman", + "Tippelaar", + "Tollenaere", + "Tremerie", + "Troch", + "Troij", + "Troyer", + "Vadder", + "Valck", + "Valk", + "Veer", + "Vegt", + "Velder", + "Vet", + "Vette", + "Vidts", + "Vilder", + "Ville", + "Visscher", + "Visser", + "Vits", + "Vleeschauwer", + "Vlieger", + "Vliegher", + "Vocht", + "Volder", + "Voogd", + "Voogt", + "Vooght", + "Vos", + "Vree", + "Vriendt", + "Vries", + "Vrieze", + "Vroe", + "Vuijst", + "Vuyst", + "Wal", + "Wael", + "Waele", + "Weert", + "Weerdt", + "Wever", + "Wijngaard", + "Wilde", + "Win", + "Wind", + "Windt", + "Winter", + "Wispelaere", + "Wit", + "Witte", + "Wolf", + "Wulf", + "Zanger", + "Zeeuw", + "Zoete", + "Zutter", + "Zwaan", + "Zwart", + ]) + + @doc """ + Returns a random last name after van + + ## Examples + + iex> Faker.Person.Nl.last_name_after_van() + "De Ven" + iex> Faker.Person.Nl.last_name_after_van() + "Coillie" + iex> Faker.Person.Nl.last_name_after_van() + "Sonsbeek" + iex> Faker.Person.Nl.last_name_after_van() + "Tendeloo" + """ + @spec last_name_after_van() :: String.t() + sampler(:last_name_after_van, [ + "Aaken", + "Aalst", + "Aalten", + "Aarle", + "Aart", + "Aartrijk", + "Achter", + "Acker", + "Adel", + "Aelst", + "Aerschot", + "Aert", + "Aken", + "Artevelde", + "Asbroeck", + "Assche", + "Audenaerde", + "Autreve", + "Avermaet", + "Bael", + "Baelen", + "Baeveghem", + "Bauwel", + "Bavel", + "Belleghem", + "Beukering", + "Biervliet", + "Bockstaele", + "Bocxlaer", + "Bogaert", + "Boven", + "Branteghem", + "Brempt", + "Broeckhoven", + "Bronkhorst", + "Buren", + "Buysse", + "Buynder", + "Buyten", + "Calster", + "Camp", + "Campenhout", + "Cappellen", + "Cauwenberge", + "Cauwenbergh", + "Cauwenberghe", + "Cleef", + "Cleemput", + "Cleemputte", + "Clemen", + "Coillie", + "Craenem", + "Craenendonck", + "Craenenbroeck", + "Cutsem", + "Daele", + "Dalen", + "Dam", + "Damme", + "De Casteele", + "De Caveye", + "De Cauter", + "De Kasteele", + "De Keere", + "De Kerckhove", + "De Loo", + "De Putte", + "De Sompel", + "De Velde", + "De Ven", + "De Vijver", + "De Voorde", + "De Vreken", + "De Walle", + "De Weghe", + "De Wiele", + "De Woestijne", + "Den Abbeele", + "Den Bergh", + "Den Berghe", + "Den Borre", + "Den Bosch", + "Den Bossche", + "Den Broeck", + "Den Driessche", + "Den Eijnden", + "Den Haute", + "Den Troost", + "Der Auwera", + "Der Biest", + "Der Cruysse", + "Der Cruyssen", + "Der Geest", + "Der Grinten", + "Der Gucht", + "Der Haegen", + "Der Heyden", + "Der Jeught", + "Der Laan", + "Der Straeten", + "Der Veen", + "Der Veken", + "Der Wal", + "Dessel", + "Diepen", + "Dierendonck", + "Dijck", + "Dijk", + "Dille", + "Dillewijn", + "Duffel", + "Durme", + "Duyse", + "Dyck", + "Eck", + "Eeckhout", + "Eenaeme", + "Eekert", + "Eester", + "Eetvelde", + "Eijgen", + "Eijk", + "Elsen", + "Ekeren", + "Esbroeck", + "Essche", + "Eyck", + "Eyken", + "Eynde", + "Faassen", + "Foreest", + "Frankenhuyzen", + "Geel", + "Gelder", + "Genechten", + "Gestel", + "Geystelen", + "Gijseghem", + "Gijzel", + "Gils", + "Ginkel", + "Grieken", + "Gyseghem", + "Gysel", + "Haasteren", + "Haecke", + "Haelen", + "Ham", + "Hamme", + "Havermaet", + "Haute", + "Herreweghe", + "Hoecke", + "Hoof", + "Hooste", + "Houcke", + "Hulle", + "Ierland", + "Iersel", + "Ijken", + "Ijzerdoorn", + "Immerseel", + "Impe", + "Imschoot", + "In", + "Ingelgom", + "Ingen", + "Isaker", + "Kammen", + "Kalken", + "Kalmthout", + "Katwijk", + "Keer", + "Kempen", + "Kerckhove", + "Kerkhove", + "Kerrebroeck", + "Kessel", + "Keulen", + "Klaveren", + "Kuik", + "Kuyk", + "Laere", + "Leemput", + "Leemputten", + "Leeuwen", + "Leiden", + "Lelyveld", + "Leuffel", + "Leuven", + "Liedekerke", + "Lier", + "Lieshout", + "Lindt", + "Lommel", + "Loon", + "Looy", + "Looveren", + "Lokeren", + "Lokhorst", + "Luik", + "Luijk", + "Luxemburg", + "Maaren", + "Maele", + "Malderen", + "Marcke", + "Marum", + "Mechelen", + "Meel", + "Meerbeek", + "Meirhaeghe", + "Mele", + "Merhaeghe", + "Mieghem", + "Moer", + "Mol", + "Mosselaar", + "Mourik", + "Mullem", + "Namen", + "Nassau", + "Neer", + "Nerum", + "Nespen", + "Nevel", + "Neygem", + "Niekerk", + "Nieuwenhuyse", + "Nijlen", + "Noort", + "Noppen", + "Noten", + "Nuffelen", + "Ochten", + "Ockeghem", + "Oeckel", + "Oekelen", + "Oers", + "Oeteren", + "Offel", + "Ongevalle", + "Onsem", + "Opstal", + "Otten", + "Otterloo", + "Oudenaarde", + "Ouytsel", + "Overbeke", + "Parijs", + "Passel", + "Peer", + "Pelt", + "Peteghem", + "Piekeren", + "Pijkeren", + "Praet", + "Putten", + "Puyenbroeck", + "Puyvelde", + "Quaethem", + "Quickenborne", + "Raalte", + "Raemdonck", + "Ransbeeck", + "Ranst", + "Rauw", + "Ravensberg", + "Reet", + "Rensbergen", + "Reusel", + "Roey", + "Rompaey", + "Rooy", + "Rossem", + "Roy", + "Ruiten", + "Ruysbroeck", + "Ryckeghem", + "Ryswyck", + "Saet", + "Samang", + "Sambeek", + "Sande", + "Santen", + "Santvoort", + "Sas", + "Schaeren", + "Schaffelaar", + "Schaftingen", + "Schepdael", + "Schie", + "Schil", + "Schoonhoven", + "Schoor", + "Schooten", + "Seghbroeck", + "Setten", + "Severen", + "Sichem", + "Sinderen", + "Snick", + "Someren", + "Sonsbeek", + "Steenbergen", + "Steendam", + "Steenkiste", + "Summeren", + "Sundert", + "Tarelink", + "Tartwijk", + "Tassel", + "Teeffelen", + "Tellingen", + "Tendeloo", + "Teunenbroek", + "Thielen", + "Thienen", + "Tilburg", + "Tintelen", + "Tol", + "Tongelen", + "Tongeren", + "Tricht", + "Trier", + "Troyen", + "Uffelen", + "Uijen", + "Uijthoven", + "Unnik", + "Urk", + "Ussel", + "Uytsel", + "Uytvanck", + "Vaardegem", + "Vaeck", + "Vaerenbergh", + "Valburg", + "Valen", + "Valkenburg", + "Vastenhoven", + "Veen", + "Veirdeghem", + "Velden", + "Velthoven", + "Velzen", + "Venrooij", + "Vianen", + "Viersen", + "Vilsteren", + "Vlaanderen", + "Vlaenderen", + "Vlasselaer", + "Vliet", + "Vlijmen", + "Vogt", + "Vollenhoven", + "Vooren", + "Voorden", + "Voorst", + "Vonderen", + "Vossen", + "Vreckem", + "Vredenburgh", + "Vree", + "Vreeswijk", + "Vroenhoven", + "Vucht", + "Vugt", + "Vulpen", + "Vuuren", + "Vynckt", + "Waeleghem", + "Waerbeke", + "Waes", + "Wambeke", + "Wassenhove", + "Watermeulen", + "Waterschoot", + "Weel", + "Weelden", + "Weerd", + "Weerden", + "Weert", + "Wees", + "Welden", + "Wesemael", + "Wesembeeck", + "Westfalen", + "Westing", + "Weyde", + "Weyenbergh", + "Wezel", + "Wichelen", + "Wiele", + "Wielink", + "Wieringen", + "Wijck", + "Wijk", + "Wijmeersch", + "Wijnendaele", + "Wijngaarden", + "Winckel", + "Wingerden", + "Winkel", + "Wissen", + "Woensel", + "Woerden", + "Wolferen", + "Wolfswinkel", + "Wonderen", + "Woudenberg", + "Wouwe", + "Wulfften", + "Wuytswinkel", + "Yperen", + "Zalingen", + "Zand", + "Zandvoort", + "Zanen", + "Zanten", + "Zeebroeck", + "Zele", + "Zelst", + "Zevenbergen", + "Zijl", + "Zundert", + "Zuuren", + "Zwam" + ]) + + + @doc """ + Returns a random prefix + + ## Examples + + iex> Faker.Person.Nl.prefix() + "Mr." + iex> Faker.Person.Nl.prefix() + "Dhr." + iex> Faker.Person.Nl.prefix() + "Mr." + iex> Faker.Person.Nl.prefix() + "Dhr." + """ + @spec prefix() :: String.t() + sampler(:prefix, [ + "Mr.", + "Mevr.", + "Dhr." + ]) + + @doc """ + Returns a random suffix + + ## Examples + + iex> Faker.Person.Nl.suffix() + "Jr." + iex> Faker.Person.Nl.suffix() + "Sr." + """ + @spec suffix() :: String.t() + sampler(:suffix, [ + "Jr.", + "Sr." + ]) + +end diff --git a/test/faker/person_test.exs b/test/faker/person_test.exs index 3c9c4d678..41765cadd 100644 --- a/test/faker/person_test.exs +++ b/test/faker/person_test.exs @@ -8,4 +8,5 @@ defmodule Faker.PersonTest do doctest Faker.Person.Hy doctest Faker.Person.It doctest Faker.Person.PtBr + doctest Faker.Person.Nl end From f67cb94e8e6f91cc1edac3eca49c793a5a25a70f Mon Sep 17 00:00:00 2001 From: Christof Verhoeven Date: Tue, 5 Mar 2024 19:50:05 +0100 Subject: [PATCH 03/10] usage.md --- USAGE.md | 1 + 1 file changed, 1 insertion(+) diff --git a/USAGE.md b/USAGE.md index a323a03c6..ae8b1cb41 100644 --- a/USAGE.md +++ b/USAGE.md @@ -94,6 +94,7 @@ - [Faker.Person.Hy](lib/faker/person/hy.ex) - [Faker.Person.It](lib/faker/person/it.ex) - [Faker.Person.PtBr](lib/faker/person/pt_br.ex) +- [Faker.Person.Nl](lib/faker/person/nl.ex) - [Faker.Phone.EnUs](lib/faker/phone/en_us.ex) - [Faker.Phone.EnGb](lib/faker/phone/en_gb.ex) - [Faker.Phone.Hy](lib/faker/phone/hy.ex) From 3fa23e957b450039ea055f6cd62a49be875ac940 Mon Sep 17 00:00:00 2001 From: Christof Verhoeven <6996874+ChristofVerhoeven@users.noreply.github.com> Date: Tue, 2 Apr 2024 11:56:27 +0200 Subject: [PATCH 04/10] ducth first names update --- lib/faker/person/nl.ex | 1656 +++++++++------------------------------- 1 file changed, 382 insertions(+), 1274 deletions(-) diff --git a/lib/faker/person/nl.ex b/lib/faker/person/nl.ex index fc193229d..21e0b92b3 100644 --- a/lib/faker/person/nl.ex +++ b/lib/faker/person/nl.ex @@ -11,13 +11,13 @@ defmodule Faker.Person.Nl do ## Examples iex> Faker.Person.Nl.name() - "Dhr. Noah Theunis Jr." + "Dhr. Alberta Theunis Jr." iex> Faker.Person.Nl.name() - "Richard Van Kessel" + "Marina Van Kessel" iex> Faker.Person.Nl.name() - "Sabine Terlouw" + "Derek Terlouw" iex> Faker.Person.Nl.name() - "Rossie Rovers" + "Karin Rovers" """ @spec name() :: String.t() def name, do: name(Faker.random_between(0, 9)) @@ -35,35 +35,33 @@ defmodule Faker.Person.Nl do ## Examples iex> Faker.Person.Nl.first_name() - "Benjamin" + "Filemon" iex> Faker.Person.Nl.first_name() - "Anne" + "Casandra" iex> Faker.Person.Nl.first_name() - "Noah" + "Alberta" iex> Faker.Person.Nl.first_name() - "Elinor" + "Maxie" """ @spec first_name() :: String.t() sampler(:first_name, [ "Ad", "Aad", "Aafje", - "Aaron", - "Abbey", + "Aart", + "Abbe", "Abbie", - "Abbigail", "Abby", - "Abdiel", "Abdul", "Abdullah", - "Abe", "Abel", "Abelardo", "Abigail", - "Abner", "Abraham", + "Achiel", + "Achilles", + "Achmed", "Ada", - "Adah", "Adaline", "Adam", "Adan", @@ -75,44 +73,28 @@ defmodule Faker.Person.Nl do "Adele", "Adelia", "Adeline", - "Adella", "Adelle", - "Aditya", - "Adolfo", "Adolph", "Adolphus", - "Adonis", - "Adrian", "Adriaan", + "Adriaen", "Adriana", "Adrianus", - "Adriel", + "Adriël", "Adrien", "Adrienne", - "Adryen", "Agatha", "Agnes", "Agnus", - "Agustin", "Agustina", - "Ahmad", "Ahmed", "Aida", - "Aidan", - "Aiden", - "Aileen", "Aimé", "Aimee", - "Aisha", - "Akeem", "Al", - "Alaina", "Alan", "Alana", "Alanis", - "Alanna", - "Alayna", - "Alba", "Albert", "Alberta", "Alberto", @@ -122,17 +104,12 @@ defmodule Faker.Person.Nl do "Alda", "Aldert", "Alec", - "Aleid", "Aleida", - "Alejandra", - "Alejandrin", "Alek", "Alena", "Alene", "Alessandra", "Alessandro", - "Alessia", - "Aletha", "Alex", "Alexa", "Alexander", @@ -141,29 +118,20 @@ defmodule Faker.Person.Nl do "Alexandrea", "Alexandria", "Alexandrine", - "Alexandro", - "Alexane", - "Alexanne", - "Alexie", + "Alexi", "Alexis", - "Alexys", "Alexzander", "Alfons", + "Alfonse", "Alfonso", - "Alfonzo", "Alfred", "Alfreda", "Alfredo", - "Ali", - "Alia", "Alice", "Alida", "Alicia", + "Alina", "Alisa", - "Alisha", - "Alivia", - "Aliya", - "Aliyah", "Aliza", "Alize", "Allan", @@ -181,15 +149,11 @@ defmodule Faker.Person.Nl do "Alvah", "Alvena", "Alvera", - "Alverta", "Alvina", "Alvis", "Alwin", - "Alyce", "Alycia", - "Alysa", - "Alysha", - "Alyson", + "Alyssa", "Amalia", "Amanda", "Amani", @@ -201,28 +165,20 @@ defmodule Faker.Person.Nl do "Ambrosius", "Amelia", "Amelie", - "Amely", - "Americo", + "Americk", "Amie", "Amina", "Amir", "Amira", - "Amiya", "Amos", - "Amparo", "Amy", - "Amya", "An", "Anabel", "Anabelle", - "Anahi", - "Anais", - "Anastacio", "Anastasia", "André", "Andrea", "Andreas", - "Andres", "Andries", "Andy", "Angèle", @@ -234,14 +190,11 @@ defmodule Faker.Person.Nl do "Angelo", "Angie", "Angus", - "Anibal", "Anika", - "Anissa", "Anita", "Anja", "Anjes", "Anke", - "Ann", "Anna", "Annabel", "Annabella", @@ -258,6 +211,7 @@ defmodule Faker.Person.Nl do "Annika", "Anouk", "Ansel", + "Anthonie", "Anthony", "Antje", "Antoine", @@ -270,13 +224,9 @@ defmodule Faker.Person.Nl do "Antwan", "Anya", "April", - "Ara", - "Araceli", - "Aracely", - "Arch", + "Archie", "Archibald", "Ardella", - "Arden", "Arend", "Arie", "Ariane", @@ -285,39 +235,23 @@ defmodule Faker.Person.Nl do "Arielle", "Aris", "Arjan", - "Arlene", + "Arjen", "Arlie", "Arlo", "Armand", "Armando", - "Armani", - "Arnaldo", "Arne", "Arno", "Arnold", "Arnoud", "Arnout", "Aron", - "Art", "Arthur", - "Arturo", - "Arvel", - "Arvid", - "Arvilla", - "Aryanna", - "Asa", - "Asha", - "Ashlee", - "Ashleigh", - "Ashley", - "Ashlynn", - "Ashton", + "Artur", "Aster", "Astrid", - "Athena", "Aubree", "Aubrey", - "Audreanne", "Audrey", "August", "Augusta", @@ -326,31 +260,24 @@ defmodule Faker.Person.Nl do "Aurelia", "Aurelie", "Aurelio", - "Aurore", - "Ava", - "Avery", - "Avis", "Axel", "Axelle", - "Ayda", - "Ayden", - "Aylin", "Babette", + "Balthazar", "Barbara", "Barend", - "Baron", "Barry", "Bart", "Bartel", "Bartholomeus", "Bas", + "Basil", "Bastiaan", "Bea", "Beatrice", "Beatrijs", "Beatrix", "Beau", - "Beaulah", "Bella", "Belle", "Ben", @@ -366,40 +293,33 @@ defmodule Faker.Person.Nl do "Bernadette", "Bernadine", "Bernard", - "Bernardo", + "Bernardus", "Bernhard", "Bernice", "Bernie", - "Bernita", "Berry", "Bert", "Berta", "Bertha", "Bertram", "Bertrand", - "Beryl", + "Bertus", "Bessie", "Beth", - "Bethany", - "Bethel", "Betsy", "Betje", "Bettie", "Betty", - "Bettye", - "Beulah", - "Beverly", + "Bianca", "Bianka", "Bill", "Billie", "Billy", "Birgen", "Birger", - "Bjorn", + "Björn", "Blaise", - "Blake", "Blanche", - "Blaze", "Bo", "Bob", "Bobbie", @@ -412,104 +332,57 @@ defmodule Faker.Person.Nl do "Boudewijn", "Brad", "Bradley", - "Brady", - "Braeden", - "Brain", "Bram", "Bran", "Brandon", - "Brandt", - "Brandy", - "Brandyn", - "Brannon", - "Branson", "Brant", "Braulinde", - "Braxton", "Brayen", - "Breana", "Breanna", "Breanne", "Brecht", "Brenda", - "Brendan", - "Brenden", - "Brendon", "Brenna", - "Brennan", - "Brennon", "Brent", - "Brett", - "Bria", "Brian", "Briana", "Brianne", - "Brice", - "Bridgette", - "Brielle", + "Briëlle", "Brigitta", "Brigitte", - "Brionna", "Brit", "Britney", "Brittany", "Brock", "Broderick", - "Brody", - "Brook", - "Brooke", - "Brooklyn", "Broos", - "Brown", - "Bruce", + "Bruno", + "Bryan", "Bryana", - "Bryce", - "Brycen", - "Bryon", - "Buck", "Bud", - "Buddy", "Buford", "Bulah", "Burdette", - "Burley", - "Burnice", - "Buster", - "Cade", + "Cad", "Caden", "Caesar", "Caitlyn", - "Cale", "Caleb", "Caleigh", "Cali", - "Calista", "Callie", - "Camden", + "Callista", "Cameron", "Camila", "Camilla", "Camille", - "Camren", - "Camron", - "Camryn", - "Camylle", - "Candace", - "Candelario", - "Candice", - "Candida", - "Candido", "Cara", - "Carey", + "Carine", "Carissa", - "Carlee", - "Carleton", - "Carley", - "Carli", - "Carlie", + "Carl", + "Carla", "Carlo", "Carlos", - "Carlotta", "Carmel", "Carmela", "Carmella", @@ -521,30 +394,22 @@ defmodule Faker.Person.Nl do "Carolien", "Carolina", "Caroline", - "Carolyn", - "Carolyne", + "Carolus", "Carrie", - "Carroll", - "Carson", - "Carter", + "Carsten", "Cas", "Casandra", "Casey", - "Casimer", "Casimir", "Casper", "Cassandra", - "Cassandre", - "Cassidy", "Cassie", - "Catalina", "Caterina", - "Catharine", + "Cathelijn", "Catherine", - "Cathrine", - "Cathryn", + "Cathrien", "Cathy", - "Cayla", + "Cato", "Ceasar", "Cecelia", "Cecil", @@ -557,8 +422,6 @@ defmodule Faker.Person.Nl do "Celine", "Céline", "César", - "Chad", - "Chaim", "Chance", "Chandler", "Chanel", @@ -567,156 +430,106 @@ defmodule Faker.Person.Nl do "Chantalle", "Charlene", "Charles", - "Charley", "Charlie", "Charlotte", "Chase", - "Chasity", "Chancey", "Chaya", "Chaz", "Chelsea", - "Chelsey", - "Chelsie", - "Chesley", "Chester", - "Chet", - "Cheyanne", - "Cheyenne", "Chloë", "Chris", "Christel", "Christelle", + "Christiaan", "Christian", "Christiana", "Christina", "Christine", "Christof", + "Christoffel", "Christoph", "Christophe", "Christopher", "Christy", - "Chyna", "Ciara", - "Cicero", "Cid", - "Cielo", - "Cierra", "Cindy", "Clair", "Claire", "Clara", "Clarabelle", - "Clare", "Clarissa", - "Clark", "Claude", "Claudia", "Claudie", "Claudine", "Claudius", - "Clay", + "Claus", "Clemens", "Clement", "Clementina", "Clementine", - "Clemmie", "Cleo", - "Cleora", "Cleta", "Cletus", - "Cleve", - "Cleveland", "Cliff", - "Clifford", - "Clint", - "Clinton", "Clotilde", "Clovis", - "Cloyd", - "Clyde", "Cobe", "Coby", "Cody", - "Colby", - "Cole", + "Coen", + "Coenraad", "Colin", - "Colleen", "Collin", - "Colt", - "Colten", - "Columbus", - "Conchita", "Conner", "Connie", "Connor", - "Conrad", "Constance", "Constantin", "Consuela", - "Cooper", + "Coos", "Cor", "Cora", "Coralie", "Corben", "Cordelia", - "Cordell", - "Cordia", - "Cordie", "Corine", + "Corneel", + "Cornelia", + "Cornelis", "Cornelius", - "Cornell", - "Corrine", - "Cortez", - "Cortney", "Corwin", "Cory", - "Coty", - "Courtney", - "Coy", - "Craig", - "Crawford", - "Creola", - "Cristal", - "Cristian", + "Cristel", + "Cristiaan", "Cristina", "Cristobal", "Cristopher", - "Cruz", - "Crystal", - "Crystel", - "Cullen", "Curt", "Curtis", - "Cydney", "Cynthia", "Cyril", "Cyrus", "Daan", "Dagmar", "Dahlia", - "Daija", - "Daisha", "Daisy", "Dakota", - "Dale", - "Dallas", - "Dallin", - "Dalton", "Damaris", - "Dameon", - "Damian", + "Damiaan", "Damien", - "Damion", "Damon", "Dan", "Dana", - "Dandre", + "Dani", "Dangelo", "Daniël", - "Daniela", - "Daniella", - "Danielle", + "Daniëla", + "Daniëlla", + "Daniëlle", "Danika", "Dannie", "Danny", @@ -724,128 +537,70 @@ defmodule Faker.Person.Nl do "Danyka", "Daphne", "Daphnee", - "Daphney", "Darcy", "Daren", - "Darian", + "Dariaan", "Dariana", "Darien", "Dario", - "Darion", "Darius", - "Darlene", - "Daron", - "Darrel", - "Darrell", - "Darren", - "Darrick", - "Darrin", - "Darrion", - "Darron", - "Darryl", "Darwin", "Daryl", - "Dasia", "Dave", "David", "Davin", - "Davion", - "Davon", "Davy", - "Dawson", "Dax", - "Dayana", - "Dayna", - "Dayne", "Dean", - "Deangelo", - "Deanna", "Deborah", "Dedric", "Dedrick", "Dee", - "Deion", - "Deja", - "Dejah", - "Dejon", - "Dejuan", - "Delaney", "Delbert", "Delfina", "Deli", "Delia", - "Delilah", - "Della", - "Delmer", "Delores", - "Delpha", - "Delphia", + "Delphina", "Delphine", - "Delta", - "Demarco", - "Demarcus", - "Demario", - "Demetris", "Demetrius", - "Demond", "Dena", "Denis", + "Denise", "Dennis", - "Deon", - "Deondre", - "Deontae", - "Deonte", - "Dereck", "Derek", - "Derick", "Dero", "Derrick", - "Deshaun", - "Deshawn", - "Desiree", + "Desiderius", + "Désirée", "Desmond", - "Dessie", - "Destany", - "Destin", - "Destinee", - "Destiney", - "Destini", - "Destiny", - "Devan", - "Devante", - "Deven", "Devin", - "Devon", - "Devonte", "Devy", - "Dewayne", - "Dewey", "Dexter", - "Diamond", "Diana", "Dianna", - "Dick", - "Diego", - "Dillan", - "Dillon", + "Dickie", + "Didiër", + "Diederik", + "Diëgo", + "Dieter", + "Dikkie", + "Dilan", "Dimitri", "Dina", "Dino", - "Dion", + "Dirk", + "Dirkje", "Dixie", "Dolly", "Dolores", - "Domenic", - "Domenica", - "Domenick", - "Dominiek", "Domenico", - "Domingo", + "Dominicus", + "Dominiek", "Dominique", "Don", "Donald", "Donato", - "Donavon", "Donna", "Donnie", "Donny", @@ -856,54 +611,31 @@ defmodule Faker.Person.Nl do "Doris", "Dorothea", "Dorothy", - "Dorris", - "Dortha", - "Dorthy", - "Doug", "Douglas", "Dovie", - "Drako", + "Draco", "Dré", - "Drew", + "Dreesje", "Dries", - "Dudley", - "Dulce", "Duncan", - "Durward", "Dustin", - "Dusty", - "Dwight", "Dylan", - "Earl", - "Earlene", - "Earline", - "Earnest", - "Earnestine", - "Easter", - "Easton", - "Ebba", - "Ebony", "Ed", - "Eda", - "Edd", + "Edan", "Eddie", + "Eddy", "Eden", "Edgar", - "Edgardo", - "Edison", "Edith", "Edmond", "Edmund", "Edna", - "Eduardo", "Edward", "Edwardo", "Edwin", "Edwina", - "Edyth", - "Effie", - "Efrain", - "Efren", + "Eefje", + "Egidius", "Eileen", "Einar", "Eino", @@ -914,7 +646,6 @@ defmodule Faker.Person.Nl do "Eldon", "Eldora", "Eldred", - "Eldridge", "Eleanora", "Eleanore", "Eleazar", @@ -925,7 +656,7 @@ defmodule Faker.Person.Nl do "Eleonore", "Elfrieda", "Eli", - "Elian", + "Elia", "Eliane", "Elias", "Elijah", @@ -935,38 +666,27 @@ defmodule Faker.Person.Nl do "Elisa", "Elisabeth", "Elise", - "Eliseo", - "Elisha", - "Elissa", "Eliza", "Elizabeth", + "Elke", "Ella", "Ellen", "Ellie", "Elliot", - "Ellis", + "Elly", "Elma", "Elmer", "Elmira", "Elmo", "Elmut", - "Elna", - "Elnora", "Elody", - "Eloisa", "Eloise", "Elouise", - "Eloy", - "Elroy", "Els", "Elsa", "Elsie", "Elsje", "Elton", - "Elva", - "Elvera", - "Elvie", - "Elvis", "Elwin", "Elwyn", "Elyse", @@ -975,47 +695,35 @@ defmodule Faker.Person.Nl do "Emanuel", "Emelia", "Emelie", - "Emely", - "Emerald", - "Emerson", - "Emery", "Emie", "Emiel", "Emile", "Emilia", - "Emiliano", "Emilie", "Emilio", - "Emily", "Emma", "Emmalia", "Emmanuel", "Emmanuelle", "Emmet", - "Emmett", - "Emmie", "Emmerik", - "Emory", + "Emmy", "Emy", "Ena", - "Enid", - "Enoch", + "Enneke", "Enola", "Enos", "Enrico", "Enrique", - "Ephraim", - "Era", + "Eran", "Eriberto", "Eric", "Erica", - "Erich", "Erick", "Ericka", "Erik", "Erika", "Erin", - "Erling", "Erna", "Ernest", "Ernestina", @@ -1025,22 +733,20 @@ defmodule Faker.Person.Nl do "Ervin", "Erwin", "Eryn", + "Esmée", "Esmeralda", + "Espen", "Esperanza", - "Esta", "Esteban", "Estefania", "Estel", - "Estell", "Estella", "Estelle", - "Estevan", "Esther", "Estrella", "Etha", "Ethan", "Ethel", - "Ethelyn", "Ethyl", "Ettie", "Eudora", @@ -1053,15 +759,13 @@ defmodule Faker.Person.Nl do "Eunice", "Eusebio", "Eva", - "Evalyn", + "Evaline", "Evan", - "Evangeline", + "Evangelina", "Evans", "Eve", "Eveline", "Evelyn", - "Everardo", - "Everett", "Evert", "Evie", "Evy", @@ -1073,27 +777,28 @@ defmodule Faker.Person.Nl do "Fabiola", "Fabrice", "Fabricius", - "Fae", - "Fannie", + "Falco", + "Famke", "Fanny", "Fatima", "Fausto", "Favian", - "Fay", - "Faye", "Federico", "Felicia", - "Felicita", - "Felicity", "Felipa", "Felipe", "Felix", + "Femke", "Ferdinand", "Fernando", - "Ferne", + "Fie", + "Fien", + "Fier", "Fil", "Filemon", "Filibert", + "Filip", + "Filippus", "Finn", "Fiona", "Firmin", @@ -1106,198 +811,143 @@ defmodule Faker.Person.Nl do "Flor", "Florke", "Floor", - "Florence", + "Floortje", + "Floris", "Florentine", "Florian", "Floriaan", "Florine", - "Flossie", - "Floyd", - "Forest", - "Forrest", - "Foster", - "Frances", "Francesca", - "Francesco", "Francis", "Francisca", "Francisco", + "Franciscus", "Franco", "Frank", "Frankie", "Frans", "Franz", "Fred", - "Freda", "Freddie", "Freddy", - "Frederic", "Frederick", "Frederik", "Frederique", - "Fredrick", - "Fredy", "Freeda", "Freek", + "Freya", "Frida", + "Fridolinus", "Frieda", "Friedrich", "Frits", "Fritz", - "Gabe", "Gabriël", - "Gabriella", - "Gabrielle", + "Gabriëlla", + "Gabriëlle", "Gaby", "Gaetano", - "Gail", - "Gardner", - "Garett", - "Garfield", - "Garland", - "Garnet", - "Garnett", - "Garret", - "Garrett", - "Garrick", - "Garrison", "Garry", - "Garth", "Gaston", - "Gavin", - "Gay", - "Gayle", - "Gaylord", + "Geert", + "Geertruida", "Gene", - "General", - "Genesis", - "Genevieve", - "Gennaro", - "Genoveva", - "Geo", "Geoffrey", "George", "Georgette", - "Georgiana", "Georgianna", "Geovanni", - "Geovanny", - "Geovany", "Gerald", "Geraldine", "Gerard", - "Gerardo", + "Gerarda", + "Gerben", "Gerda", "Gerhard", + "Gerold", "Germaine", - "German", - "Gerry", + "Gerrit", + "Gerrie", "Gert", "Gertrude", "Gia", "Gianni", "Gideon", + "Gijs", + "Gijsbert", "Gilbert", "Gilberto", "Gilda", "Giles", "Gill", - "Gillian", + "Gillis", "Gina", "Gino", - "Giovani", - "Giovanna", "Giovanni", - "Giovanny", "Gisselle", "Giuseppe", - "Gladyce", - "Gladys", "Glen", "Glenda", "Glenn", - "Glennie", "Gloria", + "Godelieve", "Godfried", "Goedele", + "Goedroen", "Goes", - "Gonzalo", - "Gordon", + "Goos", + "Govert", "Grace", "Gracie", - "Graciela", - "Grady", - "Graham", - "Grant", - "Granville", - "Grayce", - "Grayson", "Greet", + "Greetje", "Greg", - "Gregg", "Gregoria", - "Gregorio", + "Gregorius", "Gregory", "Greta", "Gretchen", - "Greyson", - "Griffin", - "Guadalupe", + "Griet", + "Grietje", "Gudrun", "Guido", - "Guillermo", - "Guiseppe", "Gunnar", + "Gunter", "Gunther", "Gus", - "Gussie", "Gust", + "Gusta", "Gustaaf", - "Gustave", + "Gustav", "Guus", + "Guusje", "Guust", "Guy", "Gwen", - "Gwendolyn", - "Hadley", - "Hailee", + "Gwendolien", "Hailey", - "Hailie", "Hal", - "Haleigh", - "Haley", - "Halie", "Halle", "Hallie", + "Han", "Hanna", - "Hannah", + "Hanne", + "Hanneke", + "Hannes", "Hans", - "Hardy", - "Harley", - "Harmon", - "Harmony", + "Hansje", + "Harmen", "Harold", - "Harrison", + "Harrie", "Harry", - "Harvey", - "Haskel", "Hassan", - "Hassie", - "Hattie", - "Haven", - "Hayden", - "Haylee", - "Hayley", - "Haylie", - "Hazel", - "Hazle", - "Heath", - "Heather", - "Heber", "Hector", "Hedwig", "Hedwin", "Heidi", + "Hein", + "Heinke", + "Heleen", "Helen", "Helena", "Helene", @@ -1306,70 +956,51 @@ defmodule Faker.Person.Nl do "Helmut", "Heloise", "Hendrik", + "Hendrika", + "Hendrikje", "Henk", "Henri", - "Henriette", + "Henriëtte", "Henry", "Herbert", "Herman", - "Hermann", + "Hermelien", "Hermina", - "Herminio", - "Hershel", - "Herta", - "Hertha", "Hester", - "Hettie", - "Hilario", "Hilbert", "Hilda", + "Hilde", "Hildegard", - "Hillard", - "Hillary", "Hilma", - "Hilton", - "Hipolito", - "Hiram", "Hobart", - "Holden", "Hollie", "Hollis", - "Holly", - "Hope", "Horace", "Horacio", "Hortense", - "Hosea", - "Houston", "Howard", - "Howell", - "Hoyt", "Hubert", - "Hudson", - "Hugh", + "Hugo", "Hulda", "Humberto", - "Hunter", - "Hyman", "Ian", "Ibrahim", - "Icie", "Ida", - "Idell", - "Idella", - "Ignacio", "Ignatius", "Ike", + "Ilse", "Ilya", "Ilene", - "Iliana", "Ima", "Imani", "Imelda", "Immanuel", - "Imogene", "Ine", + "Ineke", "Ines", + "Inge", + "Ingrid", + "Irene", "Irma", "Irwin", "Isaac", @@ -1377,120 +1008,60 @@ defmodule Faker.Person.Nl do "Isabel", "Isabella", "Isabelle", - "Isac", - "Isadore", - "Isai", "Isaiah", - "Isaias", "Isidoor", - "Ismael", + "Ismaël", "Isobel", - "Isom", - "Israel", - "Issac", - "Itzel", - "Iva", "Ivan", "Ivo", - "Ivy", - "Izabella", "Izaiah", "Jaak", - "Jabari", - "Jace", + "Jaap", + "Jaco", "Jacob", + "Jacoba", "Jacobus", + "Jacomina", "Jack", "Jackeline", "Jackie", - "Jacklyn", - "Jackson", "Jacky", - "Jaclyn", - "Jacquelyn", + "Jacqueline", "Jacques", "Jacynthe", "Jade", - "Jaden", - "Jadyn", - "Jaeden", - "Jaida", - "Jaiden", - "Jailyn", "Jaime", "Jaimie", "Jake", "Jakie", "Jakob", - "Jaleel", - "Jalen", - "Jalon", - "Jalyn", - "Jamaal", "Jamal", "Jamar", "Jamarcus", - "Jamel", "James", - "Jamey", "Jamie", "Jamil", - "Jamir", - "Jamison", - "Jammie", "Jan", "Jan Jaap", "Jana", - "Jane", "Janelle", - "Janessa", "Janet", "Janice", "Janick", - "Janie", "Janis", + "Jannes", "Jannick", "Jannie", - "Jany", + "Janus", "Jaques", "Jaquelin", "Jaqueline", - "Jared", - "Jaren", - "Jarod", - "Jaron", - "Jarred", - "Jarrell", - "Jarret", - "Jarrett", - "Jarrod", - "Jarvis", - "Jasen", "Jasmijn", "Jasmine", "Jason", "Jasper", "Jaunita", "Javier", - "Javon", - "Javonte", - "Jay", - "Jayce", - "Jaycee", - "Jayda", - "Jayden", - "Jaydon", - "Jaylan", - "Jaylen", - "Jaylin", - "Jaylon", - "Jayme", - "Jayne", - "Jayson", - "Jazlyn", - "Jazmin", - "Jazmyn", - "Jazmyne", "Jean", "Jean-Claude", "Jean-Luc", @@ -1500,113 +1071,94 @@ defmodule Faker.Person.Nl do "Jeanette", "Jeanie", "Jeanne", - "Jed", "Jef", - "Jeff", "Jeffrey", "Jeffry", - "Jena", + "Jelle", + "Jenna", "Jenifer", "Jennie", "Jennifer", - "Jennyfer", + "Jenny", "Jensen", "Jerad", "Jerald", - "Jeramie", - "Jeramy", - "Jerel", + "Jeremia", "Jeremie", "Jeremy", - "Jermain", "Jermaine", - "Jermey", "Jeroen", "Jerome", - "Jeromy", "Jerre", - "Jerrod", - "Jerrold", "Jerry", - "Jess", + "Jesaja", + "Jesper", "Jesse", "Jessica", "Jessie", "Jessika", - "Jessy", - "Jessyca", "Jesus", - "Jett", - "Jettie", - "Jevon", - "Jewel", - "Jewell", - "Jillian", + "Jette", + "Jil", + "Jim", "Jimmie", "Jimmy", "Jo", - "Joah", - "Joan", + "Joachim", "Joanna", "Joanne", - "Joannie", - "Joanny", - "Joany", "Joaquin", - "Jocelyn", + "Jobbe", + "Jocelien", + "Jochem", + "Jochen", "Jodie", - "Jody", - "Joe", - "Joel", - "Joelle", + "Joep", + "Joël", + "Joëlle", + "Joeri", "Joey", "Johan", "Johanna", "Johannes", - "Johathan", "John", "Johnnie", "Johnny", - "Johnson", - "Jolie", + "Joke", + "Jolanda", + "Jolien", + "Jolijn", "Jon", "Jonas", "Jonatan", "Jonathan", + "Joop", "Joos", "Joost", + "Joran", "Jordan", - "Jorden", "Jordi", "Jordy", "Joren", "Jorge", + "Jorien", + "Joris", "Jos", + "Josanne", "José", - "Josefien", - "Josefina", "Joseph", + "Josephina", "Josephine", "Joshua", - "Joshuah", - "Josiah", - "Josiane", - "Josianne", - "Josie", - "Jovan", - "Jovani", - "Jovanny", + "Joske", + "Jovanni", "Jowan", "Jowannes", - "Joy", "Joyce", "Jozef", - "Juana", - "Juanita", - "Judah", - "Jude", - "Judge", - "Judson", + "Jozefien", + "Jozefina", + "Judith", "Jules", "Julia", "Julian", @@ -1618,165 +1170,85 @@ defmodule Faker.Person.Nl do "Juliette", "Julio", "Julius", - "June", - "Junior", - "Junius", + "Jurjen", "Jurgen", - "Justen", "Justin", "Justina", "Justine", "Justien", "Justus", - "Justyn", - "Juvenal", - "Juwan", + "Juust", "Kaat", - "Kacey", - "Kaci", - "Kacie", - "Kade", - "Kaden", - "Kaela", - "Kaelyn", "Kai", "Kailee", - "Kailey", - "Kailyn", - "Kaitlin", "Kaitlyn", "Kal", "Kaleb", - "Kaleigh", - "Kaley", - "Kali", - "Kallie", "Kameron", "Kamiel", "Kamille", - "Kamron", - "Kane", "Kara", - "Kareem", "Karel", "Karen", - "Kari", - "Kariane", - "Karianne", + "Karien", + "Karin", "Karina", "Karine", "Karl", "Karlee", - "Karley", - "Karli", - "Karlie", + "Karlijn", "Karolien", - "Karson", "Kas", - "Kasandra", "Kasey", "Kassandra", "Kat", - "Katarina", - "Kateline", "Katelijn", - "Katelynn", "Katharina", "Katherine", - "Katheryn", "Kathleen", - "Kathlyn", - "Kathryn", - "Kathryne", + "Kathelijn", + "Katinka", + "Katja", "Katleen", "Katlien", "Katrina", "Katrien", "Katie", - "Kay", - "Kaya", - "Kaycee", - "Kayden", - "Kayla", - "Kaylah", - "Kaylee", - "Kayleigh", - "Kayley", - "Kayli", - "Kaylie", - "Kaylin", - "Keagan", - "Keanu", "Keara", - "Keaton", - "Keegan", - "Keeley", "Kees", "Keesje", - "Keira", - "Keith", - "Kellen", - "Kelley", - "Kelli", "Kellie", "Kelly", "Kelsi", "Kelsie", - "Kelton", - "Kelvin", "Ken", - "Kendra", - "Kendrick", "Kenji", "Kenna", - "Kennedi", - "Kennedy", "Kenneth", "Kennie", "Kenny", - "Kenton", - "Kenya", - "Kenyatta", - "Kenyon", - "Keshaun", "Keven", "Kevin", - "Kevon", - "Keyon", - "Keyshawn", - "Khalid", - "Khalil", - "Kian", - "Kiana", - "Kianna", "Kiara", - "Kiarra", - "Kiel", - "Kiera", - "Kieran", - "Kiley", + "Kiefer", "Kim", "Kimberly", - "King", - "Kip", "Kira", - "Kirk", "Kirsten", "Kitty", "Klaartje", + "Klaas", + "Klaus", "Klara", "Kobe", - "Koby", - "Kody", + "Kobus", "Koen", "Koenraad", - "Kole", + "Koos", + "Kor", "Korbin", - "Korey", - "Kory", - "Kraig", "Kris", - "Krista", + "Kristi", "Kristel", "Kristian", "Kristien", @@ -1785,75 +1257,46 @@ defmodule Faker.Person.Nl do "Kristoff", "Kristoffer", "Kristy", - "Krystal", "Krystel", "Krystina", + "Kuber", "Kurt", - "Kyla", "Kyle", "Kylee", "Kyleigh", - "Kyler", - "Kylie", "Kyra", - "Lacey", - "Lacy", - "Lafayette", "Laila", - "Laisha", "Lamar", "Lambert", "Lambik", - "Lamont", "Lance", - "Landen", - "Lane", - "Laney", + "Lara", "Larissa", - "Laron", "Larry", - "Larue", + "Lars", "Laura", - "Laurel", "Lauren", "Laurence", - "Lauretta", - "Lauriane", + "Laurens", + "Laurentien", "Laurianne", "Laurie", "Laurine", - "Laury", - "Lauryn", - "Lavada", - "Lavern", - "Laverna", - "Laverne", - "Lavina", - "Lavinia", - "Lavon", - "Lavonne", "Lawrence", - "Lawson", "Layla", - "Layne", - "Lazaro", "Lea", "Leander", "Leandro", "Leanna", "Leanne", - "Leatha", "Leda", "Lee", "Leen", "Leentje", - "Leif", + "Leendert", "Leila", "Lela", - "Leland", - "Lelia", - "Lempi", - "Lemuel", + "Lelie", "Lenna", "Lennert", "Lennie", @@ -1864,14 +1307,13 @@ defmodule Faker.Person.Nl do "Leola", "Leon", "Leonard", - "Leonardo", + "Leonardus", "Leone", "Leonel", "Leonie", "Leonore", "Leontine", "Leopold", - "Leopoldo", "Leora", "Lera", "Lesley", @@ -1883,28 +1325,21 @@ defmodule Faker.Person.Nl do "Letha", "Letitia", "Levi", - "Lew", "Lewis", "Lex", "Lexie", - "Lexus", - "Lia", "Liam", - "Liana", + "Lieke", "Lies", + "Liesbeth", + "Lieselot", + "Lieselotte", "Lien", "Lieve", "Lieven", - "Lila", - "Lilian", "Liliana", "Liliane", - "Lillian", - "Lilliana", - "Lillie", - "Lilly", "Lily", - "Lilyan", "Lina", "Linda", "Linde", @@ -1912,46 +1347,39 @@ defmodule Faker.Person.Nl do "Lindsey", "Linn", "Line", - "Linnie", + "Linus", "Lionel", "Lisa", "Lise", "Lisette", "Liza", - "Lizeth", "Lizzie", - "Llewellyn", - "Lloyd", - "Logan", - "Lois", - "Loise", + "Lode", + "Lodewijk", + "Loes", + "Loïs", + "Loïse", "Lola", - "Lolita", - "Loma", - "Lon", - "London", - "Lonie", + "Lonneke", "Lonnie", "Lonny", + "Lor", "Lora", "Lore", "Loraine", "Loren", - "Lorena", "Lorens", "Lorenz", "Lorenzo", - "Lori", + "Loris", "Lorine", - "Lorke", "Lotte", "Lou", "Louie", "Louisa", "Lourdes", - "Louvenia", "Lowie", - "Loy", + "Lowiena", "Luc", "Luca", "Lucas", @@ -1963,7 +1391,7 @@ defmodule Faker.Person.Nl do "Lucio", "Lucius", "Lucy", - "Ludie", + "Ludo", "Ludwig", "Luigi", "Luis", @@ -1973,68 +1401,46 @@ defmodule Faker.Person.Nl do "Luka", "Lukas", "Luke", - "Lula", - "Lulu", "Luna", - "Lupe", - "Lurline", "Lut", - "Luther", + "Luuk", "Lyda", "Lydia", "Lyn", "Lynn", - "Lyric", "Lysanne", "Maaike", - "Mabel", + "Maarten", + "Maartje", "Mabelle", - "Mac", - "Macey", + "Machiel", "Macie", "Machteld", "Mack", "Mackenzie", "Macy", "Madaline", - "Madalyn", "Maddison", "Madeline", "Madelyn", - "Madelynn", "Madie", "Madilyn", "Madisen", "Madison", - "Madisyn", "Madonna", "Madyson", "Mae", "Maegan", - "Maeve", - "Mafalda", - "Magali", - "Magdalen", + "Magalie", + "Magda", "Magdalena", "Maggie", - "Magnolia", - "Magnus", "Maia", - "Maida", - "Maiya", - "Major", - "Makayla", - "Makenna", - "Makenzie", - "Malachi", - "Malcolm", - "Malika", "Malinda", - "Mallie", - "Mallory", + "Mallorie", "Malvina", + "Mandie", "Mandy", - "Manley", "Manuel", "Manuela", "Mara", @@ -2048,125 +1454,90 @@ defmodule Faker.Person.Nl do "Marcelo", "Marcia", "Marco", - "Marcos", "Marcus", - "Margaret", - "Margarett", "Margaretta", "Margarette", "Margarita", - "Marge", - "Margie", "Margot", - "Margret", - "Marguerite", + "Margriet", "Maria", - "Mariah", - "Mariam", - "Marian", "Mariane", "Marianna", "Marianne", - "Mariano", - "Maribel", "Marie", "Marie-Anne", + "Marie-Antoinette", "Marie-Jeanne", - "Mariela", - "Marielle", - "Marietta", + "Marie-José", + "Marieke", + "Mariette", + "Marijke", "Marijn", "Marilie", "Marilou", - "Marilyne", "Marina", "Mario", - "Marion", "Marius", "Marja", "Marjan", + "Marjo", "Marjolijn", "Marjorie", "Mark", "Markus", - "Marlee", "Marleen", "Marlene", - "Marleyne", + "Marlies", "Marlijn", + "Marloes", "Marq", "Marquis", - "Marquise", + "Mart", "Marta", + "Marten", "Marthe", "Martijn", - "Martin", "Martina", "Martine", - "Marty", - "Mary", - "Marya", - "Maryse", - "Mason", + "Maryan", "Mateo", - "Mathew", "Mathijs", "Mathias", "Mathilde", "Matijs", "Matilda", "Matilde", - "Matt", "Matteo", + "Mattheus", "Matthias", "Matthijs", "Mattias", - "Maud", - "Maude", - "Maudie", "Maureen", "Maurice", - "Mauricio", - "Maurine", - "Maverick", - "Mavis", + "Maurits", + "Mauritz", "Max", "Maxie", "Maxime", "Maximiliaan", "Maximillia", - "Maximillian", - "Maximus", "Maxine", - "Maxwell", - "May", "Maya", - "Maybell", - "Maybelle", - "Maynard", - "Mazie", - "Meaghan", - "Meda", - "Megan", "Megane", - "Meggie", "Meghan", - "Mekhi", "Melany", "Melanie", - "Melisa", + "Melis", "Melissa", - "Mellie", - "Melody", + "Melodie", "Melvin", "Melvina", - "Melyna", "Melyssa", + "Menno", "Mercedes", - "Meredith", + "Merel", "Merijn", "Merl", - "Merle", "Merlijn", "Mertie", "Mervin", @@ -2177,10 +1548,10 @@ defmodule Faker.Person.Nl do "Michael", "Michaël", "Michaela", - "Michale", "Michel", - "Michele", "Michelle", + "Michiel", + "Mieke", "Miel", "Miguel", "Mika", @@ -2188,23 +1559,16 @@ defmodule Faker.Person.Nl do "Mikel", "Milan", "Miles", - "Milford", - "Millie", "Milo", - "Milton", "Mina", "Minerva", "Minnie", - "Miracle", + "Mira", "Mireille", - "Mireya", - "Misael", - "Misty", + "Mirko", "Mitch", - "Mitchell", - "Mittie", + "Modest", "Modesta", - "Modesto", "Mohamed", "Mohammed", "Moises", @@ -2214,42 +1578,24 @@ defmodule Faker.Person.Nl do "Mona", "Monica", "Monique", - "Monserrat", - "Monserrate", - "Montana", - "Monte", - "Monty", + "Moos", "Morgan", - "Moriah", - "Morris", - "Mortimer", - "Morton", - "Mose", + "Morgane", + "Moris", "Moses", - "Moshe", - "Mossie", - "Mozella", "Mozelle", - "Muhammad", - "Muriel", - "Murielle", + "Muriël", + "Muriëlle", "Murphy", - "Murray", "Mustafa", - "Mya", - "Myah", - "Mylene", "Myles", "Myra", "Myriam", - "Myrl", - "Myrna", - "Myron", - "Myrtice", + "Myrianne", + "Myrthe", "Nadia", - "Nakia", - "Name", - "Nannie", + "Nadine", + "Nanouch", "Naomi", "Naomie", "Napoleon", @@ -2260,26 +1606,15 @@ defmodule Faker.Person.Nl do "Natasha", "Nathan", "Nathaniël", - "Nathen", - "Nayeli", "Ned", - "Nedra", - "Neha", "Neil", - "Nelda", + "Nel", "Nella", "Nelle", "Nellie", - "Nels", "Nelson", - "Neoma", "Nestor", "Nettie", - "Neva", - "Newell", - "Newton", - "Nia", - "Niander", "Nicholas", "Nicholaus", "Nichole", @@ -2289,11 +1624,11 @@ defmodule Faker.Person.Nl do "Nicola", "Nicolas", "Nicole", - "Nicolette", "Niek", "Niel", "Niels", "Nigel", + "Nik", "Nikita", "Nikki", "Niko", @@ -2304,26 +1639,17 @@ defmodule Faker.Person.Nl do "Nobel", "Noë", "Noëlle", - "Noemi", - "Noemie", + "Noëmi", + "Noëmie", "Nola", "Nolan", "Noor", "Nora", "Norbert", "Norberto", - "Norene", - "Norma", + "Norman", "Norris", - "Norval", - "Norwood", - "Nova", - "Novella", - "Nya", - "Nyah", - "Nyasinth", "Obelix", - "Oceanne", "Octaaf", "Octavia", "Octavius", @@ -2331,79 +1657,49 @@ defmodule Faker.Person.Nl do "Odessa", "Odie", "Ofelia", - "Okey", "Olaf", "Olav", - "Ole", - "Olen", + "Oldrik", "Oleta", "Olga", - "Olin", + "Oliver", "Olivier", + "Olle", + "Olliver", + "Ollivier", "Ollie", - "Omari", "Omer", - "Ona", - "Onie", - "Opal", "Ophelia", - "Ora", - "Oran", - "Oren", - "Orie", "Orin", "Orion", "Orlando", - "Orlo", - "Orpha", - "Orrin", - "Orval", - "Orville", - "Osbaldo", - "Osborne", + "Orphelia", "Oscar", - "Osvaldo", "Oswald", "Oswaldo", - "Otha", - "Otho", - "Otilia", - "Otis", - "Ottilie", - "Ottis", "Otto", - "Ova", "Owen", - "Ozella", "Pablo", - "Paige", + "Paco", "Pam", "Pamela", "Pan", - "Paolo", + "Paola", "Paris", "Pascal", "Pascale", "Pat", - "Patience", "Patricia", "Patrick", + "Patriek", "Patsy", - "Pattie", "Paul", "Paula", "Pauline", - "Paxton", - "Payton", - "Pearl", - "Pearlie", "Pedro", "Peggie", - "Penelope", "Pepijn", - "Percival", - "Percy", - "Perry", + "Perre", "Peter", "Petra", "Petrus", @@ -2412,7 +1708,7 @@ defmodule Faker.Person.Nl do "Philip", "Philippe", "Philippa", - "Pierke", + "Pier", "Pierre", "Pierre-Joseph", "Pierre-Yves", @@ -2422,35 +1718,22 @@ defmodule Faker.Person.Nl do "Pieternel", "Pietje", "Pim", - "Pinkie", "Pod", "Poderik", "Poe", "Pol", - "Polly", "Pommelien", - "Preston", - "Prince", - "Princess", - "Priscilla", - "Prudence", - "Queen", - "Queenie", "Quentin", "Quincy", - "Quinn", "Quint", "Quinten", - "Rachael", "Rachel", "Rachelle", "Rae", "Raf", - "Rafael", - "Rafaela", - "Raheem", - "Rahsaan", - "Rahul", + "Rafaël", + "Raffaël", + "Rahoul", "Raimond", "Ralf", "Ralph", @@ -2460,70 +1743,48 @@ defmodule Faker.Person.Nl do "Rand", "Randal", "Randi", - "Randy", - "Ransom", "Raoul", "Raphael", "Raphaelle", "Raquel", "Rashad", - "Rashawn", - "Rasheed", "Raul", - "Raven", "Ray", "Raymond", - "Raymundo", - "Reagan", - "Reanna", - "Reba", - "Rebeca", + "Raymundus", "Rebecca", "Rebeka", - "Rebekah", - "Reece", - "Reed", - "Reese", - "Regan", - "Reggie", + "Regi", "Reginald", - "Reid", - "Reilly", - "Reina", - "Reinhold", - "Remington", - "Rene", + "Rein", + "Reindert", + "Reinhard", + "Remco", + "Remi", + "Remy", + "René", "Renee", - "Ressie", - "Reta", - "Retha", - "Retta", + "Rens", "Reuben", - "Reva", "Rex", "Rey", - "Reyes", - "Reymundo", - "Reyna", + "Reymond", "Reynold", "Rhea", - "Rhett", "Rhianna", "Rhoda", "Ricardo", "Richard", - "Richie", "Rick", - "Rickey", "Rickie", "Ricky", "Rico", + "Rijkert", "Rik", "Riko", "Rikkert", "Rikkie", "Rita", - "River", "Rob", "Robbe", "Robbie", @@ -2531,58 +1792,43 @@ defmodule Faker.Person.Nl do "Roberta", "Roberto", "Robin", + "Robrecht", "Robyn", - "Rocky", "Rod", "Roderik", "Rodger", - "Rodolfo", "Rodrick", "Rodrigo", "Roel", "Roeland", "Roger", - "Rogers", + "Rogier", "Roland", - "Rolando", - "Roma", - "Romaine", - "Roman", + "Rombout", "Romelu", - "Romero", + "Romeyn", + "Romi", "Ron", "Ronald", "Ronaldo", "Ronny", "Roos", "Rosa", - "Rosalee", - "Rosalia", - "Rosalind", - "Rosalinda", - "Rosalyn", + "Rosalie", "Rosanna", "Rosario", "Rose", - "Rosella", + "Roselien", + "Roselinde", "Roselyn", "Rosemarie", "Rosemary", "Rosemond", - "Rosendo", "Rosetta", "Rosie", - "Rosina", - "Roslyn", - "Ross", - "Rossie", - "Rowan", - "Rowena", - "Rowland", "Roxane", "Roxanne", "Roy", - "Royal", "Royce", "Rozella", "Ruben", @@ -2592,32 +1838,18 @@ defmodule Faker.Person.Nl do "Rudolph", "Rudy", "Rupert", - "Russ", - "Russel", - "Russell", - "Rusty", - "Ruth", - "Ruthe", - "Ruthie", + "Rut", + "Ruud", "Ryan", - "Ryann", - "Ryder", - "Rylan", - "Rylee", - "Ryleigh", - "Ryley", "Saartje", "Sabina", "Sabine", "Sabrina", "Sadie", - "Sage", - "Saige", + "Safir", "Sallie", "Sally", "Salma", - "Salvador", - "Salvatore", "Sam", "Samanta", "Samantha", @@ -2626,28 +1858,17 @@ defmodule Faker.Person.Nl do "Sammie", "Sammy", "Samson", + "Samuel", "Sander", "Sandra", "Sandrine", "Sandy", - "Santa", - "Santiago", - "Santina", - "Santino", + "Sanne", "Santos", + "Sara", "Sarah", - "Sarina", "Sasha", - "Saul", - "Savanah", - "Savanna", - "Savannah", - "Savion", - "Scarlett", - "Schuyler", - "Scot", - "Scottie", - "Scotty", + "Saskia", "Sean", "Sebastian", "Sebastiaan", @@ -2657,43 +1878,17 @@ defmodule Faker.Person.Nl do "Sep", "Seppe", "Serena", - "Serenity", "Seth", - "Shad", - "Shaina", "Shakira", "Shana", - "Shane", - "Shanel", "Shanelle", "Shania", - "Shanie", - "Shaniya", - "Shanna", - "Shannon", - "Shanny", - "Shanon", - "Shany", - "Sharon", - "Shaun", "Shawn", - "Shawna", - "Shaylee", - "Shayna", - "Shayne", - "Shea", - "Sheila", - "Sheldon", - "Sheridan", - "Sherman", - "Shirley", - "Shyanne", - "Sibyl", + "Sibe", "Sid", - "Sidney", "Sien", - "Sierra", - "Sigmund", + "Sientje", + "Sigmond", "Sigrid", "Sigurd", "Silas", @@ -2701,28 +1896,27 @@ defmodule Faker.Person.Nl do "Simeon", "Simon", "Simone", + "Simson", "Sippe", "Sis", "Siske", - "Skye", - "Skyla", - "Skylar", + "Sjaak", + "Sjoerd", "Sofia", "Sofie", - "Soledad", - "Solomon", "Sonja", - "Sonny", "Sonya", "Sophia", "Sophie", - "Spencer", "Stacey", "Stacy", "Staf", "Stan", - "Stanley", - "Stantin", + "Stannie", + "Stanny", + "Stany", + "Stef", + "Stefaan", "Stefan", "Stefanie", "Stella", @@ -2731,70 +1925,53 @@ defmodule Faker.Person.Nl do "Stephanie", "Stephany", "Stephen", - "Stephon", - "Sterling", "Steve", "Steven", "Stevie", "Stijn", - "Stuart", - "Summer", - "Sunny", + "Stoffel", + "Sundert", "Sus", "Susan", - "Susanna", "Susie", "Suske", + "Suzan", "Suzanne", "Sven", "Syd", - "Sydney", - "Sydni", - "Sydnie", - "Sylvan", + "Sygrid", + "Sylla", "Sylvester", "Sylvia", - "Tabitha", + "Sylvie", "Tad", "Talia", "Talon", "Tamara", "Tamia", "Tania", - "Tanner", "Tanya", "Tara", - "Taryn", - "Tate", - "Tatum", - "Tatyana", - "Taurean", - "Taya", - "Taylor", + "Tatjana", "Tea", "Ted", - "Telly", + "Telma", "Teo", - "Terence", "Teresa", - "Terrance", - "Terrell", - "Terrence", "Terry", - "Tess", + "Tessa", "Tessie", - "Tevin", "Teun", "Teunis", - "Thalia", "Thea", - "Thelma", "Theo", + "Theodoor", "Theodora", - "Theodore", "Theresa", "Therese", - "Theresia", + "Theunis", + "Thibau", + "Thibaut", "Thijs", "Thom", "Thomas", @@ -2802,229 +1979,160 @@ defmodule Faker.Person.Nl do "Tia", "Tiana", "Tiara", + "Tibau", + "Tibaut", + "Tibeau", + "Tibo", "Tiene", + "Ties", "Tiffany", "Tijl", + "Tijn", "Tijs", "Tim", - "Timmothy", + "Timme", "Timmy", + "Timo", "Timothy", "Tina", "Tine", "Tineke", "Titus", + "Tjebbe", "Tobe", "Tobias", "Toby", + "Toine", "Tom", "Tomas", - "Tomasa", "Tommie", - "Toney", - "Toni", + "Ton", + "Tonie", "Tony", "Toon", + "Tor", "Torsten", - "Toy", - "Trace", - "Tracey", "Tracy", - "Travis", - "Travon", "Trees", - "Tremaine", - "Tremayne", - "Trent", - "Trenton", - "Tressa", - "Tressie", - "Treva", - "Trever", - "Trevion", - "Trevor", - "Trey", - "Trinity", - "Tris", + "Trijn", "Tristan", - "Triston", "Troy", - "Trudie", - "Trycia", + "Truus", "Trystan", - "Turner", - "Twila", + "Twan", "Tyler", - "Tyra", - "Tyree", - "Tyreek", - "Tyrel", - "Tyrell", - "Tyrese", - "Tyrique", - "Tyshawn", - "Tyson", - "Ubaldo", - "Ulices", - "Ulises", - "Una", + "Ulrik", "Uma", - "Urbain", "Urban", + "Urbain", "Urbanus", - "Uriel", + "Uriël", "Ursula", - "Vada", - "Valentin", + "Valentijn", "Valentina", "Valentine", "Valerie", - "Vance", "Vanessa", - "Vaughn", - "Veda", - "Velda", - "Vella", + "Veerle", "Velma", - "Velva", - "Vena", - "Verda", - "Verdie", - "Vergie", - "Verla", - "Verlie", + "Vera", "Vern", "Verna", "Verner", "Vernice", "Vernie", "Vernon", - "Verona", "Veronica", + "Veronique", "Vesta", "Vic", - "Vicenta", - "Vicente", "Vickie", "Vicky", "Victor", "Victoria", - "Vida", "Vidal", - "Vilma", - "Vince", + "Viktor", "Vincent", - "Vincenza", "Vincenzo", "Vinnie", "Viola", "Violet", "Violette", - "Virgie", - "Virgil", "Virginia", "Virginie", "Vita", "Vito", - "Viva", + "Vitus", "Vivian", "Viviane", "Vivianne", "Vivien", "Vivienne", "Vladimir", - "Wade", "Waldo", - "Walker", - "Wallace", - "Walt", "Walter", "Wan", "Wannes", "Ward", "Warius", "Warres", - "Watson", - "Waylon", - "Wayne", - "Webster", - "Weldon", - "Wellington", - "Wendell", + "Waut", + "Wauter", "Wendy", "Werner", + "Wes", "Wesley", - "West", - "Whitney", "Wil", "Wilber", "Wilbert", - "Wiley", - "Wilford", + "Wilco", "Wilfred", "Wilfredo", "Wilfrid", + "Wilfried", "Wilhelm", "Wilhelmine", - "Will", - "Willa", + "Wilhelmus", "Willem", "William", "Willie", - "Willis", - "Willow", "Willy", "Wilma", - "Wilmer", - "Wilson", "Wim", - "Winfield", - "Winifred", - "Winnifred", - "Winona", + "Winfried", + "Wiske", "Witse", "Wout", "Wouter", - "Wyman", "Xander", "Xavier", "Xzavier", - "Yadira", "Yannick", - "Yasmin", + "Yasmina", "Yasmine", - "Yazmin", - "Yesenia", - "Yessenia", + "Yoeri", "Yolanda", - "Yoshiko", + "Yoshua", + "Yuri", + "Yves", "Yvette", "Yvonne", "Zach", "Zachariah", - "Zachary", + "Zacharie", "Zack", - "Zackary", "Zackie", - "Zakary", "Zander", - "Zane", - "Zaria", - "Zechariah", - "Zelda", - "Zella", + "Zeger", "Zelma", "Zena", "Zetta", - "Zion", + "Zigurt", "Zita", "Zoë", "Zoey", - "Zoie", - "Zoila", "Zola", - "Zora", - "Zula" + "Zora" ]) @doc """ From 888ec4e5416e7ebb05524c39144b8f5a229587be Mon Sep 17 00:00:00 2001 From: Christof Verhoeven <6996874+ChristofVerhoeven@users.noreply.github.com> Date: Thu, 4 Apr 2024 11:57:50 +0200 Subject: [PATCH 05/10] move to nl_be --- USAGE.md | 2 +- lib/faker/person/{nl.ex => nl_be.ex} | 664 ++++++++------------------- test/faker/person_test.exs | 2 +- 3 files changed, 204 insertions(+), 464 deletions(-) rename lib/faker/person/{nl.ex => nl_be.ex} (88%) diff --git a/USAGE.md b/USAGE.md index ae8b1cb41..90bc5a0f8 100644 --- a/USAGE.md +++ b/USAGE.md @@ -94,7 +94,7 @@ - [Faker.Person.Hy](lib/faker/person/hy.ex) - [Faker.Person.It](lib/faker/person/it.ex) - [Faker.Person.PtBr](lib/faker/person/pt_br.ex) -- [Faker.Person.Nl](lib/faker/person/nl.ex) +- [Faker.Person.NlBe](lib/faker/person/nl_be.ex) - [Faker.Phone.EnUs](lib/faker/phone/en_us.ex) - [Faker.Phone.EnGb](lib/faker/phone/en_gb.ex) - [Faker.Phone.Hy](lib/faker/phone/hy.ex) diff --git a/lib/faker/person/nl.ex b/lib/faker/person/nl_be.ex similarity index 88% rename from lib/faker/person/nl.ex rename to lib/faker/person/nl_be.ex index 21e0b92b3..763a315bd 100644 --- a/lib/faker/person/nl.ex +++ b/lib/faker/person/nl_be.ex @@ -1,77 +1,56 @@ -defmodule Faker.Person.Nl do +defmodule Faker.Person.NlBe do import Faker, only: [sampler: 2] @moduledoc """ - Functions for name data in English + Functions for names in Flemish (Belgian Dutch) """ @doc """ - Returns a complete name (may include a suffix/prefix or both) + Returns a complete name ## Examples - iex> Faker.Person.Nl.name() - "Dhr. Alberta Theunis Jr." - iex> Faker.Person.Nl.name() - "Marina Van Kessel" - iex> Faker.Person.Nl.name() - "Derek Terlouw" - iex> Faker.Person.Nl.name() - "Karin Rovers" + iex> Faker.Person.NlBe.name() + "Milo Van Sonsbeek" + iex> Faker.Person.NlBe.name() + "Bernice Speet" + iex> Faker.Person.NlBe.name() + "Ine Van Kessel" + iex> Faker.Person.NlBe.name() + "Jozefina Beekmans" """ @spec name() :: String.t() - def name, do: name(Faker.random_between(0, 9)) - defp name(0), do: "#{prefix()} #{first_name()} #{last_name()} #{suffix()}" - defp name(1), do: "#{prefix()} #{first_name()} #{last_name()}" - defp name(2), do: "#{first_name()} #{last_name()} #{suffix()}" - - defp name(n) when is_integer(n) do - "#{first_name()} #{last_name()}" - end + def name, do: "#{first_name()} #{last_name()}" @doc """ Returns a random first name ## Examples - iex> Faker.Person.Nl.first_name() - "Filemon" - iex> Faker.Person.Nl.first_name() - "Casandra" - iex> Faker.Person.Nl.first_name() - "Alberta" - iex> Faker.Person.Nl.first_name() - "Maxie" + iex> Faker.Person.NlBe.first_name() + "Milo" + iex> Faker.Person.NlBe.first_name() + "Maxime" + iex> Faker.Person.NlBe.first_name() + "Tatjana" + iex> Faker.Person.NlBe.first_name() + "Bernice" """ @spec first_name() :: String.t() sampler(:first_name, [ - "Ad", "Aad", "Aafje", - "Aart", - "Abbe", - "Abbie", - "Abby", "Abdul", - "Abdullah", "Abel", - "Abelardo", - "Abigail", "Abraham", "Achiel", "Achilles", "Achmed", - "Ada", - "Adaline", + "Ad", "Adam", - "Adan", - "Addie", - "Addison", - "Adela", "Adelbert", "Adelheid", "Adele", - "Adelia", "Adeline", "Adelle", "Adolph", @@ -85,10 +64,8 @@ defmodule Faker.Person.Nl do "Adrienne", "Agatha", "Agnes", - "Agnus", "Agustina", "Ahmed", - "Aida", "Aimé", "Aimee", "Al", @@ -99,17 +76,8 @@ defmodule Faker.Person.Nl do "Alberta", "Alberto", "Albertus", - "Albin", - "Albina", - "Alda", - "Aldert", "Alec", "Aleida", - "Alek", - "Alena", - "Alene", - "Alessandra", - "Alessandro", "Alex", "Alexa", "Alexander", @@ -118,9 +86,6 @@ defmodule Faker.Person.Nl do "Alexandrea", "Alexandria", "Alexandrine", - "Alexi", - "Alexis", - "Alexzander", "Alfons", "Alfonse", "Alfonso", @@ -132,40 +97,21 @@ defmodule Faker.Person.Nl do "Alicia", "Alina", "Alisa", - "Aliza", - "Alize", - "Allan", "Allard", - "Allen", "Allene", - "Allie", - "Allisia", - "Ally", "Alphonse", "Alphonso", - "Alta", - "Althea", - "Alva", - "Alvah", - "Alvena", - "Alvera", "Alvina", - "Alvis", "Alwin", "Alycia", "Alyssa", "Amalia", "Amanda", - "Amani", - "Amara", - "Amari", - "Amaya", "Amber", "Ambroos", "Ambrosius", "Amelia", "Amelie", - "Americk", "Amie", "Amina", "Amir", @@ -188,8 +134,6 @@ defmodule Faker.Person.Nl do "Angeline", "Angelique", "Angelo", - "Angie", - "Angus", "Anika", "Anita", "Anja", @@ -210,7 +154,6 @@ defmodule Faker.Person.Nl do "Annie", "Annika", "Anouk", - "Ansel", "Anthonie", "Anthony", "Antje", @@ -226,17 +169,15 @@ defmodule Faker.Person.Nl do "April", "Archie", "Archibald", - "Ardella", "Arend", "Arie", "Ariane", "Arianna", - "Ariel", + "Ariël", "Arielle", "Aris", "Arjan", "Arjen", - "Arlie", "Arlo", "Armand", "Armando", @@ -245,7 +186,6 @@ defmodule Faker.Person.Nl do "Arnold", "Arnoud", "Arnout", - "Aron", "Arthur", "Artur", "Aster", @@ -288,6 +228,7 @@ defmodule Faker.Person.Nl do "Benny", "Bent", "Bente", + "Benthe", "Berend", "Berendina", "Bernadette", @@ -312,7 +253,7 @@ defmodule Faker.Person.Nl do "Betty", "Bianca", "Bianka", - "Bill", + "Bil", "Billie", "Billy", "Birgen", @@ -330,19 +271,15 @@ defmodule Faker.Person.Nl do "Bonnie", "Boris", "Boudewijn", - "Brad", - "Bradley", "Bram", "Bran", "Brandon", "Brant", "Braulinde", "Brayen", - "Breanna", "Breanne", "Brecht", "Brenda", - "Brenna", "Brent", "Brian", "Briana", @@ -351,29 +288,13 @@ defmodule Faker.Person.Nl do "Brigitta", "Brigitte", "Brit", + "Britt", "Britney", - "Brittany", - "Brock", "Broderick", "Broos", "Bruno", "Bryan", "Bryana", - "Bud", - "Buford", - "Bulah", - "Burdette", - "Cad", - "Caden", - "Caesar", - "Caitlyn", - "Caleb", - "Caleigh", - "Cali", - "Callie", - "Callista", - "Cameron", - "Camila", "Camilla", "Camille", "Cara", @@ -383,48 +304,34 @@ defmodule Faker.Person.Nl do "Carla", "Carlo", "Carlos", - "Carmel", - "Carmela", "Carmella", - "Carmelo", "Carmen", - "Carmine", "Caro", - "Carol", "Carolien", - "Carolina", "Caroline", "Carolus", "Carrie", "Carsten", "Cas", - "Casandra", - "Casey", "Casimir", "Casper", "Cassandra", - "Cassie", - "Caterina", "Cathelijn", + "Catherina", "Catherine", - "Cathrien", "Cathy", "Cato", "Ceasar", - "Cecelia", "Cecil", "Cecile", "Cecilia", - "Cedrick", + "Cedric", "Celestine", "Celestijn", "Celia", "Celine", "Céline", "César", - "Chance", - "Chandler", - "Chanel", "Chanelle", "Chantal", "Chantalle", @@ -432,10 +339,7 @@ defmodule Faker.Person.Nl do "Charles", "Charlie", "Charlotte", - "Chase", "Chancey", - "Chaya", - "Chaz", "Chelsea", "Chester", "Chloë", @@ -463,9 +367,7 @@ defmodule Faker.Person.Nl do "Clarissa", "Claude", "Claudia", - "Claudie", "Claudine", - "Claudius", "Claus", "Clemens", "Clement", @@ -477,9 +379,6 @@ defmodule Faker.Person.Nl do "Cliff", "Clotilde", "Clovis", - "Cobe", - "Coby", - "Cody", "Coen", "Coenraad", "Colin", @@ -502,11 +401,9 @@ defmodule Faker.Person.Nl do "Cornelis", "Cornelius", "Corwin", - "Cory", "Cristel", "Cristiaan", "Cristina", - "Cristobal", "Cristopher", "Curt", "Curtis", @@ -517,15 +414,12 @@ defmodule Faker.Person.Nl do "Dagmar", "Dahlia", "Daisy", - "Dakota", - "Damaris", "Damiaan", "Damien", "Damon", "Dan", "Dana", "Dani", - "Dangelo", "Daniël", "Daniëla", "Daniëlla", @@ -536,11 +430,7 @@ defmodule Faker.Person.Nl do "Dante", "Danyka", "Daphne", - "Daphnee", "Darcy", - "Daren", - "Dariaan", - "Dariana", "Darien", "Dario", "Darius", @@ -569,7 +459,6 @@ defmodule Faker.Person.Nl do "Denise", "Dennis", "Derek", - "Dero", "Derrick", "Desiderius", "Désirée", @@ -610,10 +499,6 @@ defmodule Faker.Person.Nl do "Dorien", "Doris", "Dorothea", - "Dorothy", - "Douglas", - "Dovie", - "Draco", "Dré", "Dreesje", "Dries", @@ -646,13 +531,8 @@ defmodule Faker.Person.Nl do "Eldon", "Eldora", "Eldred", - "Eleanora", "Eleanore", - "Eleazar", - "Electa", "Elena", - "Elenor", - "Elenora", "Eleonore", "Elfrieda", "Eli", @@ -688,21 +568,15 @@ defmodule Faker.Person.Nl do "Elsje", "Elton", "Elwin", - "Elwyn", "Elyse", - "Elyssa", "Elza", "Emanuel", - "Emelia", - "Emelie", "Emie", "Emiel", "Emile", "Emilia", "Emilie", - "Emilio", "Emma", - "Emmalia", "Emmanuel", "Emmanuelle", "Emmet", @@ -712,15 +586,9 @@ defmodule Faker.Person.Nl do "Ena", "Enneke", "Enola", - "Enos", - "Enrico", - "Enrique", "Eran", - "Eriberto", "Eric", "Erica", - "Erick", - "Ericka", "Erik", "Erika", "Erin", @@ -728,65 +596,46 @@ defmodule Faker.Person.Nl do "Ernest", "Ernestina", "Ernestine", - "Ernesto", "Ernie", - "Ervin", "Erwin", "Eryn", "Esmée", "Esmeralda", "Espen", "Esperanza", - "Esteban", "Estefania", "Estel", "Estella", "Estelle", "Esther", "Estrella", - "Etha", "Ethan", "Ethel", - "Ethyl", - "Ettie", "Eudora", "Eugene", "Eugenia", - "Eula", - "Eulah", - "Eulalia", - "Euna", "Eunice", - "Eusebio", "Eva", "Evaline", - "Evan", "Evangelina", "Evans", - "Eve", "Eveline", "Evelyn", "Evert", "Evie", "Evy", "Ewald", + "Ewout", "Ezekiel", - "Ezequiel", "Ezra", "Fabian", "Fabiola", "Fabrice", "Fabricius", - "Falco", "Famke", "Fanny", "Fatima", - "Fausto", - "Favian", - "Federico", "Felicia", - "Felipa", - "Felipe", "Felix", "Femke", "Ferdinand", @@ -822,7 +671,6 @@ defmodule Faker.Person.Nl do "Francisca", "Francisco", "Franciscus", - "Franco", "Frank", "Frankie", "Frans", @@ -839,7 +687,7 @@ defmodule Faker.Person.Nl do "Frida", "Fridolinus", "Frieda", - "Friedrich", + "Friedo", "Frits", "Fritz", "Gabriël", @@ -855,7 +703,6 @@ defmodule Faker.Person.Nl do "Geoffrey", "George", "Georgette", - "Georgianna", "Geovanni", "Gerald", "Geraldine", @@ -869,9 +716,8 @@ defmodule Faker.Person.Nl do "Gerrit", "Gerrie", "Gert", + "Gert-Jan", "Gertrude", - "Gia", - "Gianni", "Gideon", "Gijs", "Gijsbert", @@ -885,7 +731,6 @@ defmodule Faker.Person.Nl do "Gino", "Giovanni", "Gisselle", - "Giuseppe", "Glen", "Glenda", "Glenn", @@ -906,7 +751,6 @@ defmodule Faker.Person.Nl do "Gregorius", "Gregory", "Greta", - "Gretchen", "Griet", "Grietje", "Gudrun", @@ -927,12 +771,11 @@ defmodule Faker.Person.Nl do "Gwendolien", "Hailey", "Hal", - "Halle", - "Hallie", "Han", "Hanna", "Hanne", "Hanneke", + "Hannelore", "Hannes", "Hans", "Hansje", @@ -948,7 +791,6 @@ defmodule Faker.Person.Nl do "Hein", "Heinke", "Heleen", - "Helen", "Helena", "Helene", "Helga", @@ -973,16 +815,12 @@ defmodule Faker.Person.Nl do "Hildegard", "Hilma", "Hobart", - "Hollie", - "Hollis", "Horace", "Horacio", "Hortense", "Howard", "Hubert", "Hugo", - "Hulda", - "Humberto", "Ian", "Ibrahim", "Ida", @@ -992,7 +830,6 @@ defmodule Faker.Person.Nl do "Ilya", "Ilene", "Ima", - "Imani", "Imelda", "Immanuel", "Ine", @@ -1001,6 +838,7 @@ defmodule Faker.Person.Nl do "Inge", "Ingrid", "Irene", + "Iris", "Irma", "Irwin", "Isaac", @@ -1008,12 +846,11 @@ defmodule Faker.Person.Nl do "Isabel", "Isabella", "Isabelle", - "Isaiah", "Isidoor", "Ismaël", - "Isobel", "Ivan", "Ivo", + "Ivonne", "Izaiah", "Jaak", "Jaap", @@ -1042,7 +879,7 @@ defmodule Faker.Person.Nl do "Jamie", "Jamil", "Jan", - "Jan Jaap", + "Jan-Jaap", "Jana", "Janelle", "Janet", @@ -1060,8 +897,8 @@ defmodule Faker.Person.Nl do "Jasmine", "Jason", "Jasper", - "Jaunita", "Javier", + "Jayden", "Jean", "Jean-Claude", "Jean-Luc", @@ -1073,17 +910,12 @@ defmodule Faker.Person.Nl do "Jeanne", "Jef", "Jeffrey", - "Jeffry", "Jelle", - "Jenna", - "Jenifer", "Jennie", "Jennifer", "Jenny", - "Jensen", - "Jerad", - "Jerald", - "Jeremia", + "Jens", + "Jente", "Jeremie", "Jeremy", "Jermaine", @@ -1091,13 +923,11 @@ defmodule Faker.Person.Nl do "Jerome", "Jerre", "Jerry", - "Jesaja", "Jesper", "Jesse", "Jessica", "Jessie", "Jessika", - "Jesus", "Jette", "Jil", "Jim", @@ -1107,7 +937,6 @@ defmodule Faker.Person.Nl do "Joachim", "Joanna", "Joanne", - "Joaquin", "Jobbe", "Jocelien", "Jochem", @@ -1141,6 +970,7 @@ defmodule Faker.Person.Nl do "Jordy", "Joren", "Jorge", + "Jorgen", "Jorien", "Joris", "Jos", @@ -1153,7 +983,6 @@ defmodule Faker.Person.Nl do "Joske", "Jovanni", "Jowan", - "Jowannes", "Joyce", "Jozef", "Jozefien", @@ -1180,13 +1009,8 @@ defmodule Faker.Person.Nl do "Juust", "Kaat", "Kai", - "Kailee", "Kaitlyn", - "Kal", - "Kaleb", - "Kameron", "Kamiel", - "Kamille", "Kara", "Karel", "Karen", @@ -1211,10 +1035,9 @@ defmodule Faker.Person.Nl do "Katja", "Katleen", "Katlien", + "Kato", "Katrina", "Katrien", - "Katie", - "Keara", "Kees", "Keesje", "Kellie", @@ -1223,14 +1046,11 @@ defmodule Faker.Person.Nl do "Kelsie", "Ken", "Kenji", - "Kenna", "Kenneth", "Kennie", "Kenny", - "Keven", "Kevin", "Kiara", - "Kiefer", "Kim", "Kimberly", "Kira", @@ -1241,12 +1061,11 @@ defmodule Faker.Person.Nl do "Klaus", "Klara", "Kobe", - "Kobus", "Koen", "Koenraad", "Koos", "Kor", - "Korbin", + "Korbijn", "Kris", "Kristi", "Kristel", @@ -1257,19 +1076,13 @@ defmodule Faker.Person.Nl do "Kristoff", "Kristoffer", "Kristy", - "Krystel", - "Krystina", - "Kuber", "Kurt", "Kyle", - "Kylee", - "Kyleigh", "Kyra", "Laila", - "Lamar", "Lambert", "Lambik", - "Lance", + "Lander", "Lara", "Larissa", "Larry", @@ -1295,16 +1108,12 @@ defmodule Faker.Person.Nl do "Leentje", "Leendert", "Leila", - "Lela", - "Lelie", - "Lenna", "Lennert", "Lennie", "Lenny", "Lenora", "Lenore", "Leo", - "Leola", "Leon", "Leonard", "Leonardus", @@ -1315,14 +1124,9 @@ defmodule Faker.Person.Nl do "Leontine", "Leopold", "Leora", - "Lera", "Lesley", "Leslie", - "Lesly", - "Lessie", "Lester", - "Leta", - "Letha", "Letitia", "Levi", "Lewis", @@ -1340,7 +1144,6 @@ defmodule Faker.Person.Nl do "Liliana", "Liliane", "Lily", - "Lina", "Linda", "Linde", "Lindsay", @@ -1353,9 +1156,9 @@ defmodule Faker.Person.Nl do "Lise", "Lisette", "Liza", - "Lizzie", "Lode", "Lodewijk", + "Loena", "Loes", "Loïs", "Loïse", @@ -1373,17 +1176,16 @@ defmodule Faker.Person.Nl do "Lorenzo", "Loris", "Lorine", + "Lot", "Lotte", "Lou", "Louie", - "Louisa", + "Louise", "Lourdes", "Lowie", - "Lowiena", "Luc", "Luca", "Lucas", - "Luciano", "Lucie", "Lucienne", "Lucile", @@ -1393,10 +1195,8 @@ defmodule Faker.Person.Nl do "Lucy", "Ludo", "Ludwig", + "Ludwin", "Luigi", - "Luis", - "Luisa", - "Luise", "Luk", "Luka", "Lukas", @@ -1406,7 +1206,6 @@ defmodule Faker.Person.Nl do "Luuk", "Lyda", "Lydia", - "Lyn", "Lynn", "Lysanne", "Maaike", @@ -1417,25 +1216,16 @@ defmodule Faker.Person.Nl do "Macie", "Machteld", "Mack", - "Mackenzie", - "Macy", - "Madaline", - "Maddison", + "Madeleine", + "Madelien", + "Madelijn", "Madeline", - "Madelyn", - "Madie", - "Madilyn", - "Madisen", - "Madison", - "Madonna", - "Madyson", - "Mae", - "Maegan", "Magalie", "Magda", "Magdalena", "Maggie", "Maia", + "Maikel", "Malinda", "Mallorie", "Malvina", @@ -1446,10 +1236,7 @@ defmodule Faker.Person.Nl do "Mara", "Marc", "Marcel", - "Marcelina", - "Marcelino", "Marcella", - "Marcelle", "Marcellus", "Marcelo", "Marcia", @@ -1491,7 +1278,6 @@ defmodule Faker.Person.Nl do "Marlijn", "Marloes", "Marq", - "Marquis", "Mart", "Marta", "Marten", @@ -1501,6 +1287,7 @@ defmodule Faker.Person.Nl do "Martine", "Maryan", "Mateo", + "Mathieu", "Mathijs", "Mathias", "Mathilde", @@ -1523,27 +1310,20 @@ defmodule Faker.Person.Nl do "Maximillia", "Maxine", "Maya", - "Megane", + "Mégane", "Meghan", - "Melany", "Melanie", - "Melis", "Melissa", "Melodie", "Melvin", "Melvina", "Melyssa", "Menno", - "Mercedes", "Merel", "Merijn", - "Merl", "Merlijn", - "Mertie", - "Mervin", "Mia", "Mica", - "Micaela", "Micah", "Michael", "Michaël", @@ -1556,7 +1336,6 @@ defmodule Faker.Person.Nl do "Miguel", "Mika", "Mike", - "Mikel", "Milan", "Miles", "Milo", @@ -1571,7 +1350,6 @@ defmodule Faker.Person.Nl do "Modesta", "Mohamed", "Mohammed", - "Moises", "Mollie", "Molly", "Mon", @@ -1583,7 +1361,6 @@ defmodule Faker.Person.Nl do "Morgane", "Moris", "Moses", - "Mozelle", "Muriël", "Muriëlle", "Murphy", @@ -1641,15 +1418,11 @@ defmodule Faker.Person.Nl do "Noëlle", "Noëmi", "Noëmie", - "Nola", - "Nolan", "Noor", "Nora", "Norbert", - "Norberto", + "Nordin", "Norman", - "Norris", - "Obelix", "Octaaf", "Octavia", "Octavius", @@ -1671,16 +1444,12 @@ defmodule Faker.Person.Nl do "Omer", "Ophelia", "Orin", - "Orion", "Orlando", - "Orphelia", "Oscar", "Oswald", - "Oswaldo", "Otto", "Owen", "Pablo", - "Paco", "Pam", "Pamela", "Pan", @@ -1718,6 +1487,7 @@ defmodule Faker.Person.Nl do "Pieternel", "Pietje", "Pim", + "Pjotr", "Pod", "Poderik", "Poe", @@ -1725,7 +1495,6 @@ defmodule Faker.Person.Nl do "Pommelien", "Quentin", "Quincy", - "Quint", "Quinten", "Rachel", "Rachelle", @@ -1733,27 +1502,22 @@ defmodule Faker.Person.Nl do "Raf", "Rafaël", "Raffaël", - "Rahoul", "Raimond", "Ralf", "Ralph", "Ramiro", "Ramon", "Ramona", - "Rand", "Randal", "Randi", - "Raoul", - "Raphael", - "Raphaelle", - "Raquel", - "Rashad", + "Rani", + "Raphaël", + "Raphaëlla", "Raul", "Ray", "Raymond", "Raymundus", "Rebecca", - "Rebeka", "Regi", "Reginald", "Rein", @@ -1767,15 +1531,12 @@ defmodule Faker.Person.Nl do "Rens", "Reuben", "Rex", - "Rey", "Reymond", "Reynold", "Rhea", - "Rhianna", - "Rhoda", + "Ria", "Ricardo", "Richard", - "Rick", "Rickie", "Ricky", "Rico", @@ -1793,12 +1554,8 @@ defmodule Faker.Person.Nl do "Roberto", "Robin", "Robrecht", - "Robyn", "Rod", "Roderik", - "Rodger", - "Rodrick", - "Rodrigo", "Roel", "Roeland", "Roger", @@ -1815,24 +1572,18 @@ defmodule Faker.Person.Nl do "Roos", "Rosa", "Rosalie", - "Rosanna", - "Rosario", - "Rose", "Roselien", "Roselinde", - "Roselyn", "Rosemarie", - "Rosemary", "Rosemond", - "Rosetta", "Rosie", "Roxane", "Roxanne", "Roy", "Royce", - "Rozella", + "Rozanne", + "Rozemarijn", "Ruben", - "Rubie", "Ruby", "Rudolf", "Rudolph", @@ -1845,11 +1596,7 @@ defmodule Faker.Person.Nl do "Sabina", "Sabine", "Sabrina", - "Sadie", - "Safir", - "Sallie", "Sally", - "Salma", "Sam", "Samanta", "Samantha", @@ -1870,16 +1617,14 @@ defmodule Faker.Person.Nl do "Sasha", "Saskia", "Sean", - "Sebastian", + "Seb", "Sebastiaan", - "Sedrick", "Selena", "Sem", "Sep", "Seppe", "Serena", "Seth", - "Shakira", "Shana", "Shanelle", "Shania", @@ -1930,7 +1675,6 @@ defmodule Faker.Person.Nl do "Stevie", "Stijn", "Stoffel", - "Sundert", "Sus", "Susan", "Susie", @@ -1938,20 +1682,13 @@ defmodule Faker.Person.Nl do "Suzan", "Suzanne", "Sven", - "Syd", - "Sygrid", "Sylla", "Sylvester", "Sylvia", "Sylvie", - "Tad", - "Talia", - "Talon", "Tamara", - "Tamia", - "Tania", + "Tanja", "Tanya", - "Tara", "Tatjana", "Tea", "Ted", @@ -1960,7 +1697,6 @@ defmodule Faker.Person.Nl do "Teresa", "Terry", "Tessa", - "Tessie", "Teun", "Teunis", "Thea", @@ -2018,12 +1754,12 @@ defmodule Faker.Person.Nl do "Tristan", "Troy", "Truus", - "Trystan", + "Tuur", "Twan", "Tyler", + "Udo", "Ulrik", "Uma", - "Urban", "Urbain", "Urbanus", "Uriël", @@ -2036,15 +1772,9 @@ defmodule Faker.Person.Nl do "Veerle", "Velma", "Vera", - "Vern", - "Verna", - "Verner", - "Vernice", - "Vernie", - "Vernon", "Veronica", + "Veroniek", "Veronique", - "Vesta", "Vic", "Vickie", "Vicky", @@ -2053,12 +1783,10 @@ defmodule Faker.Person.Nl do "Vidal", "Viktor", "Vincent", - "Vincenzo", "Vinnie", "Viola", "Violet", "Violette", - "Virginia", "Virginie", "Vita", "Vito", @@ -2068,7 +1796,6 @@ defmodule Faker.Person.Nl do "Vivianne", "Vivien", "Vivienne", - "Vladimir", "Waldo", "Walter", "Wan", @@ -2106,10 +1833,11 @@ defmodule Faker.Person.Nl do "Wouter", "Xander", "Xavier", - "Xzavier", + "Yamina", "Yannick", "Yasmina", "Yasmine", + "Yenthe", "Yoeri", "Yolanda", "Yoshua", @@ -2117,17 +1845,11 @@ defmodule Faker.Person.Nl do "Yves", "Yvette", "Yvonne", - "Zach", "Zachariah", "Zacharie", - "Zack", "Zackie", "Zander", "Zeger", - "Zelma", - "Zena", - "Zetta", - "Zigurt", "Zita", "Zoë", "Zoey", @@ -2140,20 +1862,35 @@ defmodule Faker.Person.Nl do ## Examples - iex> Faker.Person.Nl.last_name() + iex> Faker.Person.NlBe.last_name() "De Haene" - iex> Faker.Person.Nl.last_name() - "Heynen" - iex> Faker.Person.Nl.last_name() - "Peirs" - iex> Faker.Person.Nl.last_name() - "Laanstra" + iex> Faker.Person.NlBe.last_name() + "Heijmans" + iex> Faker.Person.NlBe.last_name() + "Speet" + iex> Faker.Person.NlBe.last_name() + "Neggers" """ @spec last_name() :: String.t() def last_name, do: last_name(Faker.random_between(0, 9)) defp last_name(0), do: "De #{last_name_after_de()}" defp last_name(1), do: "Van #{last_name_after_van()}" + # last name composed of last names of both parents (uncommon) + defp last_name(2) do + case Faker.random_between(0, 24) do + # explicit params used here to prevent recursion + 0 -> "#{last_name(0)} #{last_name(1)}" + 1 -> "#{last_name(0)} #{last_name(3)}" + 2 -> "#{last_name(1)} #{last_name(0)}" + 3 -> "#{last_name(1)} #{last_name(3)}" + 4 -> "#{last_name(3)} #{last_name(0)}" + 5 -> "#{last_name(3)} #{last_name(1)}" + 6 -> "#{last_name(3)} #{last_name(3)}" + _ -> last_name_standalone() + end + end + defp last_name(n) when is_integer(n) do last_name_standalone() end @@ -2163,14 +1900,14 @@ defmodule Faker.Person.Nl do ## Examples - iex> Faker.Person.Nl.last_name_standalone() - "Schurink" - iex> Faker.Person.Nl.last_name_standalone() - "Strobbe" - iex> Faker.Person.Nl.last_name_standalone() - "Reunes" - iex> Faker.Person.Nl.last_name_standalone() - "Heynen" + iex> Faker.Person.NlBe.last_name_standalone() + "Thomassen" + iex> Faker.Person.NlBe.last_name_standalone() + "Sorgeloos" + iex> Faker.Person.NlBe.last_name_standalone() + "Rikken" + iex> Faker.Person.NlBe.last_name_standalone() + "Heijmans" """ @spec last_name_standalone() :: String.t() sampler(:last_name_standalone, [ @@ -2438,9 +2175,9 @@ defmodule Faker.Person.Nl do "Dijkstra", "Dillen", "Dhaenens", - "Dhooghe", - "Dhollander", - "Dhondt", + "D'hooghe", + "D'hollander", + "D'hondt", "Dobbelaere", "Dobbeleer", "Dockx", @@ -3043,7 +2780,6 @@ defmodule Faker.Person.Nl do "Ogink", "Oisterwijk", "Ojeda", - "Okamura", "Okke", "Okkema", "Okken", @@ -3299,15 +3035,11 @@ defmodule Faker.Person.Nl do "Renard", "Renders", "Reniers", - "Renkema", "Rens", "Rensen", "Repkes", "Repko", "Resink", - "Resnik", - "Retera", - "Reterink", "Reumers", "Reunes", "Reurink", @@ -3528,12 +3260,8 @@ defmodule Faker.Person.Nl do "Sinnaeve", "Sinnesael", "Sintobin", - "Siobhan", - "Sioris", "Sirks", "Sistermans", - "Siszka", - "Siwek", "Slabbinck", "Slaets", "Slagter", @@ -3587,7 +3315,6 @@ defmodule Faker.Person.Nl do "Snoekx", "Snuif", "Snuverink", - "Snyder", "Sobry", "Soenen", "Soenens", @@ -3648,7 +3375,7 @@ defmodule Faker.Person.Nl do "Steen", "Steenackers", "Steenhoudt", - "Steensels", + "Steensens", "Stiers", "Stijns", "Stijven", @@ -3726,11 +3453,7 @@ defmodule Faker.Person.Nl do "Tempelaar", "Tempelaere", "Ten Brink", - "Ten Haaf", - "Ten Hoor", "Ten Hove", - "Ten Kate", - "Ten Tusscher", "Ten Woude", "Tenis", "Tennant", @@ -3739,10 +3462,7 @@ defmodule Faker.Person.Nl do "Ter Beek", "Ter Haar", "Ter Heide", - "Ter Horst", "Ter Vaart", - "Ter Voert", - "Ter Wierik", "Terlouw", "Termont", "Tersago", @@ -3798,10 +3518,14 @@ defmodule Faker.Person.Nl do "Tremblay", "Treutel", "Tromp", + "Tuerlinckx", "Turcotte", - "Turner", - "Ullrich", - "Uiterhoeven", + "Tuymans", + "Tuyttens", + "Uittenbogaart", + "Uyttebroeck", + "Uytterhaegen", + "Uytterhoeven", "Vanderhoeven", "Vandersand", "Vandervoort", @@ -3814,66 +3538,121 @@ defmodule Faker.Person.Nl do "Verbeke", "Verbeeck", "Verbeecke", + "Verbiest", + "Verbist", + "Verbruggen", + "Vercammen", + "Vercauteren", + "Vercruysse", "Verdonck", "Verdonk", + "Verduyn", + "Vereecke", + "Vereecken", + "Verellen", + "Verelst", + "Verfaillie", + "Vergouwen", + "Vergote", + "Verhaeghe", "Verhasselt", + "Verheyden", "Verhoeven", "Verkammen", - "Vermandel", "Vermandere", "Vermanderen", - "Verreweg", + "Vermeers", + "Vermeire", + "Vermeulen", + "Verniers", + "Vernimmen", + "Verpoorten", + "Verriest", + "Verschaeren", + "Verschooren", + "Verschooten", + "Verschraegen", + "Verschueren", "Verstichel", - "Verstichelt", "Verstichellen", + "Verstichelt", + "Vertenten", + "Vertier", + "Vertongen", + "Vertonghen", + "Verwaest", + "Verweij", + "Viaene", + "Vianen", + "Viets", "Vinck", "Vinke", "Visser", + "Vlaeminck", + "Vleugels", "Vliegers", - "Vondel", + "Voet", + "Vogels", + "Volckaert", + "Volders", "Vondels", "Vonk", - "Voppert", - "Vroom", + "Vranckx", + "Vranken", + "Vrijsen", + "Vrints", + "Vuerinckx", + "Vugts", + "Vuijsters", "Waals", "Waas", "Waels", "Waes", - "Walker", - "Walsh", - "Walter", + "Wallyn", + "Walravens", + "Walters", "Waremans", "Waters", - "Watsica", + "Watteeuw", "Weber", - "Wehner", - "Weimann", - "Weissnat", - "Welch", - "West", - "White", - "Wiegand", + "Weevers", + "Weijers", + "Wels", + "Wellens", + "Welvaert", + "Wesemael", + "Westerhuys", + "Weynants", + "Weyns", + "Wielandt", + "Wiels", + "Wijckmans", "Wilderman", "Wilders", "Williams", "Willems", "Willemsen", - "Windler", - "Wintheiser", - "Wisoky", - "Wisozk", - "Witting", - "Wiza", - "Wolf", + "Windmeijer", + "Winters", + "Wisse", + "Wissink", + "Witloof", + "Witteman", + "Woestyn", + "Wolters", "Wouters", - "Wuckert", - "Wunsch", - "Wyman", - "Zarkan", - "Zemlak", - "Ziemann", - "Zieme", - "Zundert" + "Wuytens", + "Wuyts", + "Wynants", + "Wyndaele", + "Ysebaert", + "Yserbyt", + "Ysewyn", + "Zaman", + "Zegers", + "Zieverink", + "Zijlmans", + "Zuidwijk", ]) @doc """ @@ -3881,13 +3660,13 @@ defmodule Faker.Person.Nl do ## Examples - iex> Faker.Person.Nl.last_name_after_de() + iex> Faker.Person.NlBe.last_name_after_de() "Saeger" - iex> Faker.Person.Nl.last_name_after_de() + iex> Faker.Person.NlBe.last_name_after_de() "Haene" - iex> Faker.Person.Nl.last_name_after_de() + iex> Faker.Person.NlBe.last_name_after_de() "Waele" - iex> Faker.Person.Nl.last_name_after_de() + iex> Faker.Person.NlBe.last_name_after_de() "Hert" """ @spec last_name_after_de() :: String.t() @@ -4151,13 +3930,13 @@ defmodule Faker.Person.Nl do ## Examples - iex> Faker.Person.Nl.last_name_after_van() + iex> Faker.Person.NlBe.last_name_after_van() "De Ven" - iex> Faker.Person.Nl.last_name_after_van() + iex> Faker.Person.NlBe.last_name_after_van() "Coillie" - iex> Faker.Person.Nl.last_name_after_van() + iex> Faker.Person.NlBe.last_name_after_van() "Sonsbeek" - iex> Faker.Person.Nl.last_name_after_van() + iex> Faker.Person.NlBe.last_name_after_van() "Tendeloo" """ @spec last_name_after_van() :: String.t() @@ -4592,43 +4371,4 @@ defmodule Faker.Person.Nl do "Zuuren", "Zwam" ]) - - - @doc """ - Returns a random prefix - - ## Examples - - iex> Faker.Person.Nl.prefix() - "Mr." - iex> Faker.Person.Nl.prefix() - "Dhr." - iex> Faker.Person.Nl.prefix() - "Mr." - iex> Faker.Person.Nl.prefix() - "Dhr." - """ - @spec prefix() :: String.t() - sampler(:prefix, [ - "Mr.", - "Mevr.", - "Dhr." - ]) - - @doc """ - Returns a random suffix - - ## Examples - - iex> Faker.Person.Nl.suffix() - "Jr." - iex> Faker.Person.Nl.suffix() - "Sr." - """ - @spec suffix() :: String.t() - sampler(:suffix, [ - "Jr.", - "Sr." - ]) - end diff --git a/test/faker/person_test.exs b/test/faker/person_test.exs index 41765cadd..e30f395a9 100644 --- a/test/faker/person_test.exs +++ b/test/faker/person_test.exs @@ -8,5 +8,5 @@ defmodule Faker.PersonTest do doctest Faker.Person.Hy doctest Faker.Person.It doctest Faker.Person.PtBr - doctest Faker.Person.Nl + doctest Faker.Person.NlBe end From b3eb10e1c540f65142738f4535f94240cd32596d Mon Sep 17 00:00:00 2001 From: Christof Verhoeven <6996874+ChristofVerhoeven@users.noreply.github.com> Date: Thu, 4 Apr 2024 12:25:15 +0200 Subject: [PATCH 06/10] changelog comment --- CHANGELOG.md | 1 + lib/faker/person/nl_be.ex | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c35d2c3e0..827d59ff9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ Change log itself follows [Keep a CHANGELOG](http://keepachangelog.com) format. ## Unreleased ### Added +- `Faker.Person.NlBe` flemish person faker [[@ChristofVerhoeven](https://github.com/ChristofVerhoeven)] ### Changed diff --git a/lib/faker/person/nl_be.ex b/lib/faker/person/nl_be.ex index 763a315bd..d94b0f667 100644 --- a/lib/faker/person/nl_be.ex +++ b/lib/faker/person/nl_be.ex @@ -3652,7 +3652,7 @@ defmodule Faker.Person.NlBe do "Zegers", "Zieverink", "Zijlmans", - "Zuidwijk", + "Zuidwijk" ]) @doc """ @@ -3922,7 +3922,7 @@ defmodule Faker.Person.NlBe do "Zoete", "Zutter", "Zwaan", - "Zwart", + "Zwart" ]) @doc """ From 3b3fc0b35d7990e7794ddf4670a21db97c3abaa8 Mon Sep 17 00:00:00 2001 From: Christof Verhoeven <6996874+ChristofVerhoeven@users.noreply.github.com> Date: Thu, 4 Apr 2024 12:44:41 +0200 Subject: [PATCH 07/10] sorting --- USAGE.md | 2 +- test/faker/person_test.exs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/USAGE.md b/USAGE.md index 90bc5a0f8..2e91228ba 100644 --- a/USAGE.md +++ b/USAGE.md @@ -93,8 +93,8 @@ - [Faker.Person.Fr](lib/faker/person/fr.ex) - [Faker.Person.Hy](lib/faker/person/hy.ex) - [Faker.Person.It](lib/faker/person/it.ex) -- [Faker.Person.PtBr](lib/faker/person/pt_br.ex) - [Faker.Person.NlBe](lib/faker/person/nl_be.ex) +- [Faker.Person.PtBr](lib/faker/person/pt_br.ex) - [Faker.Phone.EnUs](lib/faker/phone/en_us.ex) - [Faker.Phone.EnGb](lib/faker/phone/en_gb.ex) - [Faker.Phone.Hy](lib/faker/phone/hy.ex) diff --git a/test/faker/person_test.exs b/test/faker/person_test.exs index e30f395a9..2e470b1d8 100644 --- a/test/faker/person_test.exs +++ b/test/faker/person_test.exs @@ -7,6 +7,6 @@ defmodule Faker.PersonTest do doctest Faker.Person.Fr doctest Faker.Person.Hy doctest Faker.Person.It - doctest Faker.Person.PtBr doctest Faker.Person.NlBe + doctest Faker.Person.PtBr end From a779dc958b469e0197bd55888ca11f76d96ef0e7 Mon Sep 17 00:00:00 2001 From: Christof Verhoeven <6996874+ChristofVerhoeven@users.noreply.github.com> Date: Thu, 4 Apr 2024 14:30:37 +0200 Subject: [PATCH 08/10] fixes --- CHANGELOG.md | 6 +++--- USAGE.md | 4 ++-- test/faker/person_test.exs | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 15217f022..50d97b04c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,9 @@ Change log itself follows [Keep a CHANGELOG](http://keepachangelog.com) format. ### Added - `Faker.Person.NlBe` flemish person faker [[@ChristofVerhoeven](https://github.com/ChristofVerhoeven)] +- `Faker.Address.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] +- `Faker.Person.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] +- `Faker.Phone.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] ### Changed @@ -26,9 +29,6 @@ Change log itself follows [Keep a CHANGELOG](http://keepachangelog.com) format. ### Added - `Faker.Fruits.En` - add english fruits [[@KevinDaSilvaS](https://github.com/KevinDaSilvaS)] -- `Faker.Address.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] -- `Faker.Person.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] -- `Faker.Phone.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] ### Changed diff --git a/USAGE.md b/USAGE.md index 4d628f9c6..cfb739f34 100644 --- a/USAGE.md +++ b/USAGE.md @@ -93,10 +93,10 @@ - [Faker.Person.Es](lib/faker/person/es.ex) - [Faker.Person.Fr](lib/faker/person/fr.ex) - [Faker.Person.Hy](lib/faker/person/hy.ex) -- [Faker.Person.Nl](lib/faker/person/nl.ex) - [Faker.Person.It](lib/faker/person/it.ex) -- [Faker.Person.PtBr](lib/faker/person/pt_br.ex) +- [Faker.Person.Nl](lib/faker/person/nl.ex) - [Faker.Person.NlBe](lib/faker/person/nl_be.ex) +- [Faker.Person.PtBr](lib/faker/person/pt_br.ex) - [Faker.Phone.EnUs](lib/faker/phone/en_us.ex) - [Faker.Phone.EnGb](lib/faker/phone/en_gb.ex) - [Faker.Phone.Hy](lib/faker/phone/hy.ex) diff --git a/test/faker/person_test.exs b/test/faker/person_test.exs index b36ff0a9c..13bc2d292 100644 --- a/test/faker/person_test.exs +++ b/test/faker/person_test.exs @@ -8,6 +8,6 @@ defmodule Faker.PersonTest do doctest Faker.Person.Hy doctest Faker.Person.It doctest Faker.Person.Nl - doctest Faker.Person.PtBr doctest Faker.Person.NlBe + doctest Faker.Person.PtBr end From 618ed7a91b01ced1b3aab27af96ba12ebdcbe767 Mon Sep 17 00:00:00 2001 From: Michael van den Berg <5636940+MichaelVanDenBerg@users.noreply.github.com> Date: Fri, 16 Sep 2022 20:46:57 +0200 Subject: [PATCH 09/10] Add Dutch names, phone numbers and addresses fixes --- CHANGELOG.md | 3 + USAGE.md | 3 + lib/faker/address/nl.ex | 571 ++++++++++++++++++++++++++++++++++++ lib/faker/person/nl.ex | 418 ++++++++++++++++++++++++++ lib/faker/phone/nl.ex | 91 ++++++ test/faker/address_test.exs | 1 + test/faker/person_test.exs | 1 + test/faker/phone_test.exs | 1 + 8 files changed, 1089 insertions(+) create mode 100644 lib/faker/address/nl.ex create mode 100644 lib/faker/person/nl.ex create mode 100644 lib/faker/phone/nl.ex diff --git a/CHANGELOG.md b/CHANGELOG.md index 827d59ff9..50d97b04c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,9 @@ Change log itself follows [Keep a CHANGELOG](http://keepachangelog.com) format. ### Added - `Faker.Person.NlBe` flemish person faker [[@ChristofVerhoeven](https://github.com/ChristofVerhoeven)] +- `Faker.Address.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] +- `Faker.Person.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] +- `Faker.Phone.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] ### Changed diff --git a/USAGE.md b/USAGE.md index 2e91228ba..cfb739f34 100644 --- a/USAGE.md +++ b/USAGE.md @@ -5,6 +5,7 @@ - [Faker.Address.Es](lib/faker/address/es.ex) - [Faker.Address.Hy](lib/faker/address/hy.ex) - [Faker.Address.It](lib/faker/address/it.ex) +- [Faker.Address.Nl](lib/faker/address/nl.ex) - [Faker.Address.PtBr](lib/faker/address/pt_br.ex) - [Faker.Address.Ru](lib/faker/address/ru.ex) - [Faker.Airports](lib/faker/airports.ex) @@ -93,11 +94,13 @@ - [Faker.Person.Fr](lib/faker/person/fr.ex) - [Faker.Person.Hy](lib/faker/person/hy.ex) - [Faker.Person.It](lib/faker/person/it.ex) +- [Faker.Person.Nl](lib/faker/person/nl.ex) - [Faker.Person.NlBe](lib/faker/person/nl_be.ex) - [Faker.Person.PtBr](lib/faker/person/pt_br.ex) - [Faker.Phone.EnUs](lib/faker/phone/en_us.ex) - [Faker.Phone.EnGb](lib/faker/phone/en_gb.ex) - [Faker.Phone.Hy](lib/faker/phone/hy.ex) +- [Faker.Phone.Nl](lib/faker/phone/nl.ex) - [Faker.Phone.PtBr](lib/faker/phone/pt_br.ex) - [Faker.Pizza](lib/faker/pizza.ex) - [Faker.Pokemon](lib/faker/pokemon.ex) diff --git a/lib/faker/address/nl.ex b/lib/faker/address/nl.ex new file mode 100644 index 000000000..38296e1df --- /dev/null +++ b/lib/faker/address/nl.ex @@ -0,0 +1,571 @@ +defmodule Faker.Address.Nl do + import Faker, only: [sampler: 2] + + alias Faker.Person.Nl, as: Person + + @moduledoc """ + Functions for generating addresses in Dutch + """ + + @doc """ + Return a city name. + + ## Examples + + iex> Faker.Address.Nl.city() + "Katwijk aan Zee" + iex> Faker.Address.Nl.city() + "Wijk bij Duurstede" + iex> Faker.Address.Nl.city() + "Sliedrecht" + iex> Faker.Address.Nl.city() + "Amsterdam" + """ + @spec city() :: String.t() + sampler(:city, [ + "'s-Heerenberg", + "'s-Hertogenbosch", + "Acquoy", + "Alblasserdam", + "Alkmaar", + "Almere", + "Alphen aan den Rijn", + "Amersfoort", + "Amsterdam", + "Amsterdam", + "Anna Paulowna", + "Apeldoorn", + "Arnhem", + "Baarle-Nassau", + "Beesd", + "Bergen op Zoom", + "Breda", + "Brielle", + "Capelle aan den IJssel", + "Castricum", + "Coevoorden", + "Dalfsen", + "Delft", + "Den Haag", + "Den Helder", + "Deventer", + "Doetinchem", + "Dokkum", + "Dordrecht", + "Drachten", + "Ede", + "Eindhoven", + "Emmeloord", + "Emmen", + "Emmer-Compascuum", + "Enschede", + "Gasselterboerveenschemond", + "Geldermalsen", + "Goes", + "Gorinchem", + "Groesbeek", + "Groningen", + "Haarlem", + "Haarlemmermeer", + "Harderwijk", + "Hardinxveld-Giessendam", + "Heerhugowaard", + "Heerlen", + "Hendrik-Ido-Ambacht", + "Hengelo", + "Hilversum", + "Hoogeveen", + "IJmuiden", + "Kampen", + "Katwijk aan Zee", + "Landgraaf", + "Leerdam", + "Leeuwarden", + "Leiden", + "Lelystad", + "Maastricht", + "Meppel", + "Middelburg", + "Naarden", + "Nijkerk", + "Nijmegen", + "Oss", + "Papendrecht", + "Purmerend", + "Roermond", + "Roosendaal", + "Rotterdam", + "Rucphen", + "Ruigoord", + "Sleeuwijk", + "Sliedrecht", + "Sneek", + "Stadskanaal", + "Tilburg", + "Urk", + "Utrecht", + "Valkenburg", + "Veenendaal", + "Venlo", + "Vlaardingen", + "Vlissingen", + "Waalwijk", + "Wageningen", + "Westland", + "Wijk bij Duurstede", + "Wijngaarden", + "Winterswijk", + "Zaanstad", + "Zoetermeer", + "Zwijndrecht", + "Zwolle" + ]) + + @doc """ + Return street address. + + ## Examples + + iex> Faker.Address.Nl.street_address() + "Floortje van Voskade 67" + iex> Faker.Address.Nl.street_address() + "Kalver-erf 181" + iex> Faker.Address.Nl.street_address() + "Dorpkade 170" + iex> Faker.Address.Nl.street_address() + "Lingepark 23" + """ + @spec street_address() :: String.t() + def street_address do + "#{street_name()} #{house_number()}" + end + + @doc """ + Return street name. + + ## Examples + + iex> Faker.Address.Nl.street_name() + "Floortje van Voskade" + iex> Faker.Address.Nl.street_name() + "Rijnplein" + iex> Faker.Address.Nl.street_name() + "Sijmen Hoeklaan" + iex> Faker.Address.Nl.street_name() + "Annekesteeg" + """ + @spec street_name() :: String.t() + def street_name do + street_name(Faker.random_between(0, 9)) + end + + defp street_name(0), + do: "#{Person.first_name()} #{Person.tussenvoegsel()} #{Person.last_name()}#{street_suffix()}" + + defp street_name(1), do: "#{Person.first_name()} #{Person.last_name()}#{street_suffix()}" + defp street_name(2), do: "#{Person.first_name()}#{street_suffix()}" + defp street_name(3), do: "#{Person.last_name()}#{street_suffix()}" + + defp street_name(n) when is_integer(n) do + "#{street_prefix()}#{street_suffix()}" + end + + @doc """ + Return street prefix. + + ## Examples + + iex> Faker.Address.Nl.street_prefix() + "Vis" + iex> Faker.Address.Nl.street_prefix() + "School" + iex> Faker.Address.Nl.street_prefix() + "Hof" + iex> Faker.Address.Nl.street_prefix() + "Haven" + """ + @spec street_prefix() :: String.t() + sampler(:street_prefix, [ + "Aardappel", + "Dorp", + "Gasthuis", + "Graaf", + "Groen", + "Haven", + "Hof", + "IJssel", + "Kalver", + "Kerk", + "Konings", + "Lek", + "Linge", + "Maas", + "Molen", + "Nieuwe", + "Noorder", + "Oude", + "Parallel", + "Rijn", + "School", + "Vis", + "Voor", + "Waal", + "Wijn", + "Zand", + "Zuider" + ]) + + @doc """ + Return street suffix. + + ## Examples + + iex> Faker.Address.Nl.street_suffix() + "dijk" + iex> Faker.Address.Nl.street_suffix() + "-erf" + iex> Faker.Address.Nl.street_suffix() + "park" + iex> Faker.Address.Nl.street_suffix() + "markt" + """ + @spec street_suffix() :: String.t() + sampler(:street_suffix, [ + "dijk", + "-erf", + "kade", + "laan", + "markt", + "park", + "plein", + "steeg", + "straat", + "weg" + ]) + + @doc """ + Return random postcode. + + Dutch zip codes never start with a '0' and always end with two uppercase letters. + + ## Examples + + iex> Faker.Address.Nl.zip_code() + "2110 LR" + iex> Faker.Address.Nl.zip_code() + "8304 EA" + iex> Faker.Address.Nl.zip_code() + "9164 GD" + iex> Faker.Address.Nl.zip_code() + "2380 WZ" + """ + @spec zip_code() :: String.t() + def zip_code do + "#{Faker.random_between(1000, 9999)} ??" + |> Faker.format() + |> String.upcase() + end + + @doc """ + Return building number. + + But since we rarely use building numbers in the Netherlands, this will call 'Faker.Address.Nl.house_number()' instead. + """ + @spec building_number :: String.t() + def building_number, do: house_number() + + @doc """ + Return random house number. + + Dutch house numbers never start with a '0'. + + ## Examples + + iex> Faker.Address.Nl.house_number() + "211" + iex> Faker.Address.Nl.house_number() + "102" + iex> Faker.Address.Nl.house_number() + "136" + iex> Faker.Address.Nl.house_number() + "105" + """ + @spec house_number() :: String.t() + def house_number, do: "#{Faker.random_between(1, 300)}" + + @doc """ + Return a country name. + + Source: https://github.com/faker-ruby/faker + + ## Examples + + iex> Faker.Address.Nl.country() + "Zuidelijke Oceaan" + iex> Faker.Address.Nl.country() + "Sri Lanka" + iex> Faker.Address.Nl.country() + "Maldiven" + iex> Faker.Address.Nl.country() + "Macedonië" + """ + @spec country() :: String.t() + sampler(:country, [ + "Afghanistan", + "Akrotiri", + "Albanië", + "Algerije", + "Amerikaanse Maagdeneilanden", + "Amerikaans-Samoa", + "Andorra", + "Angola", + "Anguilla", + "Antarctica", + "Antigua en Barbuda", + "Noordelijke IJszee", + "Argentinië", + "Armenië", + "Aruba", + "Ashmore- en Cartiereilanden", + "Atlantische Oceaan", + "Australië", + "Azerbeidzjan", + "Bahama's", + "Bahrein", + "Bangladesh", + "Barbados", + "Belarus", + "België", + "Belize", + "Benin", + "Bermuda", + "Bhutan", + "Bolivië", + "Bosnië-Herzegovina", + "Botswana", + "Bouveteiland", + "Brazilië", + "Brits Indische Oceaanterritorium", + "Britse Maagdeneilanden", + "Brunei", + "Bulgarije", + "Burkina Faso", + "Burundi", + "Cambodja", + "Canada", + "Caymaneilanden", + "Centraal-Afrikaanse Republiek", + "Chili", + "China", + "Christmaseiland", + "Clipperton", + "Cocoseilanden", + "Colombia", + "Comoren (Unie)", + "Congo (Democratische Republiek)", + "Congo (Volksrepubliek)", + "Cook", + "Coral Sea Islands", + "Costa Rica", + "Cuba", + "Cyprus", + "Denemarken", + "Dhekelia", + "Djibouti", + "Dominica", + "Dominicaanse Republiek", + "Duitsland", + "Ecuador", + "Egypte", + "El Salvador", + "Equatoriaal-Guinea", + "Eritrea", + "Estland", + "Ethiopië", + "Europese Unie", + "Falkland", + "Faeröer", + "Fiji", + "Filipijnen", + "Finland", + "Frankrijk", + "Frans-Polynesië", + "Franse Zuidelijke en Antarctische Gebieden", + "Gabon", + "Gambia", + "Gaza Strip", + "Georgië", + "Ghana", + "Gibraltar", + "Grenada", + "Griekenland", + "Groenland", + "Guam", + "Guatemala", + "Guernsey", + "Guinea", + "Guinee-Bissau", + "Guyana", + "Haïti", + "Heard en McDonaldeilanden", + "Heilige Stoel", + "Honduras", + "Hongarije", + "Hongkong", + "Ierland", + "IJsland", + "India", + "Indian Ocean", + "Indonesië", + "Irak", + "Iran", + "Isle of Man", + "Israël", + "Italië", + "Ivoorkust", + "Jamaica", + "Jan Mayen", + "Japan", + "Jemen", + "Jersey", + "Jordanië", + "Kaapverdië", + "Kameroen", + "Kazachstan", + "Kenia", + "Kirgizstan", + "Kiribati", + "Koeweit", + "Kroatië", + "Laos", + "Lesotho", + "Letland", + "Libanon", + "Liberia", + "Libië", + "Liechtenstein", + "Litouwen", + "Luxemburg", + "Macao", + "Macedonië", + "Madagaskar", + "Malawi", + "Maldiven", + "Maleisië", + "Mali", + "Malta", + "Marokko", + "Marshalleilanden", + "Mauritanië", + "Mauritius", + "Mayotte", + "Mexico", + "Micronesia, Federale Staten van", + "Moldavië", + "Monaco", + "Mongolië", + "Montenegro", + "Montserrat", + "Mozambique", + "Myanmar", + "Namibië", + "Nauru", + "Navassa", + "Nederland", + "Nederlandse Antillen", + "Nepal", + "Ngwane", + "Nicaragua", + "Nieuw-Caledonië", + "Nieuw-Zeeland", + "Niger", + "Nigeria", + "Niue", + "Noordelijke Marianen", + "Noord-Korea", + "Noorwegen", + "Norfolk (eiland)", + "Oekraïne", + "Oezbekistan", + "Oman", + "Oostenrijk", + "Grote Oceaan", + "Pakistan", + "Palau", + "Panama", + "Papoea-Nieuw-Guinea", + "Paracel Islands", + "Paraguay", + "Peru", + "Pitcairn", + "Polen", + "Portugal", + "Puerto Rico", + "Qatar", + "Roemenië", + "Rusland", + "Rwanda", + "Saint Helena", + "Saint Lucia", + "Saint Vincent en de Grenadines", + "Saint-Pierre en Miquelon", + "Salomon", + "Samoa", + "San Marino", + "São Tomé en Principe", + "Saudi-Arabië", + "Senegal", + "Servië", + "Seychellen", + "Sierra Leone", + "Singapore", + "Sint-Kitts en Nevis", + "Slovenië", + "Slowakije", + "Soedan", + "Somalië", + "South Georgia and the South Sandwich Islands", + "Zuidelijke Oceaan", + "Spanje", + "Spratly Islands", + "Sri Lanka", + "Suriname", + "Svalbard", + "Syrië", + "Tadzjikistan", + "Taiwan", + "Tanzania", + "Thailand", + "Timor Leste", + "Togo", + "Tokelau", + "Tonga", + "Trinidad en Tobago", + "Tsjaad", + "Tsjechië", + "Tunesië", + "Turkije", + "Turkmenistan", + "Turks-en Caicoseilanden", + "Tuvalu", + "Uganda", + "Uruguay", + "Vanuatu", + "Venezuela", + "Verenigd Koninkrijk", + "Verenigde Arabische Emiraten", + "Verenigde Staten van Amerika", + "Vietnam", + "Wake (eiland)", + "Wallis en Futuna", + "Wereld", + "Westelijke Jordaanoever", + "Westelijke Sahara", + "Zambia", + "Zimbabwe", + "Zuid-Afrika", + "Zuid-Korea", + "Zweden", + "Zwitserland" + ]) +end diff --git a/lib/faker/person/nl.ex b/lib/faker/person/nl.ex new file mode 100644 index 000000000..70aa015af --- /dev/null +++ b/lib/faker/person/nl.ex @@ -0,0 +1,418 @@ +defmodule Faker.Person.Nl do + import Faker, only: [sampler: 2] + + @moduledoc """ + Functions for name data in Dutch + """ + + @doc """ + Returns a complete name (may include a suffix/prefix or both) + + ## Examples + iex> Faker.Person.Nl.name() + "Floortje van Vos" + iex> Faker.Person.Nl.name() + "Beatrix van de Klein" + iex> Faker.Person.Nl.name() + "Sijmen Hoek" + iex> Faker.Person.Nl.name() + "Theo Brouwer" + """ + @spec name() :: String.t() + def name, do: name(Faker.random_between(0, 15)) + defp name(0), do: "#{prefix()} #{first_name()} #{tussenvoegsel()} #{last_name()} #{suffix()}" + defp name(1), do: "#{prefix()} #{first_name()} #{last_name()} #{suffix()}" + defp name(2), do: "#{first_name()} #{tussenvoegsel()} #{last_name()} #{suffix()}" + defp name(3), do: "#{first_name()} #{last_name()} #{suffix()}" + + defp name(n) when is_integer(n) and n < 9, + do: "#{first_name()} #{tussenvoegsel()} #{last_name()}" + + defp name(n) when is_integer(n) do + "#{first_name()} #{last_name()}" + end + + @doc """ + Returns a random first name + + ## Examples + + iex> Faker.Person.Nl.first_name() + "Adriaan" + iex> Faker.Person.Nl.first_name() + "Floortje" + iex> Faker.Person.Nl.first_name() + "Bas" + iex> Faker.Person.Nl.first_name() + "Sietske" + """ + @spec first_name() :: String.t() + sampler(:first_name, [ + "Adriaan", + "Amber", + "Anna", + "Anne", + "Anneke", + "Annefleur", + "Annelies", + "Annemiek", + "Anouk", + "Arnoud", + "Bas", + "Beatrix", + "Benjamin", + "Benthe", + "Boudewijn", + "Bram", + "Britt", + "Carlijn", + "Carolien", + "Chantal", + "Charlotte", + "Christine", + "Claire", + "Cor", + "Cornelia", + "Cornelis", + "Daan", + "Daniël", + "David", + "Diederik", + "Dick", + "Dirk", + "Doutzen", + "Egbert-Jan", + "Emma", + "Esmee", + "Eva", + "Femke", + "Finn", + "Fleur", + "Floor", + "Floortje", + "Floris", + "Froukje", + "Gerard", + "Gerben", + "Gerrit", + "Hendrik", + "Hans", + "Henk-Jan", + "Hidde", + "Iris", + "Isa", + "Jan", + "Janna", + "Janneke", + "Jasmijn", + "Jasper", + "Jayden", + "Jesse", + "Jetske", + "Johannes", + "Jolanda", + "Joop", + "Joost", + "Julia", + "Julian", + "Karel", + "Karlijn", + "Kees", + "Kevin", + "Koen", + "Lars", + "Laurentine", + "Levi", + "Lia", + "Lieke", + "Lieve", + "Lisa", + "Lisanne", + "Lisette", + "Liza", + "Lodewijk", + "Lotte", + "Lucas", + "Luuk", + "Maartje", + "Madelief", + "Maikel", + "Maria", + "Marie-Claire", + "Martine", + "Maud", + "Maurits", + "Max", + "Merel", + "Michelle", + "Mike", + "Milan", + "Mohamed", + "Nathalie", + "Nick", + "Nicolaas", + "Niels", + "Nienke", + "Noa", + "Pascalle", + "Paul", + "Pien", + "Piet", + "Pieter", + "Pim", + "Reinier", + "Renske", + "Ria", + "Rianne", + "Rick", + "Robbert", + "Robert-Jan", + "Roderick", + "Ronald", + "Roos", + "Rozemarijn", + "Ruben", + "Sander", + "Sandra", + "Sanne", + "Sebastiaan", + "Sem", + "Sietske", + "Sijmen", + "Sjoukje", + "Sophie", + "Sterre", + "Stijn", + "Sven", + "Tess", + "Theo", + "Thijs", + "Thomas", + "Tim", + "Tineke", + "Tom", + "Tooske", + "Twan", + "Victor", + "Vincent", + "Viviènne", + "Vlinder", + "Walram", + "Wilhelmina", + "Willem", + "Willemijn", + "Yinthe", + "Zwaantje" + ]) + + @doc """ + Returns a random tussenvoegsel + + ## Examples + + iex> Faker.Person.Nl.tussenvoegsel() + "van der" + iex> Faker.Person.Nl.tussenvoegsel() + "den" + iex> Faker.Person.Nl.tussenvoegsel() + "van" + iex> Faker.Person.Nl.tussenvoegsel() + "de" + """ + @spec tussenvoegsel() :: String.t() + sampler(:tussenvoegsel, [ + "de", + "den", + "ter", + "van", + "van de", + "van den", + "van der", + "van 't" + ]) + + @doc """ + Returns a random last name + + ## Examples + + iex> Faker.Person.Nl.last_name() + "Vliet" + iex> Faker.Person.Nl.last_name() + "Willems" + iex> Faker.Person.Nl.last_name() + "Hond" + iex> Faker.Person.Nl.last_name() + "Vos" + """ + @spec last_name() :: String.t() + sampler(:last_name, [ + "Aalbersberg", + "Aartsen", + "Achteren", + "Bakker", + "Beek", + "Beekhuis", + "Besseling", + "Berg", + "Bergen", + "Bergh", + "Boer", + "Boogaard", + "Boom", + "Bos", + "Bosch", + "Boudewijn", + "Brink", + "Broeders", + "Broek", + "Brouwer", + "Bruin", + "Buijtenhek", + "Dam", + "Dekker", + "Dijk", + "Dijkstra", + "Driel", + "Driessen", + "Ebbenhorst", + "Ellemeet", + "Gelderland", + "Genderen", + "Giersbergen", + "Graaf", + "Groot", + "Haan", + "Hendriks", + "Heuvel", + "Hoek", + "Hond", + "Hoppenbrouwer", + "Houwelingen", + "Huijbrechts", + "Huisman", + "IJzendoorn", + "Jacobs", + "Jansen", + "Janssen", + "Jong", + "Keizer", + "Klein", + "Kok", + "Koning", + "Kortekaas", + "Koster", + "Kroes", + "Kruijthoff", + "Leeuwen", + "Leeuwenburg", + "Lelivelt", + "Linden", + "Maas", + "Marijnissen", + "Markenstein", + "Mastenbroek", + "Meer", + "Meersbergen", + "Meijer", + "Meulenberg", + "Molenaar", + "Mulder", + "Naaktgeboren", + "Nijland", + "Oldenbarneveld", + "Oosterhout", + "Paulusma", + "Peters", + "Pijnenburg", + "Poelman", + "Ravenhorst", + "Ridder", + "Rijn", + "Ruiter", + "Rutte", + "Schaapstra", + "Schilder", + "Schimmelpenninck", + "Schouten", + "Simons", + "Singh", + "Smit", + "Smits", + "Spijkerman", + "Stellingwerff", + "Stichting", + "Stokvis", + "Tan", + "Timmermans", + "Tjeerdsma", + "Vaatstra", + "Veen", + "Ven", + "Vermeulen", + "Vis", + "Visser", + "Vliet", + "Voorst tot Voorst", + "Vos", + "Vries", + "Waalwijk", + "Westerling", + "Wietmarschen", + "Wal", + "Willems", + "Willemstein", + "Winter", + "Wit", + "Witteman", + "Yilmaz", + "Zanten", + "Zee", + "Zwijnenburg", + "Zwolle" + ]) + + @doc """ + Returns a random prefix + + ## Examples + + iex> Faker.Person.Nl.prefix() + "Dhr." + iex> Faker.Person.Nl.prefix() + "Mevr." + iex> Faker.Person.Nl.prefix() + "Dhr." + iex> Faker.Person.Nl.prefix() + "Drs." + """ + @spec prefix() :: String.t() + sampler(:prefix, [ + "Dhr.", + "Mevr.", + "Mr.", + "Ing.", + "Drs." + ]) + + @doc """ + Returns a random suffix + + ## Examples + + iex> Faker.Person.Nl.suffix() + "Jr." + iex> Faker.Person.Nl.suffix() + "PhD" + iex> Faker.Person.Nl.suffix() + "Jr." + iex> Faker.Person.Nl.suffix() + "PhD" + """ + @spec suffix() :: String.t() + sampler(:suffix, [ + "Jr.", + "Sr.", + "PhD" + ]) +end diff --git a/lib/faker/phone/nl.ex b/lib/faker/phone/nl.ex new file mode 100644 index 000000000..e70244d89 --- /dev/null +++ b/lib/faker/phone/nl.ex @@ -0,0 +1,91 @@ +defmodule Faker.Phone.Nl do + import Faker, only: [samplerp: 2] + + @moduledoc """ + Functions for generating phone related data for the Netherlands + """ + + @doc """ + Returns a random phone number. + + ## Examples + + iex> Faker.Phone.Nl.number() + "0495542646" + iex> Faker.Phone.Nl.number() + "0683297052" + iex> Faker.Phone.Nl.number() + "0031670203032" + iex> Faker.Phone.Nl.number() + "0707337603" + """ + + @spec number() :: String.t() + def number do + if Faker.random_between(0, 1) == 0 do + landline_number() + else + cell_number() + end + end + + samplerp(:landline_number_format, [ + "010#######", + "020#######", + "024#######", + "0342######", + "038#######", + "0495######", + "050#######", + "070#######", + "078#######", + "085#######", + "088#######", + "003110#######" + ]) + + @doc """ + Returns a random landline phone number + + ## Examples + + iex> Faker.Phone.Nl.landline_number() + "0501542646" + iex> Faker.Phone.Nl.landline_number() + "0342083297" + iex> Faker.Phone.Nl.landline_number() + "0505235702" + iex> Faker.Phone.Nl.landline_number() + "0883032097" + """ + + @spec landline_number() :: String.t() + def landline_number do + Faker.format(landline_number_format()) + end + + samplerp(:cell_number_format, [ + "06########", + "00316########" + ]) + + @doc """ + Returns a random cell phone number + + ## Examples + + iex> Faker.Phone.Nl.cell_number() + "0615426461" + iex> Faker.Phone.Nl.cell_number() + "0683297052" + iex> Faker.Phone.Nl.cell_number() + "0031657020303" + iex> Faker.Phone.Nl.cell_number() + "0609733760" + """ + + @spec cell_number() :: String.t() + def cell_number do + Faker.format(cell_number_format()) + end +end diff --git a/test/faker/address_test.exs b/test/faker/address_test.exs index dec47b551..cf9f2181d 100644 --- a/test/faker/address_test.exs +++ b/test/faker/address_test.exs @@ -6,6 +6,7 @@ defmodule Faker.AddressTest do doctest Faker.Address.Es doctest Faker.Address.Hy doctest Faker.Address.It + doctest Faker.Address.Nl doctest Faker.Address.PtBr doctest Faker.Address.Ru end diff --git a/test/faker/person_test.exs b/test/faker/person_test.exs index 2e470b1d8..13bc2d292 100644 --- a/test/faker/person_test.exs +++ b/test/faker/person_test.exs @@ -7,6 +7,7 @@ defmodule Faker.PersonTest do doctest Faker.Person.Fr doctest Faker.Person.Hy doctest Faker.Person.It + doctest Faker.Person.Nl doctest Faker.Person.NlBe doctest Faker.Person.PtBr end diff --git a/test/faker/phone_test.exs b/test/faker/phone_test.exs index b52949916..aeb1f610d 100644 --- a/test/faker/phone_test.exs +++ b/test/faker/phone_test.exs @@ -4,5 +4,6 @@ defmodule Faker.PhoneTest do doctest Faker.Phone.EnGb doctest Faker.Phone.EnUs doctest Faker.Phone.Hy + doctest Faker.Phone.Nl doctest Faker.Phone.PtBr end From 23c9bc208d2b6cf48fd819b924e413028d9f2564 Mon Sep 17 00:00:00 2001 From: Christof Verhoeven <6996874+ChristofVerhoeven@users.noreply.github.com> Date: Tue, 9 Apr 2024 18:54:36 +0200 Subject: [PATCH 10/10] flemish address faker --- CHANGELOG.md | 1 + USAGE.md | 1 + lib/faker/address/nl_be.ex | 549 ++++++++++++++++++++++++++++++++++++ test/faker/address_test.exs | 1 + 4 files changed, 552 insertions(+) create mode 100644 lib/faker/address/nl_be.ex diff --git a/CHANGELOG.md b/CHANGELOG.md index 50d97b04c..57c6058a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ Change log itself follows [Keep a CHANGELOG](http://keepachangelog.com) format. ## Unreleased ### Added +- `Faker.Address.NlBe` flemish address faker [[@ChristofVerhoeven](https://github.com/ChristofVerhoeven)] - `Faker.Person.NlBe` flemish person faker [[@ChristofVerhoeven](https://github.com/ChristofVerhoeven)] - `Faker.Address.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] - `Faker.Person.Nl` [[@MichaelVanDenBerg](https://github.com/MichaelVanDenBerg)] diff --git a/USAGE.md b/USAGE.md index cfb739f34..d78e23e6b 100644 --- a/USAGE.md +++ b/USAGE.md @@ -6,6 +6,7 @@ - [Faker.Address.Hy](lib/faker/address/hy.ex) - [Faker.Address.It](lib/faker/address/it.ex) - [Faker.Address.Nl](lib/faker/address/nl.ex) +- [Faker.Address.NlBe](lib/faker/address/nl_be.ex) - [Faker.Address.PtBr](lib/faker/address/pt_br.ex) - [Faker.Address.Ru](lib/faker/address/ru.ex) - [Faker.Airports](lib/faker/airports.ex) diff --git a/lib/faker/address/nl_be.ex b/lib/faker/address/nl_be.ex new file mode 100644 index 000000000..67d965c24 --- /dev/null +++ b/lib/faker/address/nl_be.ex @@ -0,0 +1,549 @@ +defmodule Faker.Address.NlBe do + import Faker, only: [sampler: 2] + + alias Faker.Person.NlBe, as: Person + + @moduledoc """ + Functions for generating addresses and cities in Flemish + """ + + @consonants ~c"bcdfghjklmnprstvw" + defp consonant do + char = Enum.at(@consonants, Faker.random_between(0, Enum.count(@consonants) - 1)) + to_string([char]) + end + + @culled_consonants ~c"bdfklmnprst" + defp culled_consonant do + char = + Enum.at(@culled_consonants, Faker.random_between(0, Enum.count(@culled_consonants) - 1)) + + to_string([char]) + end + + @vowels ~c"aeiou" + defp vowel do + char = Enum.at(@vowels, Faker.random_between(0, Enum.count(@vowels) - 1)) + to_string([char]) + end + + @doc """ + Return a city name. + + ## Examples + + iex> Faker.Address.NlBe.city() + "Cennelede" + iex> Faker.Address.NlBe.city() + "Tussenaken" + iex> Faker.Address.NlBe.city() + "Fobbelloon" + iex> Faker.Address.NlBe.city() + "Bakkelbergen" + """ + def city() do + start = city_prefix() + "#{start}#{city_suffix(start)}" + end + + defp city_prefix() do + String.capitalize("#{consonant()}#{vowel()}#{culled_consonant()}") + end + + defp city_suffix(city_start) do + last_letter = String.last(city_start) + + case Faker.random_between(0, 5) do + 0 -> "#{last_letter}e" + 1 -> "#{last_letter}el#{city_suffix_consonant()}" + 2 -> "#{last_letter}el#{city_suffix_vowel()}" + 3 -> "#{last_letter}en#{city_suffix_vowel()}" + 4 -> "#{last_letter}er#{city_suffix_consonant()}" + _ -> city_suffix_consonant() + end + end + + @doc """ + Return a city suffix starting with a consonant + + ## Examples + + iex> Faker.Address.NlBe.city_suffix_consonant() + "leeuw" + iex> Faker.Address.NlBe.city_suffix_consonant() + "muide" + iex> Faker.Address.NlBe.city_suffix_consonant() + "loon" + iex> Faker.Address.NlBe.city_suffix_consonant() + "pem" + """ + @spec city_suffix_consonant() :: String.t() + sampler(:city_suffix_consonant, [ + "berge", + "bergen", + "bode", + "burg", + "gem", + "hout", + "leeuw", + "loon", + "monde", + "muide", + "munster", + "pen", + "pem", + "poort" + ]) + + @doc """ + Return a city suffix starting with a vowel + + ## Examples + + iex> Faker.Address.NlBe.city_suffix_vowel() + "aken" + iex> Faker.Address.NlBe.city_suffix_vowel() + "are" + iex> Faker.Address.NlBe.city_suffix_vowel() + "em" + iex> Faker.Address.NlBe.city_suffix_vowel() + "en" + """ + @spec city_suffix_vowel() :: String.t() + sampler(:city_suffix_vowel, [ + "aken", + "are", + "ede", + "ene", + "en", + "em", + "egen", + "egem", + "ingen", + "oppem" + ]) + + @doc """ + Return street address. + + ## Examples + + iex> Faker.Address.NlBe.street_address() + "Pastoor C. Van Weydelaan 267 Bus 12" + iex> Faker.Address.NlBe.street_address() + "Akkerhof 170" + iex> Faker.Address.NlBe.street_address() + "Stacey Santensstraat 128" + iex> Faker.Address.NlBe.street_address() + "Sint-Omerstraat 201" + """ + @spec street_address() :: String.t() + def street_address, do: street_address(Faker.random_between(0, 16)) + + defp street_address(1) do + "#{street_name()} #{house_number()} Bus #{Faker.random_between(1, 16)}" + end + + defp street_address(2) do + "#{street_name()} #{house_number()} A#{Faker.random_between(1, 8)}" + end + + defp street_address(_) do + "#{street_name()} #{house_number()}" + end + + @doc """ + Return street name. + + ## Examples + + iex> Faker.Address.NlBe.street_name() + "Maxime Heijmanslaan" + iex> Faker.Address.NlBe.street_name() + "Casinoplein" + iex> Faker.Address.NlBe.street_name() + "Groentenmarkt" + iex> Faker.Address.NlBe.street_name() + "Jozefina Beekmansstraat" + """ + @spec street_name() :: String.t() + def street_name do + street_name(Faker.random_between(0, 9)) + end + + defp street_name(0), + do: "#{Person.first_name()} #{last_name_for_street_names()}#{street_suffix_common()}" + + defp street_name(1), + do: + "#{street_person_prefix()} #{String.capitalize(Faker.format("?"))}. #{last_name_for_street_names()}#{street_suffix_common()}" + + defp street_name(2), do: "Sint-#{Person.first_name()}#{street_suffix_common()}" + defp street_name(3), do: "#{street_prefix()} #{street_name_prefix()}#{street_suffix_common()}" + defp street_name(4), do: "#{building()}#{street_suffix_common()}" + defp street_name(5), do: "#{building()}#{street_suffix_common()}" + defp street_name(6), do: place() + + defp street_name(n) when is_integer(n) do + "#{street_name_prefix()}#{street_suffix()}" + end + + # Avoiding composed last names here + defp last_name_for_street_names(), do: last_name_for_street_names(Faker.random_between(0, 3)) + defp last_name_for_street_names(0), do: "Van #{Person.last_name_after_van()}" + defp last_name_for_street_names(1), do: "De #{Person.last_name_after_de()}" + defp last_name_for_street_names(_), do: Person.last_name_standalone() + + @doc """ + Return street prefix. + + ## Examples + + iex> Faker.Address.NlBe.street_prefix() + "Nieuwe" + iex> Faker.Address.NlBe.street_prefix() + "Korte" + iex> Faker.Address.NlBe.street_prefix() + "Hoge" + iex> Faker.Address.NlBe.street_prefix() + "Lage" + """ + @spec street_prefix() :: String.t() + sampler(:street_prefix, [ + "Nieuwe", + "Oude", + "Lage", + "Hoge", + "Lange", + "Korte" + ]) + + @doc """ + Return street prefix for streets named after famous persons. + + ## Examples + + iex> Faker.Address.NlBe.street_person_prefix() + "Generaal" + iex> Faker.Address.NlBe.street_person_prefix() + "Professor" + iex> Faker.Address.NlBe.street_person_prefix() + "Pastoor" + iex> Faker.Address.NlBe.street_person_prefix() + "Heilige" + """ + @spec street_person_prefix() :: String.t() + sampler(:street_person_prefix, [ + "Generaal", + "Graaf", + "Heilige", + "Pastoor", + "Pater", + "Professor" + ]) + + @doc """ + Return street name prefix. + + ## Examples + + iex> Faker.Address.NlBe.street_name_prefix() + "Fazant" + iex> Faker.Address.NlBe.street_name_prefix() + "Fakkel" + iex> Faker.Address.NlBe.street_name_prefix() + "Ikarus" + iex> Faker.Address.NlBe.street_name_prefix() + "Beuk" + """ + @spec street_name_prefix() :: String.t() + sampler(:street_name_prefix, [ + "Adelaar", + "Akker", + "Aster", + "Begijn", + "Berg", + "Beuk", + "Blok", + "Bok", + "Bos", + "Camille", + "Ceder", + "Citroen", + "Dam", + "Denker", + "Distel", + "Donker", + "Eekberg", + "Eik", + "Esdoorn", + "Ezel", + "Fakkel", + "Fazant", + "Floraliën", + "Frankrijk", + "Frikkandel", + "Gendarmerie", + "Hagen", + "Heir", + "Heren", + "Hoofd", + "Huidevetters", + "Ieper", + "Ierland", + "Ikarus", + "Janus", + "Jordanië", + "Koe", + "Koekoek", + "Kolibrie", + "Kroon", + "Kronenhoek", + "Laars", + "Lammer", + "Lelie", + "Limoen", + "Maan", + "Margriet", + "Mijnwerker", + "Mol", + "Muiterij", + "Nachtegaal", + "Nieuw", + "Nijverheid", + "Nobel", + "Park", + "Pastoor", + "Pater", + "Pomp", + "Raaf", + "Reep", + "Rivier", + "Rovers", + "Savaan", + "Schaapdrijver", + "Schoen", + "Sluis", + "Sterre", + "Tartarus", + "Tierlantijn", + "Tollenaar", + "Tuin", + "Uilenspiegel", + "Vaandel", + "Veldwachter", + "Viool", + "Vogel", + "Wapper", + "Warande", + "Zebra", + "Zonne", + "Zout" + ]) + + @doc """ + Returns random street suffix (common). + + ## Examples + + iex> Faker.Address.NlBe.street_suffix_common() + "laan" + iex> Faker.Address.NlBe.street_suffix_common() + "straat" + iex> Faker.Address.NlBe.street_suffix_common() + "straat" + iex> Faker.Address.NlBe.street_suffix_common() + "laan" + """ + @spec street_suffix_common() :: String.t() + sampler(:street_suffix_common, [ + "laan", + "straat" + ]) + + @doc """ + Returns random street suffix. + + ## Examples + + iex> Faker.Address.NlBe.street_suffix() + "poort" + iex> Faker.Address.NlBe.street_suffix() + "straat" + iex> Faker.Address.NlBe.street_suffix() + "straat" + iex> Faker.Address.NlBe.street_suffix() + "straat" + """ + @spec street_suffix() :: String.t() + sampler(:street_suffix, [ + "hof", + "laan", + "lei", + "poort", + "rei", + "steeg", + "straat", + "vest", + "wegel", + "weg", + "kaai" + ]) + + @doc """ + Return randon building + + Streets are often named after important community buildings + + ## Examples + + iex> Faker.Address.NlBe.building() + "Abdij" + iex> Faker.Address.NlBe.building() + "Museum" + iex> Faker.Address.NlBe.building() + "Museum" + iex> Faker.Address.NlBe.building() + "Kerkhof" + """ + @spec building() :: String.t() + sampler(:building, [ + "Abdij", + "Aquarium", + "Apotheek", + "Atelier", + "Bakker", + "Begijnhof", + "Beenhouwer", + "Beurs", + "Bioscoop", + "Boomgaard", + "Brandweer", + "Brasserie", + "Brouwerij", + "Burg", + "Café", + "Cathedraal", + "Cinema", + "Citadel", + "College", + "Crèche", + "Dekenij", + "Dierentuin", + "Drogisterij", + "Eethuis", + "Fabriek", + "Gallerij", + "Gasthuis", + "Gevangenis", + "Gymnasium", + "Hospitaal", + "Hotel", + "Internaat", + "Kapel", + "Kasteel", + "Kazerne", + "Kerk", + "Kerkhof", + "Kiosk", + "Klooster", + "Kroeg", + "Markt", + "Museum", + "Opera", + "Restaurant", + "Schouwburg", + "School", + "Slachthuis", + "Sportveld", + "Stadhuis", + "Stadium", + "Station", + "Tandarts", + "Taverne", + "Theater", + "Toren", + "Universiteit", + "Visserij", + "Weverij", + "Wijngaard", + "Winkel", + "Zagerij", + "Ziekenhuis" + ]) + + @doc """ + Return random places + + ## Examples + + iex> Faker.Address.NlBe.place() + "Kerkplein" + iex> Faker.Address.NlBe.place() + "Huidenvettersplein" + iex> Faker.Address.NlBe.place() + "Koningsmarkt" + iex> Faker.Address.NlBe.place() + "Kleine Markt" + """ + @spec place() :: String.t() + sampler(:place, [ + # markets + "Dierenmarkt", + "Eiermarkt", + "Garenmarkt", + "Groentenmarkt", + "Grote Markt", + "Kleine Markt", + "Koningsmarkt", + "Korenmarkt", + "Schoenmarkt", + "Stadsmarkt", + "Vismarkt", + "Vlasmarkt", + "Vleesmarkt", + "Vogelmarkt", + "Vrijdagmarkt", + # squares + "Aalmoezeniersplein", + "Ankerplein", + "Assisenplein", + "Beursplein", + "Casinoplein", + "Huidenvettersplein", + "Kerkplein", + "Operaplein", + # other + "Dries", + "Groenplaats", + "Patershoek", + "Kouter" + ]) + + @doc """ + Return random postcode. + + Belgian zip codes are 4-digit numbers. + + ## Examples + + iex> Faker.Address.NlBe.zip_code() + "2110" + iex> Faker.Address.NlBe.zip_code() + "7401" + iex> Faker.Address.NlBe.zip_code() + "9835" + iex> Faker.Address.NlBe.zip_code() + "8304" + """ + @spec zip_code() :: String.t() + def zip_code do + to_string(Faker.random_between(1000, 9999)) + end + + defdelegate building_number(), to: Faker.Address.Nl, as: :building_number + + defdelegate country(), to: Faker.Address.Nl, as: :country + + defdelegate house_number(), to: Faker.Address.Nl, as: :house_number +end diff --git a/test/faker/address_test.exs b/test/faker/address_test.exs index cf9f2181d..a802e57fc 100644 --- a/test/faker/address_test.exs +++ b/test/faker/address_test.exs @@ -7,6 +7,7 @@ defmodule Faker.AddressTest do doctest Faker.Address.Hy doctest Faker.Address.It doctest Faker.Address.Nl + doctest Faker.Address.NlBe doctest Faker.Address.PtBr doctest Faker.Address.Ru end