Public release from ruodoo-project: 19.0 - 2026-05-10 21:19:01 UTC
This commit is contained in:
30
tests/__manifest__.py
Normal file
30
tests/__manifest__.py
Normal file
@ -0,0 +1,30 @@
|
||||
{
|
||||
'name': 'DOB Tests',
|
||||
'version': '19.0.1.0.0',
|
||||
'author': 'Mk.Lab',
|
||||
'description': 'Central test suite for all custom DOB modules.',
|
||||
'depends': [
|
||||
'account_bank_statement_1c_import',
|
||||
'account_move_templates',
|
||||
'account_move_templates_invoice',
|
||||
'base_tier_validation',
|
||||
'base_user_role',
|
||||
'docx_report',
|
||||
'docx_report_generation',
|
||||
'ir_rule_protected',
|
||||
'l10n_ru_advance_payments',
|
||||
'l10n_ru_attorney',
|
||||
'l10n_ru_contract',
|
||||
'l10n_ru_contract_account',
|
||||
'l10n_ru_contract_sale',
|
||||
'l10n_ru_doc',
|
||||
'l10n_ru_upd_xml',
|
||||
'mklab_base_indicators',
|
||||
'mklab_dms_document',
|
||||
'mklab_project_task_indicators',
|
||||
'access_apps',
|
||||
'ir_rule_protected',
|
||||
],
|
||||
'installable': True,
|
||||
'license': 'LGPL-3',
|
||||
}
|
||||
116
tests/odoo-base-test.md
Normal file
116
tests/odoo-base-test.md
Normal file
@ -0,0 +1,116 @@
|
||||
# Odoo 19 Base Tests Report
|
||||
|
||||
**Команда запуска:**
|
||||
```bash
|
||||
odoo --test-enable --stop-after-init -d database_name --update base --test-tags base
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Итог
|
||||
|
||||
```
|
||||
Module base: 23 failures, 26 errors of 979 tests
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Классификация ошибок
|
||||
|
||||
### ✅ Исправлено нами
|
||||
|
||||
#### `access_restricted` — ImportError при загрузке тестов
|
||||
|
||||
**Файл:** `myaddons/dob/access_restricted/tests/test_fields_get.py`
|
||||
|
||||
**Причина:** Функция `name_selection_groups` удалена из `odoo.addons.base.models.res_users` в Odoo 19.
|
||||
|
||||
**Исправление:** Заменена локальной функцией `_sel_groups_field_name`, которая генерирует имя поля `sel_groups_X_Y_Z` без импорта из ядра.
|
||||
|
||||
---
|
||||
|
||||
### ⚠️ Ожидаемое поведение (не баг, не трогаем)
|
||||
|
||||
#### `test_user_has_group` — лишняя группа в `all_group_ids`
|
||||
|
||||
**Тесты:** `TestHasGroup.test_demote_user`, `TestHasGroup.test_implied_groups`
|
||||
|
||||
**Причина:** Модуль `access_apps` добавляет группу `group_allow_apps_only_from_settings` с `implied_ids = base.group_system`. Это расширяет иерархию групп, тест ожидает фиксированное количество групп без учёта сторонних модулей.
|
||||
|
||||
**Вывод:** Поведение корректное, тест `base` не учитывает кастомные модули.
|
||||
|
||||
---
|
||||
|
||||
#### `test_views` — `ViewModifiers.test_17_attrs_groups_validation`
|
||||
|
||||
**Причина:** Та же — `access_apps` меняет иерархию `group_system`, что влияет на валидацию групп в представлениях.
|
||||
|
||||
**Вывод:** Ожидаемое поведение при установленном `access_apps`.
|
||||
|
||||
---
|
||||
|
||||
#### `test_ir_model` — `TestIrModelInherit.test_inherit` (`3 != 1`)
|
||||
|
||||
**Причина:** Тест ожидает ровно 1 запись в `ir.model.inherit` для тестовой модели, но наши модули (`access_restricted`, `base_user_role`, `web_debranding`, `base_tier_validation`, `access_settings_menu`, `l10n_ru_doc`, `l10n_ru_upd_xml`) расширяют `res.users` и `res.partner`, увеличивая количество записей.
|
||||
|
||||
**Вывод:** Ожидаемое поведение при установленных модулях с `_inherit`.
|
||||
|
||||
---
|
||||
|
||||
### 🔧 Проблемы окружения (Docker / отсутствие зависимостей)
|
||||
|
||||
#### `test_cli` — 17 ошибок
|
||||
|
||||
**Тесты:** `TestCommand.test_help`, `test_help_subcommand`, `test_shell`, `test_unknown_command`, `test_upgrade_code_*`
|
||||
|
||||
**Причина:** CLI-тесты запускают subprocess с TTY, который недоступен внутри Docker-контейнера без флага `-t`.
|
||||
|
||||
---
|
||||
|
||||
#### `test_acl` + `test_res_partner_merge` — `KeyError: 'employee_ids'`
|
||||
|
||||
**Причина:** Модуль `hr` установлен в базе и добавляет поле `employee_ids` на `res.partner`. Domain в ACL-правилах ссылается на это поле, тест не ожидает его наличия.
|
||||
|
||||
**Вывод:** Не наша вина, артефакт установленного `hr`.
|
||||
|
||||
---
|
||||
|
||||
#### `test_profiler` — 2 ошибки
|
||||
|
||||
**Тесты:** `TestPerformance.test_traces_async_memory_optimisation`, `TestSyncRecorder.test_sync_recorder`
|
||||
|
||||
**Причина:** Инфраструктурные тесты профилировщика, чувствительные к окружению выполнения.
|
||||
|
||||
---
|
||||
|
||||
#### `test_test_retry` — 8 ошибок
|
||||
|
||||
**Причина:** Тесты проверяют механизм retry самого тест-фреймворка. Ожидаемые падения (тесты специально написаны чтобы падать).
|
||||
|
||||
---
|
||||
|
||||
#### `test_translate` — 9 ошибок
|
||||
|
||||
**Тесты:** `TestTranslation.test_110_search_es`, `TestTranslationWrite.*`
|
||||
|
||||
**Причина:** Отсутствуют установленные языки (es, fr) в тестовой базе.
|
||||
|
||||
---
|
||||
|
||||
## Сводная таблица
|
||||
|
||||
| Группа тестов | Failures | Errors | Причина | Действие |
|
||||
|---|---|---|---|---|
|
||||
| `test_acl` | 0 | 1 | `hr` модуль / `employee_ids` | Не трогаем |
|
||||
| `test_cli` | 2 | 15 | Нет TTY в Docker | Не трогаем |
|
||||
| `test_ir_model` | 1 | 0 | Наши `_inherit` расширения | Ожидаемо |
|
||||
| `test_profiler` | 2 | 0 | Окружение | Не трогаем |
|
||||
| `test_res_partner_merge` | 0 | 1 | `hr` модуль | Не трогаем |
|
||||
| `test_test_retry` | 4 | 4 | Намеренные падения фреймворка | Не трогаем |
|
||||
| `test_translate` | 9 | 0 | Нет языков в БД | Не трогаем |
|
||||
| `test_user_has_group` | 2 | 0 | `access_apps` implied groups | Ожидаемо |
|
||||
| `test_views` | 1 | 0 | `access_apps` implied groups | Ожидаемо |
|
||||
| `access_restricted` (import) | — | 1 | `name_selection_groups` удалена | ✅ Исправлено |
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user