| Summary: | Wine-tests: не приходят на почту сообщения об ошибках в классе wine_repository | ||
|---|---|---|---|
| Product: | [Свободные проекты (Open source projects)] WINE-tests | Reporter: | Виталий Перов <vitperov> |
| Component: | Общее | Assignee: | Виталий Перов <vitperov> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | minor | ||
| Priority: | P4 | CC: | baraka, lav |
| Version: | не указана | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | All | ||
| Whiteboard: | |||
| Заявки RT: | Связано с: | ||
| Дата напоминания: | |||
| Bug Depends on: | |||
| Bug Blocks: | 6264, 6417 | ||
|
Description
Виталий Перов
2010-10-25 18:03:11 MSD
Предлагаю наследоваться от обобщённого класса логгер. А он уже наследуется от классов file_logger (нынешний класс logger) и report_by_mail. file_logger один на всю программу, поэтому можно его сразу инициализировать. report_by_mail должен быть уникальным для каждого патча, поэтому сначала добавлять неинициализированный, а потом, при создании класса git_patch инициализировать его. Когда git_patch начинает работу с wine_repository он должен передать/замещать указатель на инициализированную для себя структуру report_by_mail. И logger класса wine_repository будет передавать сообщения через неё. Вопрос только как делать report_by_mail - как член класса, или наследоваться от него? добавил реализацию классов logger и file_logger. Сейчас поведение должно остаться прежним. Надо проверить. (In reply to comment #2) > добавил реализацию классов logger и file_logger. > Сейчас поведение должно остаться прежним. > Надо проверить. > Проверил. Переделал. Работает Вместо наследования добавил инициализацию класса send_mail в классе logger. Убрал наследования из класса git_patch. Прежнее поведение поменяться не должно Пока не работает:
File "/srv/vitperov/Projects/tests/logger.py", line 94, in _send_mail_report
self._mail_report.set_mail_subject(subject)
AttributeError: report_by_mail instance has no attribute 'set_mail_subject'
Исправил. Работает Сделал передачу ссылки на mail_logger из wine_patch в wine_repository. Теперь wine_repository тоже отправляет дебаг на почту. Проверил. Работает. |