diff --git a/include/faker-cxx/types/Country.h b/include/faker-cxx/types/Country.h index 7f2bb26c7..171cdc216 100644 --- a/include/faker-cxx/types/Country.h +++ b/include/faker-cxx/types/Country.h @@ -65,6 +65,7 @@ enum class Country Syria, Malta, SouthAfrica, + Azerbaijan, }; const std::vector countries{ @@ -79,7 +80,7 @@ const std::vector countries{ Country::Ireland, Country::Belarus, Country::Estonia, Country::Iran, Country::Bulgaria, Country::Moldova, Country::Lithuania, Country::Iceland, Country::Palestine, Country::Israel, Country::Vietnam, Country::Monaco, Country::Bosnia, Country::Lebanon, Country::Syria, - Country::Malta, Country::SouthAfrica, + Country::Malta, Country::SouthAfrica, Country::Azerbaijan, }; inline std::string toString(Country country) @@ -142,6 +143,7 @@ inline std::string toString(Country country) {Country::Syria, "Syria"}, {Country::Malta, "Malta"}, {Country::SouthAfrica, "South Africa"}, + {Country::Azerbaijan, "Azerbaijan"}, }; return countryToStringMapping.at(country); diff --git a/src/modules/person/Person.cpp b/src/modules/person/Person.cpp index 2c476b68b..e5c39f44b 100644 --- a/src/modules/person/Person.cpp +++ b/src/modules/person/Person.cpp @@ -42,6 +42,7 @@ #include "data/latvia/LatvianPeopleNames.h" #include "data/lebanon/LebanesePeopleNames.h" #include "data/lithuania/LithuanianPeopleNames.h" +#include "data/azerbaijan/AzerbaijaniPeopleNames.h" #include "data/macedonia/MacedonianPeopleNames.h" #include "data/malta/MaltesePeopleNames.h" #include "data/mexico/MexicanPeopleNames.h" @@ -108,7 +109,7 @@ const std::map countryToPeopleNamesMapping{ {Country::Israel, israeliPeopleNames}, {Country::Vietnam, vietnamesePeopleNames}, {Country::Monaco, monacanPeopleNames}, {Country::Lebanon, lebanesePeopleNames}, {Country::Syria, syrianPeopleNames}, {Country::Malta, maltesePeopleNames}, - {Country::SouthAfrica, southAfricanPeopleNames}, + {Country::SouthAfrica, southAfricanPeopleNames}, {Country::Azerbaijan, azerbaijaniPeopleNames}, }; std::string middleNameForCountry(Country country, std::optional sex); diff --git a/src/modules/person/PersonTest.cpp b/src/modules/person/PersonTest.cpp index b4ed7e14e..d8b4a2b99 100644 --- a/src/modules/person/PersonTest.cpp +++ b/src/modules/person/PersonTest.cpp @@ -43,6 +43,7 @@ #include "data/macedonia/MacedonianPeopleNames.h" #include "data/malta/MaltesePeopleNames.h" #include "data/mexico/MexicanPeopleNames.h" +#include "data/azerbaijan/AzerbaijaniPeopleNames.h" #include "data/moldova/MoldovanPeopleNames.h" #include "data/monaco/MonacanPeopleNames.h" #include "data/Nationalities.h" @@ -106,7 +107,7 @@ const std::map countryToPeopleNamesMapping{ {Country::Vietnam, vietnamesePeopleNames}, {Country::Monaco, monacanPeopleNames}, {Country::Bosnia, bosnianPeopleNames}, {Country::Lebanon, lebanesePeopleNames}, {Country::Syria, syrianPeopleNames}, {Country::Malta, maltesePeopleNames}, - {Country::SouthAfrica, southAfricanPeopleNames}, + {Country::SouthAfrica, southAfricanPeopleNames}, {Country::Azerbaijan, azerbaijaniPeopleNames}, }; const std::map generatedTestName{ @@ -138,7 +139,7 @@ const std::map generatedTestName{ {Country::Vietnam, "shouldGenerateVietnameseName"}, {Country::Monaco, "shouldGenerateMonacanName"}, {Country::Bosnia, "shouldGenerateBosnianNames"}, {Country::Lebanon, "shouldGenerateLebaneseName"}, {Country::Syria, "shouldGenerateSyrianName"}, {Country::Malta, "shouldGenerateMalteseName"}, - {Country::SouthAfrica, "shouldGenerateSouthAfricanName"}, + {Country::SouthAfrica, "shouldGenerateSouthAfricanName"}, {Country::Azerbaijan, "shouldGenerateAzerbaijaniName"}, }; } diff --git a/src/modules/person/data/azerbaijan/AzerbaijaniFirstNames.h b/src/modules/person/data/azerbaijan/AzerbaijaniFirstNames.h new file mode 100644 index 000000000..91a8d3db6 --- /dev/null +++ b/src/modules/person/data/azerbaijan/AzerbaijaniFirstNames.h @@ -0,0 +1,121 @@ +#pragma once + +#include +#include + +namespace faker +{ +const std::vector azerbaijaniMalesFirstNames = { + "Anar", + "Amid", + "Afəl", + "Abbas", + "Abdulla", + "Adil", + "Akif", + "Aqil", + "Bəhram", + "Nurlan", + "Rafiq", + "Tərlan", + "Zaur", + "Emin", + "Emil", + "Kamran", + "Elnur", + "Natiq", + "Rəşad", + "Rəşid", + "Tahir", + "Əhməd", + "Zahir", + "İlham", + "İlqar", + "Nahid", + "Nihad", + "Faiq", + "İxtiyar", + "Şəhriyar", + "Şaiq", + "Bəxtiyar", + "Bəhruz", + "Tunar", + "Nadir", +}; + +const std::vector azerbaijaniFemalesFirstNames = { + "Anna", + "Adeliya", + "Afaq", + "Afət", + "Afərim", + "Aidə", + "Aygün", + "Aynur", + "Alsu", + "Ayan", + "Aytən", + "Aygül", + "Aydan", + "Aylin", + "Bahar", + "Banu", + "Bəyaz", + "Billurə", + "Cansu", + "Ceyla", + "Damla", + "Dəniz", + "Diana", + "Dilarə", + "Ella", + "Elza", + "Elyanora", + "Ellada", + "Elvira", + "Elnarə", + "Esmira", + "Estella", + "Fatimə", + "Fəxriyyə", + "Fərəh", + "Fərqanə", + "Fidan", + "Firuzə", + "Gövhər", + "Günay", + "Gülay", + "Gülçin", + "Gülər", + "Gülsüm", + "Humay", + "Hüriyə", + "Hülya", + "Jalə", + "Jasmin", + "Kübra", + "Ləman", + "Lamiyə", + "Lalə", + "Liliya", + "Laura", + "Leyla", + "Maya", + "Mehriban", + "Mələk", + "Nuray", + "Nurgün", + "Nərgiz", + "Nigar", + "Ofelya", + "Pəri", + "Röya", + "Səbinə", + "Selcan", + "Tansu", + "Tuba", + "Ülviyyə", + "Ulduz", + "Ülkər", +}; +} diff --git a/src/modules/person/data/azerbaijan/AzerbaijaniLastNames.h b/src/modules/person/data/azerbaijan/AzerbaijaniLastNames.h new file mode 100644 index 000000000..e8b721e2d --- /dev/null +++ b/src/modules/person/data/azerbaijan/AzerbaijaniLastNames.h @@ -0,0 +1,33 @@ +#pragma once + +#include +#include + +namespace faker +{ +const std::vector azerbaijaniMalesLastNames = { + "Əhmədov", + "Ələkbərov", + "Əliyev", + "Vəliyev", + "Soltanov", + "Quliyev", + "Məmmədov", + "Xəlilov", + "Nəzərov", + "Rəhimov", +}; + +const std::vector azerbaijaniFemalesLastNames = { + "Qasımova", + "Əfəndiyeva", + "Soltanova", + "Abdullayeva", + "Rəşidova", + "Ələkbərova", + "Əliyeva", + "Tahirova", + "Seyidova", + "Vəsiyeva", +}; +} diff --git a/src/modules/person/data/azerbaijan/AzerbaijaniPeopleNames.h b/src/modules/person/data/azerbaijan/AzerbaijaniPeopleNames.h new file mode 100644 index 000000000..3307ffb3c --- /dev/null +++ b/src/modules/person/data/azerbaijan/AzerbaijaniPeopleNames.h @@ -0,0 +1,20 @@ +#pragma once + +#include "../NameFormats.h" +#include "../PeopleNames.h" +#include "AzerbaijaniFirstNames.h" +#include "AzerbaijaniLastNames.h" + +namespace faker +{ +const NameFormats azerbaijaniPersonNameFormats{{ + {"{lastName} {firstName}", 1}, + {"{firstName} {lastName}", 1}, +}}; + +const PeopleNames azerbaijaniPeopleNames{ + {azerbaijaniMalesFirstNames, {}, azerbaijaniMalesLastNames, {}, {}}, + {azerbaijaniFemalesFirstNames, {}, azerbaijaniFemalesLastNames, {}, {}}, + azerbaijaniPersonNameFormats}; + +}