Это ожидается?
Абсолютно.
Я предполагаю, что dbService.addNewExchange()
вызывает repository.save()
(что, в свою очередь, вызывает entityManager.persist()
внутри страны). Это только делает только что созданный объект managed , что означает, что его состояние теперь будет отслеживаться JPA. Состояние этой сущности будет сброшено в db при необходимости, не позднее, чем при фиксации транзакции .
Мне нужно либо сделать запрос в БД, либо установить в тесте @Rollback (false)
По умолчанию Hibernate выполняет сброс при фиксации транзакции и перед запросами. Последнее должно гарантировать, что изменения, внесенные в сущности, отражены в результатах запроса.
Чтобы сделать тест неудачным, либо переключитесь на repository.saveAndFlush()
, немедленно принудительно сбросив, либо явно сбросив контекст, введя EntityManager
в тест и вызвав EntityManager.flush()
после того, как оба вызова dbService.addNewExchange()
были сделаны ,