A test assignment for the Junior Python Developer job. Aleksey Kirpa.
├── core # General project directory
│ ├── user_interfaces # User interaction interfaces
│ │ └── telegram_bot.py # User action handlers in the Telegram bot
│ ├── services.py # Business logic
│ ├── settings.py # Project Settings
│ └── types.py # Data types used, contains only a class with dialog handling
├── tests # Test directory
│ ├── __init__.py
│ └── tests.py # Tests
├── env.example # Environment variables
├── .gitignore # Ignored files and directories
├── main.py # Telegram bot launch file
├── README.md # Instructions for using the project
└── requirements.txt # Project dependencies
- Create a virtual environment
python3 -m venv venv
- Activate the virtual environment
source venv/bin/activate
- Set the dependencies
pip install -r requirements.txt
- Copy the file with environment variables and write your own variables
cp .env.example .env
# Telegram Bot Token
TOKEN=your-own-telegram-token
python main.py
coverage run -m unittest
coverage report -m