diff --git a/faker/providers/geo/sk_SK/__init__.py b/faker/providers/geo/sk_SK/__init__.py new file mode 100644 index 0000000000..0a104c879f --- /dev/null +++ b/faker/providers/geo/sk_SK/__init__.py @@ -0,0 +1,62 @@ +from .. import Provider as GeoProvider + + +class Provider(GeoProvider): + # Source: + # https://latitude.to/map/sk/slovakia/cities/ + land_coords = ( + ("48.14816", "17.10674", "Bratislava", "SK", "Europe/Bratislava"), + ("48.71395", "21.25808", "Košice", "SK", "Europe/Košice"), + ("48.99839", "21.23393", "Prešov", "SK", "Europe/Prešov"), + ("48.30763", "18.08453", "Nitra", "SK", "Europe/Nitra"), + ("49.22315", "18.73941", "Žilina", "SK", "Europe/Žilina"), + ("48.73946", "19.15349", "Banská Bystrica", "SK", "Europe/Banská Bystrica"), + ("48.37741", "17.58723", "Trnava", "SK", "Europe/Trnava"), + ("49.06651", "18.92399", "Martin", "SK", "Europe/Martin"), + ("48.89452", "18.04436", "Trenčín", "SK", "Europe/Trenčín"), + ("49.06144", "20.29798", "Poprad", "SK", "Europe/Poprad"), + ("48.77446", "18.6275", "Prievidza", "SK", "Europe/Prievidza"), + ("48.57442", "19.15324", "Zvolen", "SK", "Europe/Zvolen"), + ("49.12153", "18.42169", "Považská Bystrica", "SK", "Europe/Považská Bystrica"), + ("47.98544", "18.16195", "Nové Zámky", "SK", "Europe/Nové Zámky"), + ("48.75434", "21.9195", "Michalovce", "SK", "Europe/Michalovce"), + ("48.94464", "20.56153", "Spišská Nová Ves", "SK", "Europe/Spišská Nová Ves"), + ("48.21563", "18.60705", "Levice", "SK", "Europe/Levice"), + ("47.76356", "18.12263", "Komárno", "SK", "Europe/Komárno"), + ("48.93707", "21.91625", "Humenné", "SK", "Europe/Humenné"), + ("49.08061", "19.62218", "Liptovský Mikuláš", "SK", "Europe/Liptovský Mikuláš"), + ("49.29175", "21.27271", "Bardejov", "SK", "Europe/Bardejov"), + ("49.0748", "19.30751", "Ružomberok", "SK", "Europe/Ružomberok"), + ("48.59479", "17.82591", "Piešťany", "SK", "Europe/Piešťany"), + ("48.33249", "19.66708", "Lučenec", "SK", "Europe/Lučenec"), + ("48.95981", "18.16634", "Dubnica nad Váhom", "SK", "Europe/Dubnica nad Váhom"), + ("48.38284", "20.02239", "Rimavská Sobota", "SK", "Europe/Rimavská Sobota"), + ("49.43503", "18.78895", "Čadca", "SK", "Europe/Čadca"), + ("48.15127", "17.88062", "Šaľa", "SK", "Europe/Šaľa"), + ("48.62861", "18.38455", "Partizánske", "SK", "Europe/Partizánske"), + ("48.43174", "17.8031", "Hlohovec", "SK", "Europe/Hlohovec"), + ("47.99268", "17.61211", "Dunajská Streda", "SK", "Europe/Dunajská Streda"), + ("48.88836", "21.68479", "Vranov nad Topľou", "SK", "Europe/Vranov nad Topľou"), + ("48.62858", "21.71954", "Trebišov", "SK", "Europe/Trebišov"), + ("48.98857", "22.15099", "Snina", "SK", "Europe/Snina"), + ("48.67922", "17.36697", "Senica", "SK", "Europe/Senica"), + ("48.75763", "17.8309", "Nové Mesto nad Váhom", "SK", "Europe/Nové Mesto nad Váhom"), + ("49.13571", "20.43352", "Kežmarok", "SK", "Europe/Kežmarok"), + ("48.28986", "17.26664", "Pezinok", "SK", "Europe/Pezinok"), + ("48.80431", "19.63631", "Brezno", "SK", "Europe/Brezno"), + ("49.20983", "19.30341", "Dolný Kubín", "SK", "Europe/Dolný Kubín"), + ("48.59184", "18.84958", "Žiar nad Hronom", "SK", "Europe/Žiar nad Hronom"), + ("48.66009", "20.53758", "Rožňava", "SK", "Europe/Rožňava"), + ("48.7213", "18.25754", "Bánovce nad Bebravou", "SK", "Europe/Bánovce nad Bebravou"), + ("49.12494", "18.32597", "Púchov", "SK", "Europe/Púchov"), + ("48.7276", "18.76012", "Handlová", "SK", "Europe/Handlová"), + ("48.43604", "17.02188", "Malacky", "SK", "Europe/Malacky"), + ("49.3", "18.78333", "Kysucké Nové Mesto", "SK", "Europe/Kysucké Nové Mesto"), + ("48.19001", "17.72747", "Galanta", "SK", "Europe/Galanta"), + ("49.29859", "20.6862", "Stará Ľubovňa", "SK", "Europe/Stará Ľubovňa"), + ("48.38553", "18.40063", "Zlaté Moravce", "SK", "Europe/Zlaté Moravce"), + ("48.56082", "19.41954", "Detva", "SK", "Europe/Detva"), + ("48.8449", "17.22635", "Skalica", "SK", "Europe/Skalica"), + ("48.21951", "17.40043", "Senec", "SK", "Europe/Senec"), + ("49.02173", "20.59212", "Levoča", "SK", "Europe/Levoča"), + ) diff --git a/tests/providers/test_geo.py b/tests/providers/test_geo.py index fe16651bf6..2f0f678e87 100644 --- a/tests/providers/test_geo.py +++ b/tests/providers/test_geo.py @@ -80,6 +80,22 @@ def test_location_on_land_coords_only(self): assert Decimal(loc[1]) +class TestSkSk(unittest.TestCase): + def setUp(self): + self.fake = Faker("sk_SK") + Faker.seed(0) + + def test_location_on_land(self): + loc = self.fake.location_on_land() + assert isinstance(loc, tuple) + assert len(loc) == 5 + assert Decimal(loc[0]) # Should be able to cast first two elements of tuple to Decimal + assert Decimal(loc[1]) + assert isinstance(loc[2], str) # Place is a string + assert isinstance(loc[3], str) # Country code is a string + assert len(loc[3]) == 2 # Country code is two letters + assert isinstance(loc[4], str) # Timezone is a string + class TestCsCz(unittest.TestCase): def setUp(self): self.fake = Faker("cs_CZ")