У меня есть прослушиватель событий Doctrine в контексте Symfony, который прослушивает изменение сущности и уведомляет об этом отдельный микросервис.Я реализовал метод postUpdate, который получает измененные атрибуты через UnitOfWork ChangeSet
$changedAttributes = $args->getEntityManager()
->getUnitOfWork()
->getEntityChangeSet($subject);
Проверка этого фрагмента кода оказывается сложной задачей, поскольку я не могу издеваться над UnitOfWork, так как Prophecy не поддерживает ссылки
"Prophecy\Exception\Doubler\ReturnByReferenceException : Returning by reference not supported."
Теперь я знаю, что мог бы использовать метод PreUpdate вместо PostUpdate, но я не хочу этого делать.(Если не окажется, что у меня нет другого разумного выбора.)
Можно ли украсить LifeCycleEvent, чтобы мне не нужно было его издеваться?Чтобы набор изменений можно было присоединить к LifeCycleEvent и для конкретных тестов набор изменений всегда будет возвращать декорированные значения?