Skip to content

Commit

Permalink
add serbian people names (#307)
Browse files Browse the repository at this point in the history
  • Loading branch information
cieslarmichal authored Nov 21, 2023
1 parent 9c96e48 commit 241929a
Show file tree
Hide file tree
Showing 6 changed files with 240 additions and 1 deletion.
4 changes: 3 additions & 1 deletion include/faker-cxx/types/Country.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ enum class Country
Mexico,
Argentina,
Australia,
Serbia,
};

const std::vector<Country> countries{
Expand All @@ -54,7 +55,7 @@ const std::vector<Country> countries{
Country::Japan, Country::Portugal, Country::Hungary, Country::Croatia, Country::Greece,
Country::Slovenia, Country::Austria, Country::Switzerland, Country::Belgium, Country::Nederlands,
Country::China, Country::Korea, Country::Canada, Country::Mexico, Country::Argentina,
Country::Australia,
Country::Australia, Country::Serbia,
};

inline std::string toString(Country country)
Expand Down Expand Up @@ -96,6 +97,7 @@ inline std::string toString(Country country)
{Country::Mexico, "Mexico"},
{Country::Argentina, "Argentina"},
{Country::Australia, "Australia"},
{Country::Serbia, "Serbia"},
};

return countryToStringMapping.at(country);
Expand Down
2 changes: 2 additions & 0 deletions src/modules/person/Person.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
#include "data/portugal/PortuguesePeopleNames.h"
#include "data/romania/RomanianPeopleNames.h"
#include "data/russia/RussianPeopleNames.h"
#include "data/serbia/SerbianPeopleNames.h"
#include "data/slovakia/SlovakPeopleNames.h"
#include "data/slovenia/SlovenianPeopleNames.h"
#include "data/spain/SpanishPeopleNames.h"
Expand Down Expand Up @@ -75,6 +76,7 @@ const std::map<Country, PeopleNames> countryToPeopleNamesMapping{
{Country::China, chinesePeopleNames}, {Country::Korea, koreanPeopleNames},
{Country::Canada, canadianPeopleNames}, {Country::Mexico, mexicanPeopleNames},
{Country::Argentina, argentinianPeopleNames}, {Country::Australia, australianPeopleNames},
{Country::Serbia, serbianPeopleNames},
};

std::string middleNameForCountry(Country country, std::optional<Sex> sex);
Expand Down
3 changes: 3 additions & 0 deletions src/modules/person/PersonTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
#include "data/portugal/PortuguesePeopleNames.h"
#include "data/romania/RomanianPeopleNames.h"
#include "data/russia/RussianPeopleNames.h"
#include "data/serbia/SerbianPeopleNames.h"
#include "data/slovakia/SlovakPeopleNames.h"
#include "data/slovenia/SlovenianPeopleNames.h"
#include "data/spain/SpanishPeopleNames.h"
Expand Down Expand Up @@ -75,6 +76,7 @@ const std::map<Country, PeopleNames> countryToPeopleNamesMapping{
{Country::China, chinesePeopleNames}, {Country::Korea, koreanPeopleNames},
{Country::Canada, canadianPeopleNames}, {Country::Mexico, mexicanPeopleNames},
{Country::Argentina, argentinianPeopleNames}, {Country::Australia, australianPeopleNames},
{Country::Serbia, serbianPeopleNames},
};

const std::map<Country, std::string> generatedTestName{
Expand All @@ -96,6 +98,7 @@ const std::map<Country, std::string> generatedTestName{
{Country::China, "shouldGenerateChineseName"}, {Country::Korea, "shouldGenerateKoreanName"},
{Country::Canada, "shouldGenerateCanadianName"}, {Country::Mexico, "shouldGenerateMexicanName"},
{Country::Argentina, "shouldGenerateArgentinianName"}, {Country::Australia, "shouldGenerateAustralianName"},
{Country::Serbia, "shouldGenerateSerbianName"},
};
}

Expand Down
63 changes: 63 additions & 0 deletions src/modules/person/data/serbia/SerbianFirstNames.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
#pragma once

#include <string>
#include <vector>

