Add new scenario ПроверкаКорректностиXML
Добавлен новый сценарий валидации XML-файла без логики
Надо добавить тестов для каждого сценария
Надо добавить тестов для каждого сценария
Разделить я могу, но по вопросам тестов - я не силен. Всё хочу научиться, но пока не знаю как приступить.
@Kirill Можно сделать по аналогии с другими тестами
Walkthrough
Добавлены два новых модуля сценариев обработки: для проверки дублей уникальных идентификаторов (UUID) в файлах EDT и для валидации XML-корректности конфигурационных файлов. Каждый модуль экспортирует функцию получения названия сценария и точку входа для обработки файлов с логированием и проверками.
Changes
| Cohort / File(s) | Сводка изменений |
|---|---|
Сценарии проверки метаданных src/СценарииОбработки/ПроверкаДублейУникальныхИдентификаторов.os, src/СценарииОбработки/ПроверкаКорректностиXML.os |
Добавлены два новых модуля сценариев. Каждый экспортирует функции ИмяСценария() для возврата названия сценария и ОбработатьФайл() для обработки файлов. Первый модуль выполняет проверку дублей UUID в файлах метаданных, второй — валидацию XML-корректности конфигурационных файлов с логированием ошибок. |
Sequence Diagram
sequenceDiagram
participant Client
participant Scenario as Сценарий
participant Checker as Проверка
participant Logger as Логирование
Client->>Scenario: Получить имя сценария
Scenario-->>Client: Возврат названия
Client->>Scenario: ОбработатьФайл(файл, каталог, параметры)
Scenario->>Logger: Инициализировать лог
Scenario->>Checker: Проверить, требует ли файл обработку
alt Требует обработку
Checker->>Checker: Выполнить проверку (UUID или XML)
Checker->>Logger: Логировать результат
alt Обнаружена ошибка
Checker-->>Scenario: Выброс исключения
Scenario-->>Client: Ошибка
else Успех
Scenario-->>Client: Истина
end
else Не требует обработку
Scenario-->>Client: Ложь
end
Estimated code review effort
🎯 2 (Simple) | ⏱️ ~12 минут
- Оба модуля следуют одинаковому паттерну с экспортированными функциями и вспомогательными процедурами
- Логика проверки относительно прямолинейна: фильтрация типов файлов, обработка с логированием, выброс исключений при ошибках
- Рекомендуется внимание на корректность regex-выражений для извлечения UUID и обработку исключений при чтении XML
Poem
🐰 Новые сценарии скачут в исходник,
Проверяя UUID — помощник-помощник!
XML валидируют с радостью, крутя,
Логируют ошибки, не бросив дежурства!
Порядок в коде, как в кроличьей норке,
Теперь всё работает с чистой улыбкой! 🌟
Pre-merge checks and finishing touches
❌ Failed checks (1 warning)
| Check name | Status | Explanation | Resolution |
|---|---|---|---|
| Docstring Coverage | ⚠️ Warning | Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. | You can run @coderabbitai generate docstrings to improve docstring coverage. |
✅ Passed checks (2 passed)
| Check name | Status | Explanation |
|---|---|---|
| Description Check | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled. |
| Title check | ✅ Passed | Заголовок соответствует основному изменению: добавлен новый сценарий ПроверкаКорректностиXML, что точно отражено в названии. Однако в PR фактически добавлены два сценария, и заголовок упоминает только один из них. |
✨ Finishing touches
🧪 Generate unit tests (beta)
- [ ] Create PR with unit tests
- [ ] Post copyable unit tests in a comment
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands and usage tips.