2.5 KiB
2.5 KiB
Spec Delta
MODIFIED Requirements
Requirement: Сборка мусора по ссылкам
Объект хранилища SHALL удаляться только когда на него не ссылается ни одно фото и ни один аватар пользователя; удаление альбома и попадание фото в корзину SHALL сохранять объекты.
Scenario: Последняя ссылка удалена
- WHEN фото удаляется навсегда и больше ни одно фото не ссылается на его объекты
- THEN объекты удаляются из хранилища
Scenario: Остались ссылки
- WHEN на объект ссылается другое фото
- THEN объект сохраняется в хранилище
Scenario: Удаление альбома
- WHEN владелец удаляет альбом
- THEN объекты хранилища не удаляются
Scenario: Ссылка аватара
- WHEN на объект ссылается аватар пользователя
- THEN объект сохраняется в хранилище, пока ссылка существует
ADDED Requirements
Requirement: Аватар пользователя как объект журнала
Аватар пользователя SHALL храниться как объект журнала, привязанный к пользователю по ролям, соответствующим нарезкам аватара. Замена и удаление аватара SHALL менять привязку, а объекты без ссылок SHALL освобождаться сборкой мусора.
Scenario: Привязка аватара
- WHEN пользователь устанавливает аватар
- THEN объекты нарезок привязываются к пользователю по своим ролям
Scenario: Замена аватара
- WHEN пользователь заменяет аватар
- THEN привязка указывает на новые объекты, а старые освобождаются сборкой мусора
Scenario: Удаление аватара
- WHEN пользователь удаляет аватар
- THEN привязка снимается, и объекты аватара освобождаются сборкой мусора