namespace faker
{
const std::vector<std::string> serbianMalesFirstNames = {
"Adam", "Aleksa", "Aleksandar", "Aleksej", "Aljoša", "Anastasije", "Andrej", "Andrija",
"Anej", "Arsenije", "Aćim", "Berislav", "Blagoje", "Boban", "Bogdan", "Bogoljub",
"Bojan", "Boris", "Borivoje", "Borjan", "Boško", "Boža", "Božidar", "Branimir",
"Branislav", "Branko", "Budimir", "Cvijan", "Cvijetin", "Dabiživ", "Damir", "Damjan",
"Danilo", "Danko", "Darko", "David", "Davor", "Dejan", "Desimir", "Dimitrije",
"Dragan", "Dragiša", "Dragoje", "Dragojlo", "Dragoljub", "Dragoslav", "Dragutin", "Draža",
"Dražen", "Dren", "Dušan", "Duško", "Filip", "Filotije", "Gavrilo", "Georgije",
"Gerasim", "Gligorije", "Gojko", "Golub", "Goran", "Gordan", "Grgur", "Grigorije",
"Hvalimir", "Ignjat", "Igor", "Ilarion", "Ilija", "Ivan", "Ivica", "Ivo",
"Jadranko", "Jakov", "Jezdimir", "Jovan", "Jugoslav", "Kalinik", "Kirilo", "Konstantin",
"Kosta", "Kristijan", "Krsto", "Kuzman", "Lazar", "Ljubiša", "Ljubomir", "Luka",
"Mališa", "Marinko", "Marjan", "Marko", "Mateja", "Mihailo", "Mihajlo", "Mija",
"Mijat", "Mika", "Miladin", "Milan", "Milanko", "Mile", "Mileta", "Milisav",
"Milić", "Miljan", "Milojica", "Milomir", "Milorad", "Miloš", "Milutin", "Miodrag",
"Miomir", "Mirko", "Miroslav", "Mitar", "Miša", "Miško", "Mladen", "Momir",
"Nebojša", "Nedeljko", "Nemanja", "Nenad", "Neven", "Nikola", "Nikša", "Novak",
"Obrad", "Obren", "Ognjen", "Oliver", "Ostoja", "Paja", "Pavle", "Pera",
"Perica", "Pero", "Petar", "Petko", "Predrag", "Prvoslav", "Radenko", "Radivoje",
"Radiša", "Radmilo", "Radomir", "Radosav", "Radoslav", "Radovan", "Radoš", "Radul",
"Rajko", "Ranko", "Ratimir", "Raško", "Relja", "Rodoljub", "Saša", "Simo",
"Siniša", "Slavoljub", "Slobodan", "Srboljub", "Sredoje", "Stanislav", "Stanko", "Stefan",
"Stevan", "Stojan", "Strahinja", "Svetislav", "Svetolik", "Svetomir", "Tadija", "Tihomir",
"Tomislav", "Vanja", "Vasil", "Vasko", "Velibor", "Velimir", "Vidak", "Vladimir",
"Vlastimir", "Vojin", "Vujadin", "Vuk", "Vukan", "Vukašin", "Vukota", "Zafir",
"Zarije", "Zoran", "Zvonko", "Časlav", "Čedomir", "Đorđe", "Đura", "Đurađ",
};

const std::vector<std::string> serbianFemalesFirstNames = {
"Adrijana", "Aleksandra", "Ana", "Anabela", "Anastasija", "Andrea", "Andrijana", "Aneta",
"Anica", "Anita", "Anja", "Anka", "Anđela", "Ava", "Biljana", "Bisenija",
"Blagica", "Bobana", "Bogdana", "Bojana", "Bora", "Borka", "Bosiljka", "Božena",
"Božica", "Branka", "Brankica", "Ceca", "Dajana", "Daliborka", "Damjanka", "Dana",
"Danijela", "Danila", "Danka", "Darija", "Darinka", "Dejana", "Desanka", "Dijana",
"Divna", "Dobrila", "Dorotea", "Draga", "Dragana", "Draginja", "Drina", "Dubravka",
"Dunja", "Dušanka", "Dušica", "Duška", "Elena", "Eleonora", "Ema", "Emilija",
"Evdokija", "Gabrijela", "Gala", "Galina", "Gorana", "Gordana", "Hana", "Ilinka",
"Ina", "Irina", "Ivanka", "Jadranka", "Jana", "Jasmina", "Jasna", "Jelena",
"Jelica", "Jelisaveta", "Jelka", "Jevrosima", "Jovana", "Jovanka", "Julia", "Julijana",
"Katarina", "Klara", "Kristina", "Ksenija", "Lada", "Lara", "Leposava", "Lidija",
"Ljiljana", "Ljuba", "Ljubica", "Magdalena", "Maja", "Malina", "Marica", "Marina",
"Markika", "Marta", "Maša", "Mašinka", "Melenija", "Mia", "Milana", "Milanka",
"Milena", "Milica", "Miljana", "Mina", "Mira", "Mirela", "Mirjana", "Mirka",
"Mirna", "Mitra", "Mlađana", "Momira", "Nada", "Nadežda", "Nastja", "Natalija",
"Nataša", "Nađa", "Neda", "Nela", "Neva", "Nevena", "Nikoleta", "Nikolina",
"Nina", "Njegomirka", "Ognjana", "Olga", "Olgica", "Olivera", "Peruna", "Petra",
"Petrija", "Radina", "Radmila", "Radojka", "Rakita", "Renja", "Ristana", "Roksana",
"Romana", "Rumena", "Ruža", "Sanda", "Sandra", "Sanja", "Sara", "Selena",
"Senka", "Silvija", "Simonida", "Slava", "Slavica", "Slavka", "Slađana", "Slobodanka",
"Smiljana", "Snežana", "Sofija", "Sonja", "Srna", "Stanislava", "Staša", "Stefana",
"Stojanka", "Sunčica", "Suzana", "Svetlana", "Tamara", "Tanja", "Tara", "Tatjana",
"Tea", "Teodora", "Teona", "Una", "Vasilisa", "Vera", "Verica", "Veselinka",
"Vesna", "Vida", "Višnja", "Vladana", "Vlatka", "Vojislava", "Vujica", "Vukica",
"Zavida", "Zora", "Zorana", "Zorka", "Zvezdana", "Čarna", "Đurica", "Željka",
};
}
Loading

0 comments on commit 241929a

Please sign in to comment.