- roles.steps.ts step08: было «задокументированный gap», стало реальная проверка — кастомная роль без ProductsEdit → 403 на PUT товара, GET → 200. Сценарий roles зелёный 8/8. - RateLimiting:* конфиг (Enabled/PerMinute/PerHour): тесты с общим loopback-IP поднимают/выключают лимит, чтобы повторные логины не упирались в 429. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
29 lines
1.5 KiB
YAML
29 lines
1.5 KiB
YAML
name: roles
|
||
description: |
|
||
Роли сотрудников (ТЗ 2.7.2): системные роли созданы при bootstrap и не
|
||
удаляются; кастомная роль создаётся/редактируется; роль, занятая
|
||
сотрудниками, не удаляется (409); неиспользуемая удаляется. Permission-based
|
||
авторизация на эндпоинтах enforced (P0-5): роль без ProductsEdit → 403 на PUT товара.
|
||
|
||
preconditions:
|
||
reset_db: true
|
||
smoke_login_super_admin: true
|
||
|
||
steps:
|
||
- id: step01_bootstrap
|
||
title: "Орг A + логин админа"
|
||
- id: step02_system_roles_exist
|
||
title: "Системные роли (IsSystem=true) созданы — минимум 4"
|
||
- id: step03_create_custom_role
|
||
title: "Создание кастомной роли с правами → права сохранены"
|
||
- id: step04_update_permissions
|
||
title: "Изменение прав роли применяется (PUT)"
|
||
- id: step05_delete_system_role_409
|
||
title: "Удаление системной роли → 409"
|
||
- id: step06_delete_role_in_use_409
|
||
title: "Удаление роли, занятой сотрудником → 409"
|
||
- id: step07_delete_unused_role_ok
|
||
title: "Удаление неиспользуемой роли → 204/200"
|
||
- id: step08_permission_authz_enforced
|
||
title: "Permission-based authz enforced: роль без ProductsEdit → 403 на PUT товара"
|