А как тестировать handler?
Если вы пишите Unit-тест - вместо CityRepository используйте мок, который будет проверять что в него пришел именно тот объект который вы ожидаете.
Если говорить не о чистых юнит тестах (они замороченные), а функциональном тестировании (на базе того же функционала phpunit), то:

Я не могу проверить, что попало в базу, потому что я не знаю Id, по которому туда попадут значения

Но вы же знаете название добавляемого города - по нему и проверьте, появился ли такой город в базе.

P.S.
У вас там сущности можно оптимизировать - как понимаю вы там каждый раз uuid и дату создания передаете в конструктор, можно сделать трейты раз два, и в сущности указывать:

/**
 * @ORM\Entity(repositoryClass=PostRepository::class)
 * @ORM\HasLifecycleCallbacks()
 */
class Post
{
    use IdTrait;
    use CreatedAtTrait;

   // ...

Двумя строчками в сущности добавляете два поля и их автоматическое заполнение. Избавите конструктор от двух параметров.