diff --git a/include/faker-cxx/types/AddressCountry.h b/include/faker-cxx/types/AddressCountry.h index 8cdbff63..ebac8689 100644 --- a/include/faker-cxx/types/AddressCountry.h +++ b/include/faker-cxx/types/AddressCountry.h @@ -18,12 +18,13 @@ enum class AddressCountry Germany, Czech, Australia, + India, }; const std::vector addressCountries{ AddressCountry::Usa, AddressCountry::Poland, AddressCountry::France, AddressCountry::Russia, AddressCountry::Ukraine, AddressCountry::Italy, - AddressCountry::Germany, AddressCountry::Czech, + AddressCountry::Germany, AddressCountry::Czech, AddressCountry::India, }; inline std::string toString(AddressCountry country) @@ -32,6 +33,7 @@ inline std::string toString(AddressCountry country) {AddressCountry::Usa, "Usa"}, {AddressCountry::Poland, "Poland"}, {AddressCountry::France, "France"}, {AddressCountry::Russia, "Russia"}, {AddressCountry::Ukraine, "Ukraine"}, {AddressCountry::Italy, "Italy"}, {AddressCountry::Germany, "Germany"}, {AddressCountry::Czech, "Czech"}, {AddressCountry::Australia, "Australia"}, + {AddressCountry::India, "India"}, }; return countryToStringMapping.at(country); diff --git a/src/modules/location/Location.cpp b/src/modules/location/Location.cpp index df9ae9b6..c9c587c6 100644 --- a/src/modules/location/Location.cpp +++ b/src/modules/location/Location.cpp @@ -20,6 +20,7 @@ #include "faker-cxx/Helper.h" #include "faker-cxx/Person.h" #include "faker-cxx/String.h" +#include "data/india/IndiaAddresses.h" namespace faker { @@ -30,7 +31,7 @@ const std::map countryToCountryAddressesMappin {AddressCountry::Russia, russiaAddresses}, {AddressCountry::France, franceAddresses}, {AddressCountry::Ukraine, ukraineAddresses}, {AddressCountry::Italy, italyAddresses}, {AddressCountry::Germany, germanyAddresses}, {AddressCountry::Czech, czechAddresses}, - {AddressCountry::Australia, australiaAddresses}, + {AddressCountry::Australia, australiaAddresses}, {AddressCountry::India, indiaAddresses}, }; const std::map countryAddressToCountryMapping{ @@ -38,7 +39,7 @@ const std::map countryAddressToCountryMapping{ {AddressCountry::Russia, Country::Russia}, {AddressCountry::France, Country::France}, {AddressCountry::Ukraine, Country::Ukraine}, {AddressCountry::Italy, Country::Italy}, {AddressCountry::Germany, Country::Germany}, {AddressCountry::Czech, Country::Czech}, - {AddressCountry::Australia, Country::Australia}, + {AddressCountry::Australia, Country::Australia}, {AddressCountry::India, Country::India}, }; } diff --git a/src/modules/location/LocationTest.cpp b/src/modules/location/LocationTest.cpp index c8a0c0e1..1d294ad7 100644 --- a/src/modules/location/LocationTest.cpp +++ b/src/modules/location/LocationTest.cpp @@ -27,6 +27,7 @@ #include "data/italy/ItalyAddresses.h" #include "data/germany/GermanyAddresses.h" #include "data/usa/UsaAddresses.h" +#include "data/india/IndiaAddresses.h" using namespace ::testing; using namespace faker; @@ -38,7 +39,7 @@ const std::map countryToCountryAddressesMappin {AddressCountry::Russia, russiaAddresses}, {AddressCountry::France, franceAddresses}, {AddressCountry::Ukraine, ukraineAddresses}, {AddressCountry::Italy, italyAddresses}, {AddressCountry::Germany, germanyAddresses}, {AddressCountry::Czech, czechAddresses}, - {AddressCountry::Australia, australiaAddresses}, + {AddressCountry::Australia, australiaAddresses}, {AddressCountry::India, indiaAddresses}, }; const std::map generatedTestName{ @@ -51,6 +52,7 @@ const std::map generatedTestName{ {AddressCountry::Germany, "shouldGenerateGermanAddress"}, {AddressCountry::Czech, "shouldGenerateCzechAddress"}, {AddressCountry::Australia, "shouldGenerateAustraliaAddress"}, + {AddressCountry::India, "shouldGenerateIndiaAddress"}, }; } @@ -575,4 +577,36 @@ TEST_F(LocationTest, shouldGenerateAustraliaStreetAddress) ASSERT_TRUE(checkIfAllCharactersAreNumeric(generatedBuildingNumber)); ASSERT_TRUE(std::ranges::any_of(australiaStreetSuffixes, [&generatedStreetSuffix](const std::string& streetSuffix) { return streetSuffix == generatedStreetSuffix; })); +} + +TEST_F(LocationTest, shouldGenerateIndiaStreet) +{ + const auto generatedStreet = Location::street(AddressCountry::India); + + const auto generatedStreetElements = StringHelper::split(generatedStreet, " "); + + const auto& generatedStreetSuffix = + StringHelper::join({generatedStreetElements.begin() + 1, generatedStreetElements.end()}); + + ASSERT_GE(generatedStreetElements.size(), 2); + + ASSERT_TRUE(std::ranges::any_of(indiaStreetSuffixes, [&generatedStreetSuffix](const std::string& streetSuffix) + { return streetSuffix == generatedStreetSuffix; })); +} + +TEST_F(LocationTest, shouldGenerateIndiaStreetAddress) +{ + const auto generatedStreetAddress = Location::streetAddress(AddressCountry::India); + + const auto generatedStreetAddressElements = StringHelper::split(generatedStreetAddress, " "); + + const auto& generatedBuildingNumber = generatedStreetAddressElements[0]; + const auto& generatedStreetSuffix = + StringHelper::join({generatedStreetAddressElements.begin() + 2, generatedStreetAddressElements.end()}); + + ASSERT_GE(generatedStreetAddressElements.size(), 3); + ASSERT_TRUE(!generatedBuildingNumber.empty()); + ASSERT_TRUE(checkIfAllCharactersAreNumeric(generatedBuildingNumber)); + ASSERT_TRUE(std::ranges::any_of(indiaStreetSuffixes, [&generatedStreetSuffix](const std::string& streetSuffix) + { return streetSuffix == generatedStreetSuffix; })); } \ No newline at end of file diff --git a/src/modules/location/data/india/IndiaAddresses.h b/src/modules/location/data/india/IndiaAddresses.h new file mode 100644 index 00000000..a05e23dd --- /dev/null +++ b/src/modules/location/data/india/IndiaAddresses.h @@ -0,0 +1,29 @@ +#pragma once + +#include "../CountryAddresses.h" +#include "IndiaCities.h" +#include "IndiaStreetSuffixes.h" +#include "IndiaStates.h" + +namespace faker { + const std::string indiaZipCodeFormat{"######"}; + + const std::vector indiaAddressFormats{"{buildingNumber} {street}"}; + + const std::vector indiaSecondaryAddressFormats{"Apt. ###", "Flat ###"}; + + const std::vector indiaBuildingNumberFormats{"#####", "####", "###"}; + + const std::vector indiaStreetFormats{"{firstName} {streetSuffix}", "{lastName} {streetSuffix}"}; + + const CountryAddresses indiaAddresses{indiaCities, + indiaZipCodeFormat, + indiaAddressFormats, + indiaSecondaryAddressFormats, + indiaStreetFormats, + {}, + {}, + indiaStreetSuffixes, + indiaBuildingNumberFormats, + indiaStates}; +} \ No newline at end of file diff --git a/src/modules/location/data/india/IndiaCities.h b/src/modules/location/data/india/IndiaCities.h new file mode 100644 index 00000000..3849426b --- /dev/null +++ b/src/modules/location/data/india/IndiaCities.h @@ -0,0 +1,1207 @@ +#pragma once + +#include +#include + +namespace faker { + const std::vector indiaCities{ + "Achalpur", + "Achhnera", + "Adalaj", + "Adilabad", + "Adityapur", + "Adoni", + "Adoor", + "Adra", + "Adyar", + "Afzalpur", + "Agartala", + "Agra", + "Ahmedabad", + "Ahmednagar", + "Aizawl", + "Ajmer", + "Akola", + "Akot", + "Alappuzha", + "Aligarh", + "AlipurdUrban Agglomerationr", + "Alirajpur", + "Allahabad", + "Alwar", + "Amalapuram", + "Amalner", + "Ambejogai", + "Ambikapur", + "Amravati", + "Amreli", + "Amritsar", + "Amroha", + "Anakapalle", + "Anand", + "Anantapur", + "Anantnag", + "Anjangaon", + "Anjar", + "Ankleshwar", + "Arakkonam", + "Arambagh", + "Araria", + "Arrah", + "Arsikere", + "Aruppukkottai", + "Arvi", + "Arwal", + "Asansol", + "Asarganj", + "Ashok Nagar", + "Athni", + "Attingal", + "Aurangabad", + "Azamgarh", + "Bagaha", + "Bageshwar", + "Bahadurgarh", + "Baharampur", + "Bahraich", + "Balaghat", + "Balangir", + "Baleshwar Town", + "Ballari", + "Balurghat", + "Bankura", + "Bapatla", + "Baramula", + "Barbil", + "Bargarh", + "Barh", + "Baripada Town", + "Barmer", + "Barnala", + "Barpeta", + "Batala", + "Bathinda", + "Begusarai", + "Belagavi", + "Bellampalle", + "Belonia", + "Bengaluru", + "Bettiah", + "BhabUrban Agglomeration", + "Bhadrachalam", + "Bhadrak", + "Bhagalpur", + "Bhainsa", + "Bharatpur", + "Bharuch", + "Bhatapara", + "Bhavnagar", + "Bhawanipatna", + "Bheemunipatnam", + "Bhilai Nagar", + "Bhilwara", + "Bhimavaram", + "Bhiwandi", + "Bhiwani", + "Bhongir", + "Bhopal", + "Bhubaneswar", + "Bhuj", + "Bikaner", + "Bilaspur", + "Bobbili", + "Bodhan", + "Bokaro Steel City", + "Bongaigaon City", + "Brahmapur", + "Buxar", + "Byasanagar", + "Chaibasa", + "Chalakudy", + "Chandausi", + "Chandigarh", + "Changanassery", + "Charkhi Dadri", + "Chatra", + "Chennai", + "Cherthala", + "Chhapra", + "Chikkamagaluru", + "Chilakaluripet", + "Chirala", + "Chirkunda", + "Chirmiri", + "Chittoor", + "Chittur-Thathamangalam", + "Coimbatore", + "Cuttack", + "Dalli-Rajhara", + "Darbhanga", + "Darjiling", + "Davanagere", + "Deesa", + "Dehradun", + "Dehri-on-Sone", + "Delhi", + "Deoghar", + "Dhamtari", + "Dhanbad", + "Dharmanagar", + "Dharmavaram", + "Dhenkanal", + "Dhoraji", + "Dhubri", + "Dhule", + "Dhuri", + "Dibrugarh", + "Dimapur", + "Diphu", + "Dumka", + "Dumraon", + "Durg", + "Eluru", + "English Bazar", + "Erode", + "Etawah", + "Faridabad", + "Faridkot", + "Farooqnagar", + "Fatehabad", + "Fatehpur Sikri", + "Fazilka", + "Firozabad", + "Firozpur Cantt.", + "Firozpur", + "Forbesganj", + "Gadwal", + "Gandhinagar", + "Gangarampur", + "Ganjbasoda", + "Gaya", + "Giridih", + "Goalpara", + "Gobichettipalayam", + "Gobindgarh", + "Godhra", + "Gohana", + "Gokak", + "Gooty", + "Gopalganj", + "Gudivada", + "Gudur", + "Gumia", + "Guntakal", + "Guntur", + "Gurdaspur", + "Gurgaon", + "Guruvayoor", + "Guwahati", + "Gwalior", + "Habra", + "Hajipur", + "Haldwani-cum-Kathgodam", + "Hansi", + "Hapur", + "Hardoi ", + "Hardwar", + "Hazaribag", + "Hindupur", + "Hisar", + "Hoshiarpur", + "Hubli-Dharwad", + "Hugli-Chinsurah", + "Hyderabad", + "Ichalkaranji", + "Imphal", + "Indore", + "Itarsi", + "Jabalpur", + "Jagdalpur", + "Jaggaiahpet", + "Jagraon", + "Jagtial", + "Jaipur", + "Jalandhar Cantt.", + "Jalandhar", + "Jalpaiguri", + "Jamalpur", + "Jammalamadugu", + "Jammu", + "Jamnagar", + "Jamshedpur", + "Jamui", + "Jangaon", + "Jatani", + "Jehanabad", + "Jhansi", + "Jhargram", + "Jharsuguda", + "Jhumri Tilaiya", + "Jind", + "Jodhpur", + "Jorhat", + "Kadapa", + "Kadi", + "Kadiri", + "Kagaznagar", + "Kailasahar", + "Kaithal", + "Kakinada", + "Kalimpong", + "Kalpi", + "Kalyan-Dombivali", + "Kamareddy", + "Kancheepuram", + "Kandukur", + "Kanhangad", + "Kannur", + "Kanpur", + "Kapadvanj", + "Kapurthala", + "Karaikal", + "Karimganj", + "Karimnagar", + "Karjat", + "Karnal", + "Karur", + "Karwar", + "Kasaragod", + "Kashipur", + "KathUrban Agglomeration", + "Katihar", + "Kavali", + "Kayamkulam", + "Kendrapara", + "Kendujhar", + "Keshod", + "Khair", + "Khambhat", + "Khammam", + "Khanna", + "Kharagpur", + "Kharar", + "Khowai", + "Kishanganj", + "Kochi", + "Kodungallur", + "Kohima", + "Kolar", + "Kolkata", + "Kollam", + "Koratla", + "Korba", + "Kot Kapura", + "Kota", + "Kothagudem", + "Kottayam", + "Kovvur", + "Koyilandy", + "Kozhikode", + "Kunnamkulam", + "Kurnool", + "Kyathampalle", + "Lachhmangarh", + "Ladnu", + "Ladwa", + "Lahar", + "Laharpur", + "Lakheri", + "Lakhimpur", + "Lakhisarai", + "Lakshmeshwar", + "Lal Gopalganj Nindaura", + "Lalganj", + "Lalgudi", + "Lalitpur", + "Lalsot", + "Lanka", + "Lar", + "Lathi", + "Latur", + "Lilong", + "Limbdi", + "Lingsugur", + "Loha", + "Lohardaga", + "Lonar", + "Lonavla", + "Longowal", + "Loni", + "Losal", + "Lucknow", + "Ludhiana", + "Lumding", + "Lunawada", + "Lunglei", + "Macherla", + "Machilipatnam", + "Madanapalle", + "Maddur", + "Madhepura", + "Madhubani", + "Madhugiri", + "Madhupur", + "Madikeri", + "Madurai", + "Magadi", + "Mahad", + "Mahalingapura", + "Maharajganj", + "Maharajpur", + "Mahasamund", + "Mahbubnagar", + "Mahe", + "Mahemdabad", + "Mahendragarh", + "Mahesana", + "Mahidpur", + "Mahnar Bazar", + "Mahuva", + "Maihar", + "Mainaguri", + "Makhdumpur", + "Makrana", + "Malaj Khand", + "Malappuram", + "Malavalli", + "Malda", + "Malegaon", + "Malerkotla", + "Malkangiri", + "Malkapur", + "Malout", + "Malpura", + "Malur", + "Manachanallur", + "Manasa", + "Manavadar", + "Manawar", + "Mancherial", + "Mandalgarh", + "Mandamarri", + "Mandapeta", + "Mandawa", + "Mandi Dabwali", + "Mandi", + "Mandideep", + "Mandla", + "Mandsaur", + "Mandvi", + "Mandya", + "Manendragarh", + "Maner", + "Mangaldoi", + "Mangaluru", + "Mangalvedhe", + "Manglaur", + "Mangrol", + "Mangrulpir", + "Manihari", + "Manjlegaon", + "Mankachar", + "Manmad", + "Mansa", + "Manuguru", + "Manvi", + "Manwath", + "Mapusa", + "Margao", + "Margherita", + "Marhaura", + "Mariani", + "Marigaon", + "Markapur", + "Marmagao", + "Masaurhi", + "Mathabhanga", + "Mathura", + "Mattannur", + "Mauganj", + "Mavelikkara", + "Mavoor", + "Mayang Imphal", + "Medak", + "Medininagar (Daltonganj)", + "Medinipur", + "Meerut", + "Mehkar", + "Memari", + "Merta City", + "Mhaswad", + "Mhow Cantonment", + "Mhowgaon", + "Mihijam", + "Mira-Bhayandar", + "Mirganj", + "Miryalaguda", + "Modasa", + "Modinagar", + "Moga", + "Mohali", + "Mokameh", + "Mokokchung", + "Monoharpur", + "Moradabad", + "Morena", + "Morinda, India", + "Morshi", + "Morvi", + "Motihari", + "Motipur", + "Mount Abu", + "Mudabidri", + "Mudalagi", + "Muddebihal", + "Mudhol", + "Mukerian", + "Mukhed", + "Muktsar", + "Mul", + "Mulbagal", + "Multai", + "Mumbai", + "Mundargi", + "Mundi", + "Mungeli", + "Munger", + "Murliganj", + "Murshidabad", + "Murtijapur", + "Murwara (Katni)", + "Musabani", + "Mussoorie", + "Muvattupuzha", + "Muzaffarpur", + "Mysore", + "Nabadwip", + "Nabarangapur", + "Nabha", + "Nadbai", + "Nadiad", + "Nagaon", + "Nagapattinam", + "Nagar", + "Nagari", + "Nagarkurnool", + "Nagaur", + "Nagda", + "Nagercoil", + "Nagina", + "Nagla", + "Nagpur", + "Nahan", + "Naharlagun", + "Naidupet", + "Naihati", + "Naila Janjgir", + "Nainital", + "Nainpur", + "Najibabad", + "Nakodar", + "Nakur", + "Nalbari", + "Namagiripettai", + "Namakkal", + "Nanded-Waghala", + "Nandgaon", + "Nandivaram-Guduvancheri", + "Nandura", + "Nandurbar", + "Nandyal", + "Nangal", + "Nanjangud", + "Nanjikottai", + "Nanpara", + "Narasapuram", + "Narasaraopet", + "Naraura", + "Narayanpet", + "Nargund", + "Narkatiaganj", + "Narkhed", + "Narnaul", + "Narsinghgarh", + "Narsipatnam", + "Narwana", + "Nashik", + "Nasirabad", + "Natham", + "Nathdwara", + "Naugachhia", + "Naugawan Sadat", + "Nautanwa", + "Navalgund", + "Navsari", + "Nawabganj", + "Nawada", + "Nawanshahr", + "Nawapur", + "Nedumangad", + "Neem-Ka-Thana", + "Neemuch", + "Nehtaur", + "Nelamangala", + "Nellikuppam", + "Nellore", + "Nepanagar", + "New Delhi", + "Neyveli (TS)", + "Neyyattinkara", + "Nidadavole", + "Nilambur", + "Nilanga", + "Nimbahera", + "Nirmal", + "Niwai", + "Niwari", + "Nizamabad", + "Nohar", + "Noida", + "Nokha", + "Nongstoin", + "Noorpur", + "North Lakhimpur", + "Nowgong", + "Nowrozabad (Khodargama)", + "Nuzvid", + "O\" Valley", + "Obra", + "Oddanchatram", + "Ongole", + "Orai", + "Osmanabad", + "Ottappalam", + "Ozar", + "P.N.Patti", + "Pachora", + "Pachore", + "Pacode", + "Padmanabhapuram", + "Padra", + "Padrauna", + "Paithan", + "Pakaur", + "Palacole", + "Palai", + "Palakkad", + "Palampur", + "Palani", + "Palanpur", + "Palasa Kasibugga", + "Palghar", + "Pali", + "Palia Kalan", + "Palitana", + "Palladam", + "Pallapatti", + "Pallikonda", + "Palwal", + "Palwancha", + "Panagar", + "Panagudi", + "Panaji", + "Panamattom", + "Panchkula", + "Panchla", + "Pandharkaoda", + "Pandharpur", + "Pandhurna", + "PandUrban Agglomeration", + "Panipat", + "Panna", + "Panniyannur", + "Panruti", + "Panvel", + "Pappinisseri", + "Paradip", + "Paramakudi", + "Parangipettai", + "Parasi", + "Paravoor", + "Parbhani", + "Pardi", + "Parlakhemundi", + "Parli", + "Partur", + "Parvathipuram", + "Pasan", + "Paschim Punropara", + "Pasighat", + "Patan", + "Pathanamthitta", + "Pathankot", + "Pathardi", + "Pathri", + "Patiala", + "Patna", + "Patratu", + "Pattamundai", + "Patti", + "Pattran", + "Pattukkottai", + "Patur", + "Pauni", + "Pauri", + "Pavagada", + "Pedana", + "Peddapuram", + "Pehowa", + "Pen", + "Perambalur", + "Peravurani", + "Peringathur", + "Perinthalmanna", + "Periyakulam", + "Periyasemur", + "Pernampattu", + "Perumbavoor", + "Petlad", + "Phagwara", + "Phalodi", + "Phaltan", + "Phillaur", + "Phulabani", + "Phulera", + "Phulpur", + "Phusro", + "Pihani", + "Pilani", + "Pilibanga", + "Pilibhit", + "Pilkhuwa", + "Pindwara", + "Pinjore", + "Pipar City", + "Pipariya", + "Piriyapatna", + "Piro", + "Pithampur", + "Pithapuram", + "Pithoragarh", + "Pollachi", + "Polur", + "Pondicherry", + "Ponnani", + "Ponneri", + "Ponnur", + "Porbandar", + "Porsa", + "Port Blair", + "Powayan", + "Prantij", + "Pratapgarh", + "Prithvipur", + "Proddatur", + "Pudukkottai", + "Pudupattinam", + "Pukhrayan", + "Pulgaon", + "Puliyankudi", + "Punalur", + "Punch", + "Pune", + "Punganur", + "Punjaipugalur", + "Puranpur", + "Puri", + "Purna", + "Purnia", + "PurqUrban Agglomerationzi", + "Purulia", + "Purwa", + "Pusad", + "Puthuppally", + "Puttur", + "Qadian", + "Raayachuru", + "Rabkavi Banhatti", + "Radhanpur", + "Rae Bareli", + "Rafiganj", + "Raghogarh-Vijaypur", + "Raghunathganj", + "Raghunathpur", + "Rahatgarh", + "Rahuri", + "Raiganj", + "Raigarh", + "Raikot", + "Raipur", + "Rairangpur", + "Raisen", + "Raisinghnagar", + "Rajagangapur", + "Rajahmundry", + "Rajakhera", + "Rajaldesar", + "Rajam", + "Rajampet", + "Rajapalayam", + "Rajauri", + "Rajgarh (Alwar)", + "Rajgarh (Churu)", + "Rajgarh", + "Rajgir", + "Rajkot", + "Rajnandgaon", + "Rajpipla", + "Rajpura", + "Rajsamand", + "Rajula", + "Rajura", + "Ramachandrapuram", + "Ramagundam", + "Ramanagaram", + "Ramanathapuram", + "Ramdurg", + "Rameshwaram", + "Ramganj Mandi", + "Ramgarh", + "Ramnagar", + "Ramngarh", + "Rampur Maniharan", + "Rampur", + "Rampura Phul", + "Rampurhat", + "Ramtek", + "Ranaghat", + "Ranavav", + "Ranchi", + "Ranebennuru", + "Rangia", + "Rania", + "Ranibennur", + "Ranipet", + "Rapar", + "Rasipuram", + "Rasra", + "Ratangarh", + "Rath", + "Ratia", + "Ratlam", + "Ratnagiri", + "Rau", + "Raurkela", + "Raver", + "Rawatbhata", + "Rawatsar", + "Raxaul Bazar", + "Rayachoti", + "Rayadurg", + "Rayagada", + "Reengus", + "Rehli", + "Renigunta", + "Renukoot", + "Reoti", + "Repalle", + "Revelganj", + "Rewa", + "Rewari", + "Rishikesh", + "Risod", + "Robertsganj", + "Robertson Pet", + "Rohtak", + "Ron", + "Roorkee", + "Rosera", + "Rudauli", + "Rudrapur", + "Rupnagar", + "Sabalgarh", + "Sadabad", + "Sadalagi", + "Sadasivpet", + "Sadri", + "Sadulpur", + "Sadulshahar", + "Safidon", + "Safipur", + "Sagar", + "Sagara", + "Sagwara", + "Saharanpur", + "Saharsa", + "Sahaspur", + "Sahaswan", + "Sahawar", + "Sahibganj", + "Sahjanwa", + "Saidpur", + "Saiha", + "Sailu", + "Sainthia", + "Sakaleshapura", + "Sakti", + "Salaya", + "Salem", + "Salur", + "Samalkha", + "Samalkot", + "Samana", + "Samastipur", + "Sambalpur", + "Sambhal", + "Sambhar", + "Samdhan", + "Samthar", + "Sanand", + "Sanawad", + "Sanchore", + "Sandi", + "Sandila", + "Sanduru", + "Sangamner", + "Sangareddy", + "Sangaria", + "Sangli", + "Sangole", + "Sangrur", + "Sankarankovil", + "Sankari", + "Sankeshwara", + "Santipur", + "Sarangpur", + "Sardarshahar", + "Sardhana", + "Sarni", + "Sarsod", + "Sasaram", + "Sasvad", + "Satana", + "Satara", + "Sathyamangalam", + "Satna", + "Sattenapalle", + "Sattur", + "Saunda", + "Saundatti-Yellamma", + "Sausar", + "Savanur", + "Savarkundla", + "Savner", + "Sawai Madhopur", + "Sawantwadi", + "Sedam", + "Sehore", + "Sendhwa", + "Seohara", + "Seoni", + "Seoni-Malwa", + "Shahabad", + "Shahabad, Hardoi", + "Shahabad, Rampur", + "Shahade", + "Shahbad", + "Shahdol", + "Shahganj", + "Shahjahanpur", + "Shahpur", + "Shahpura", + "Shajapur", + "Shamgarh", + "Shamli", + "Shamsabad, Agra", + "Shamsabad, Farrukhabad", + "Shegaon", + "Sheikhpura", + "Shendurjana", + "Shenkottai", + "Sheoganj", + "Sheohar", + "Sheopur", + "Sherghati", + "Sherkot", + "Shiggaon", + "Shikaripur", + "Shikarpur, Bulandshahr", + "Shikohabad", + "Shillong", + "Shimla", + "Shirdi", + "Shirpur-Warwade", + "Shirur", + "Shishgarh", + "Shivamogga", + "Shivpuri", + "Sholavandan", + "Sholingur", + "Shoranur", + "Shrigonda", + "Shrirampur", + "Shrirangapattana", + "Shujalpur", + "Siana", + "Sibsagar", + "Siddipet", + "Sidhi", + "Sidhpur", + "Sidlaghatta", + "Sihor", + "Sihora", + "Sikanderpur", + "Sikandra Rao", + "Sikandrabad", + "Sikar", + "Silao", + "Silapathar", + "Silchar", + "Siliguri", + "Sillod", + "Silvassa", + "Simdega", + "Sindagi", + "Sindhagi", + "Sindhnur", + "Singrauli", + "Sinnar", + "Sira", + "Sircilla", + "Sirhind Fatehgarh Sahib", + "Sirkali", + "Sirohi", + "Sironj", + "Sirsa", + "Sirsaganj", + "Sirsi", + "Siruguppa", + "Sitamarhi", + "Sitapur", + "Sitarganj", + "Sivaganga", + "Sivagiri", + "Sivakasi", + "Siwan", + "Sohagpur", + "Sohna", + "Sojat", + "Solan", + "Solapur", + "Sonamukhi", + "Sonepur", + "Songadh", + "Sonipat", + "Sopore", + "Soro", + "Soron", + "Soyagaon", + "Sri Madhopur", + "Srikakulam", + "Srikalahasti", + "Srinagar", + "Srinivaspur", + "Srirampore", + "Srisailam Project (Right Flank Colony) Township", + "Srivilliputhur", + "Sugauli", + "Sujangarh", + "Sujanpur", + "Sullurpeta", + "Sultanganj", + "Sultanpur", + "Sumerpur", + "Sunabeda", + "Sunam", + "Sundargarh", + "Sundarnagar", + "Supaul", + "Surandai", + "Surapura", + "Surat", + "Suratgarh", + "SUrban Agglomerationr", + "Suri", + "Suriyampalayam", + "Suryapet", + "Tadepalligudem", + "Tadpatri", + "Takhatgarh", + "Taki", + "Talaja", + "Talcher", + "Talegaon Dabhade", + "Talikota", + "Taliparamba", + "Talode", + "Talwara", + "Tamluk", + "Tanda", + "Tandur", + "Tanuku", + "Tarakeswar", + "Tarana", + "Taranagar", + "Taraori", + "Tarbha", + "Tarikere", + "Tarn Taran", + "Tasgaon", + "Tehri", + "Tekkalakote", + "Tenali", + "Tenkasi", + "Tenu dam-cum-Kathhara", + "Terdal", + "Tezpur", + "Thakurdwara", + "Thammampatti", + "Thana Bhawan", + "Thane", + "Thanesar", + "Thangadh", + "Thanjavur", + "Tharad", + "Tharamangalam", + "Tharangambadi", + "Theni Allinagaram", + "Thirumangalam", + "Thirupuvanam", + "Thiruthuraipoondi", + "Thiruvalla", + "Thiruvallur", + "Thiruvananthapuram", + "Thiruvarur", + "Thodupuzha", + "Thoubal", + "Thrissur", + "Thuraiyur", + "Tikamgarh", + "Tilda Newra", + "Tilhar", + "Tindivanam", + "Tinsukia", + "Tiptur", + "Tirora", + "Tiruchendur", + "Tiruchengode", + "Tiruchirappalli", + "Tirukalukundram", + "Tirukkoyilur", + "Tirunelveli", + "Tirupathur", + "Tirupati", + "Tiruppur", + "Tirur", + "Tiruttani", + "Tiruvannamalai", + "Tiruvethipuram", + "Tiruvuru", + "Tirwaganj", + "Titlagarh", + "Tittakudi", + "Todabhim", + "Todaraisingh", + "Tohana", + "Tonk", + "Tuensang", + "Tuljapur", + "Tulsipur", + "Tumkur", + "Tumsar", + "Tundla", + "Tuni", + "Tura", + "Uchgaon", + "Udaipur", + "Udaipurwati", + "Udgir", + "Udhagamandalam", + "Udhampur", + "Udumalaipettai", + "Udupi", + "Ujhani", + "Ujjain", + "Umarga", + "Umaria", + "Umarkhed", + "Umbergaon", + "Umred", + "Umreth", + "Una", + "Unjha", + "Unnamalaikadai", + "Unnao", + "Upleta", + "Uran Islampur", + "Uran", + "Uravakonda", + "Urmar Tanda", + "Usilampatti", + "Uthamapalayam", + "Uthiramerur", + "Utraula", + "Vadakkuvalliyur", + "Vadalur", + "Vadgaon Kasba", + "Vadipatti", + "Vadnagar", + "Vadodara", + "Vaijapur", + "Vaikom", + "Valparai", + "Valsad", + "Vandavasi", + "Vaniyambadi", + "Vapi", + "Varanasi", + "Varkala", + "Vasai-Virar", + "Vatakara", + "Vedaranyam", + "Vellakoil", + "Vellore", + "Venkatagiri", + "Veraval", + "Vidisha", + "Vijainagar, Ajmer", + "Vijapur", + "Vijayapura", + "Vijayawada", + "Vijaypur", + "Vikarabad", + "Vikramasingapuram", + "Viluppuram", + "Vinukonda", + "Viramgam", + "Virudhachalam", + "Virudhunagar", + "Visakhapatnam", + "Visnagar", + "Viswanatham", + "Vita", + "Vizianagaram", + "Vrindavan", + "Vyara", + "Wadgaon Road", + "Wadhwan", + "Wadi", + "Wai", + "Wanaparthy", + "Wani", + "Wankaner", + "Wara Seoni", + "Warangal", + "Wardha", + "Warhapur", + "Warisaliganj", + "Warora", + "Warud", + "Washim", + "Wokha", + "Yadgir", + "Yamunanagar", + "Yanam", + "Yavatmal", + "Yawal", + "Yellandu", + "Yemmiganur", + "Yerraguntla", + "Yevla", + "Zaidpur", + "Zamania", + "Zira", + "Zirakpur", + "Zunheboto", + }; +} diff --git a/src/modules/location/data/india/IndiaStates.h b/src/modules/location/data/india/IndiaStates.h new file mode 100644 index 00000000..229a4742 --- /dev/null +++ b/src/modules/location/data/india/IndiaStates.h @@ -0,0 +1,45 @@ +#pragma once + +#include +#include + +namespace faker { + const std::vector indiaStates = { + "Andaman and Nicobar Islands", + "Andra Pradesh", + "Arunachal Pradesh", + "Assam", + "Bihar", + "Chandigarh", + "Chhattisgarh", + "Dadar and Nagar Haveli", + "Daman and Diu", + "Delhi", + "Goa", + "Gujarat", + "Haryana", + "Himachal Pradesh", + "Jammu and Kashmir", + "Jharkhand", + "Karnataka", + "Kerala", + "Lakshadweep", + "Madya Pradesh", + "Maharashtra", + "Manipur", + "Meghalaya", + "Mizoram", + "Nagaland", + "Odisha", + "Pondicherr", + "Punjab", + "Rajasthan", + "Sikkim", + "Tamil Nadu", + "Telangana", + "Tripura", + "Uttar Pradesh", + "Uttarakhand", + "West Bengal", + }; +} diff --git a/src/modules/location/data/india/IndiaStreetSuffixes.h b/src/modules/location/data/india/IndiaStreetSuffixes.h new file mode 100644 index 00000000..3534b3f3 --- /dev/null +++ b/src/modules/location/data/india/IndiaStreetSuffixes.h @@ -0,0 +1,44 @@ +#pragma once + +#include +#include + +namespace faker { + const std::vector indiaStreetSuffixes = { + "Pur", + "Puri", + "Halli", + "Wadi", + "Nagar", + "Abad", + "Palle", + "Pura", + "Patti", + "Uru", + "Oor", + "Gaon", + "Puram", + "Ong", + "Street", + "Park", + "Radial", + "Junction", + "Cove", + "Hollow", + "Rapids", + "Cheri", + "Road", + "Padra", + "Nagara", + "Athani", + "Ridges", + "Skyway", + "Crossing", + "Plains", + "Parkway", + "Points", + "Falls", + "Brooks", + "Theru", + }; +}