├── .gitignore ├── .travis.yml ├── .travis └── deploy_key.enc ├── Dockerfile ├── README.md ├── application ├── custom_mongo_client.py ├── data_validator.py ├── decorators │ ├── exception_handler.py │ └── response_cacher.py ├── handlers │ ├── get_birthdays_handler.py │ ├── get_percentile_age_handler.py │ ├── patch_citizen │ │ ├── patch_citizen_handler.py │ │ └── update_relatives.py │ ├── post_import_handler.py │ └── shared.py ├── schemas │ ├── citizen_patch_schema.json │ └── import_schema.json └── service.py ├── docker-compose.yml ├── index.py ├── requirements.txt └── tests ├── birthdays_get_tests.py ├── citizen_patch_tests.py ├── citizen_patch_validator_tests.py ├── citizens_get_tests.py ├── decorators_tests ├── __init__.py ├── exception_handler_tests.py └── response_cacher_tests.py ├── handlers_tests ├── __init__.py ├── get_birthdays_handler_tests.py ├── get_percentile_age_handler_tests.py ├── patch_citizen_handler_tests.py ├── post_import_handler_tests.py ├── shared_tests.py └── update_relatives_tests.py ├── import_post_tests.py ├── import_validator_tests.py ├── json ├── citizen_patch.json └── import.json ├── percentile_age_get_tests.py └── test_utils.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/.travis.yml -------------------------------------------------------------------------------- /.travis/deploy_key.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/.travis/deploy_key.enc -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/Dockerfile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/README.md -------------------------------------------------------------------------------- /application/custom_mongo_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/custom_mongo_client.py -------------------------------------------------------------------------------- /application/data_validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/data_validator.py -------------------------------------------------------------------------------- /application/decorators/exception_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/decorators/exception_handler.py -------------------------------------------------------------------------------- /application/decorators/response_cacher.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/decorators/response_cacher.py -------------------------------------------------------------------------------- /application/handlers/get_birthdays_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/handlers/get_birthdays_handler.py -------------------------------------------------------------------------------- /application/handlers/get_percentile_age_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/handlers/get_percentile_age_handler.py -------------------------------------------------------------------------------- /application/handlers/patch_citizen/patch_citizen_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/handlers/patch_citizen/patch_citizen_handler.py -------------------------------------------------------------------------------- /application/handlers/patch_citizen/update_relatives.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/handlers/patch_citizen/update_relatives.py -------------------------------------------------------------------------------- /application/handlers/post_import_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/handlers/post_import_handler.py -------------------------------------------------------------------------------- /application/handlers/shared.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/handlers/shared.py -------------------------------------------------------------------------------- /application/schemas/citizen_patch_schema.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/schemas/citizen_patch_schema.json -------------------------------------------------------------------------------- /application/schemas/import_schema.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/schemas/import_schema.json -------------------------------------------------------------------------------- /application/service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/application/service.py -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /index.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/index.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/requirements.txt -------------------------------------------------------------------------------- /tests/birthdays_get_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/birthdays_get_tests.py -------------------------------------------------------------------------------- /tests/citizen_patch_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/citizen_patch_tests.py -------------------------------------------------------------------------------- /tests/citizen_patch_validator_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/citizen_patch_validator_tests.py -------------------------------------------------------------------------------- /tests/citizens_get_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/citizens_get_tests.py -------------------------------------------------------------------------------- /tests/decorators_tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/decorators_tests/exception_handler_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/decorators_tests/exception_handler_tests.py -------------------------------------------------------------------------------- /tests/decorators_tests/response_cacher_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/decorators_tests/response_cacher_tests.py -------------------------------------------------------------------------------- /tests/handlers_tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/handlers_tests/get_birthdays_handler_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/handlers_tests/get_birthdays_handler_tests.py -------------------------------------------------------------------------------- /tests/handlers_tests/get_percentile_age_handler_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/handlers_tests/get_percentile_age_handler_tests.py -------------------------------------------------------------------------------- /tests/handlers_tests/patch_citizen_handler_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/handlers_tests/patch_citizen_handler_tests.py -------------------------------------------------------------------------------- /tests/handlers_tests/post_import_handler_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/handlers_tests/post_import_handler_tests.py -------------------------------------------------------------------------------- /tests/handlers_tests/shared_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/handlers_tests/shared_tests.py -------------------------------------------------------------------------------- /tests/handlers_tests/update_relatives_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/handlers_tests/update_relatives_tests.py -------------------------------------------------------------------------------- /tests/import_post_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/import_post_tests.py -------------------------------------------------------------------------------- /tests/import_validator_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/import_validator_tests.py -------------------------------------------------------------------------------- /tests/json/citizen_patch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/json/citizen_patch.json -------------------------------------------------------------------------------- /tests/json/import.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/json/import.json -------------------------------------------------------------------------------- /tests/percentile_age_get_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/percentile_age_get_tests.py -------------------------------------------------------------------------------- /tests/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KonyshevArtem/yandex-academy-task/HEAD/tests/test_utils.py --------------------------------------------------------------------------------