From a4850c4407b10c06144c5765e1783e558a0c24bc Mon Sep 17 00:00:00 2001 From: Tiendil Date: Tue, 17 Jan 2012 01:47:06 +0300 Subject: [PATCH] russian pagan names added --- .../fixtures/test_from_list_generator.json | 12 +- pynames/generators.py | 2 +- pynames/russian/__init__.py | 9 + .../russian/fixtures/pagan_names_list.json | 189 ++++++++++++++++++ pynames/tests.py | 8 +- 5 files changed, 209 insertions(+), 11 deletions(-) create mode 100644 pynames/russian/fixtures/pagan_names_list.json diff --git a/pynames/fixtures/test_from_list_generator.json b/pynames/fixtures/test_from_list_generator.json index e0a20a2..4c29d59 100644 --- a/pynames/fixtures/test_from_list_generator.json +++ b/pynames/fixtures/test_from_list_generator.json @@ -1,29 +1,29 @@ { - "names": [ {"native_language": "ru", + "names": [ {"lang": "ru", "genders": {"m": {"ru": "ru_m_name_1", "en": "en_m_name_1"}}}, - {"native_language": "ru", + {"lang": "ru", "genders": {"f": {"ru": "ru_f_name_2", "en": "en_f_name_2"}}}, - {"native_language": "ru", + {"lang": "ru", "genders": {"f": {"ru": "ru_f_name_3", "en": "en_f_name_3"}}}, - {"native_language": "ru", + {"lang": "ru", "genders": {"m": {"ru": "ru_m_name_4", "en": "en_m_name_4"}, "f": {"ru": "ru_f_name_4", "en": "en_f_name_4"}}}, - {"native_language": "ru", + {"lang": "ru", "genders": {"m": {"ru": "ru_m_name_5", "en": "en_m_name_5"}, "f": {"ru": "ru_f_name_5", "en": "en_f_name_5"}}}, - {"native_language": "ru", + {"lang": "ru", "genders": {"m": {"ru": "ru_m_name_5", "en": "en_m_name_5"}, "f": {"ru": "ru_f_name_5", diff --git a/pynames/generators.py b/pynames/generators.py index de8c1ea..7680692 100644 --- a/pynames/generators.py +++ b/pynames/generators.py @@ -33,7 +33,7 @@ class Name(object): __slots__ = ('genders', 'native_language', 'translations') def __init__(self, data): - self.native_language = data['native_language'] + self.native_language = data['lang'] self.genders = frozenset(data['genders'].keys()) self.translations = data['genders'] diff --git a/pynames/russian/__init__.py b/pynames/russian/__init__.py index 0fa2f8b..4d4392f 100644 --- a/pynames/russian/__init__.py +++ b/pynames/russian/__init__.py @@ -2,4 +2,13 @@ import os +from ..generators import FromListGenerator + +FIXTURES_DIR = os.path.join(os.path.dirname(__file__), 'fixtures') + +class PaganNamesGenerator(FromListGenerator): + SOURCE = os.path.join(FIXTURES_DIR, 'pagan_names_list.json') + + + diff --git a/pynames/russian/fixtures/pagan_names_list.json b/pynames/russian/fixtures/pagan_names_list.json new file mode 100644 index 0000000..8443a71 --- /dev/null +++ b/pynames/russian/fixtures/pagan_names_list.json @@ -0,0 +1,189 @@ +{ + "source": "http://paganism.msk.ru/name/name.htm", + "names": [ {"lang": "ru", "genders": {"m": {"ru": "Бажен"}, "f": {"ru": "Бажена"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Белослав"}, "f": {"ru": "Белослава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Беримир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Бериславe"}, "f": {"ru": "Берислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Благослав"}, "f": {"ru": "Благослава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Блуд"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Богдан"}, "f": {"ru": "Богдана"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Божко"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Боголюб"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Богомил"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Богумил"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Божидар"}, "f": {"ru": "Божидара"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Болеслав"}, "f": {"ru": "Болеслава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Боримира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Борислав"}, "f": {"ru": "Борислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Борщ"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Боян"}, "f": {"ru": "Бояна"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Братислав"}, "f": {"ru": "Братислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Бронислав"}, "f": {"ru": "Бронислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Брячислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Будимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Велимир"}, "f": {"ru": "Велимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Велимудр"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Велислав"}, "f": {"ru": "Велислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Венцеслав"}, "f": {"ru": "Венцеслава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Вера"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Веселин"}, "f": {"ru": "Веселина"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Весела"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Владимир"}, "f": {"ru": "Владимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Володимир"}, "f": {"ru": "Володимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Владислав"}, "f": {"ru": "Владислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Володислав"}, "f": {"ru": "Володислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Воислав"}, "f": {"ru": "Воислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Волк"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ворон"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Воротислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Всеволод"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Всемил"}, "f": {"ru": "Всемила"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Всеслав"}, "f": {"ru": "Всеслава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Сеслав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Вторак"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Вторуша"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Вячеслав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Вацслав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Вышеслав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Годослав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Годлав"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Голуба"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Горазд"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Горислав"}, "f": {"ru": "Горислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Горыня"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Гостемил"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Гостомысл"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Градимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Градислав"}, "f": {"ru": "Градислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Гранислав"}, "f": {"ru": "Гранислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Гремислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Гудислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Дарен"}, "f": {"ru": "Дарена"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Дарина"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Дара"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Девятко"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Доброгнев"}, "f": {"ru": "Доброгнева"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Добролюб"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Добромил"}, "f": {"ru": "Добромила"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Добромир"}, "f": {"ru": "Добромира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Добромысл"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Доброслав"}, "f": {"ru": "Доброслава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Доброжир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Домаслав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Драгомир"}, "f": {"ru": "Драгомира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Дубыня"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Дружина"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ёрш"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Жаворонок"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ждан"}, "f": {"ru": "Ждана"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Жизномир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Жировит"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Жирослав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Заяц"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Звенислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Зима"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Златомир"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Златоцвета"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Злоба"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Избыгнев"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Изяслав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Искрен"}, "f": {"ru": "Искра"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Искро"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Истислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Истома"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Казимир"}, "f": {"ru": "Казимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Кощей"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Красимир"}, "f": {"ru": "Красимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Крив"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Лада"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ладимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ладислав"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Лебедь"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Лудислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Лучезар"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Любим"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Любовь"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Любава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Любомила"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Любомир"}, "f": {"ru": "Любомира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Любомысл"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Любослав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Людмил"}, "f": {"ru": "Людмила"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Мал"}, "f": {"ru": "Малуша"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Малой"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Младен"}, "f": {"ru": "Млада"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Мечислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Милан"}, "f": {"ru": "Милана"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Милен"}, "f": {"ru": "Милена"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Милава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Милада"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Милица"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Умила"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Милован"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Милорад"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Милослав"}, "f": {"ru": "Милослава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Миролюб"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Мирослав"}, "f": {"ru": "Мирослава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Молчан"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Мстислав"}, "f": {"ru": "Мстислава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Надежда"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Надежа"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Невзор"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Некрас"}, "f": {"ru": "Некраса"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Орел"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Осьмой"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Осьмуша"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Передслава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Предслава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Пересвет"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Путимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Путислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Радигост"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Радимир"}, "f": {"ru": "Радимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Радомир"}, "f": {"ru": "Радомира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Радислав"}, "f": {"ru": "Радислава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Радмила"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Радосвета"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Радость"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Рада"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Разумник"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ратибор"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ратмир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Родислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ростислав"}, "f": {"ru": "Ростислава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Сбыслава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Светислав"}, "f": {"ru": "Светислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Светлан"}, "f": {"ru": "Светлана"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Световид"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Свентовид"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Светозар"}, "f": {"ru": "Светозара"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Светлозар"}, "f": {"ru": "Светлозара"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Святогор"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Святополк"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Святослав"}, "f": {"ru": "Святослава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Славомир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Соловей"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Сом"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Снежана"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Станимир"}, "f": {"ru": "Станимира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Станислав"}, "f": {"ru": "Станислава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Стоян"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Судимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Судислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Твердимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Твердислав"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Творимир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Тихомир"}, "f": {"ru": "Тихомира"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Тур"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Храбр"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Часлав"}, "f": {"ru": "Часлава"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Чеслав"}, "f": {"ru": "Чеслава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Чернава"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Чернавка"}}}, + {"lang": "ru", "genders": {"f": {"ru": "Щука"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ярило"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Яромир"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ярополк"}}}, + {"lang": "ru", "genders": {"m": {"ru": "Ярослав"}, "f": {"ru": "Ярослава"}}} + ] +} \ No newline at end of file diff --git a/pynames/tests.py b/pynames/tests.py index 8c74730..a1dded1 100644 --- a/pynames/tests.py +++ b/pynames/tests.py @@ -3,21 +3,21 @@ import os import unittest -from .generators import Name, GENDER, LANGUAGE, FromListGenerator, PynamesException +from .generators import Name, GENDER, LANGUAGE, FromListGenerator FIXTURES_DIR = os.path.join(os.path.dirname(__file__), 'fixtures') class TestName(unittest.TestCase): def test_base(self): - name = Name({'native_language': 'ru', + name = Name({'lang': 'ru', 'genders': {'m': {'ru': 'ru_name'}}}) self.assertEqual(unicode(name), 'ru_name') self.assertEqual(name.get_for(GENDER.MALE, LANGUAGE.RU), 'ru_name') self.assertEqual(name.get_for(GENDER.MALE), 'ru_name') def test_genders(self): - name = Name({'native_language': 'ru', + name = Name({'lang': 'ru', 'genders': {'m': {'ru': 'ru_m_name'}, 'f': {'ru': 'ru_f_name'}}}) self.assertEqual(unicode(name), 'ru_m_name') @@ -25,7 +25,7 @@ class TestName(unittest.TestCase): self.assertEqual(name.get_for(GENDER.FEMALE, LANGUAGE.RU), 'ru_f_name') def test_languages(self): - name = Name({'native_language': 'ru', + name = Name({'lang': 'ru', 'genders': {'m': {'ru': 'ru_m_name', 'en': 'en_m_name'}, 'f': {'ru': 'ru_f_name',