Czy istnieje możliwość serializacji listy encji do Json aby później można było ją odtworzyć w teście?
Piszę test metody w której mam m.in. pobieranie danych z bazy:
List<TestEntity> list = testRepository.findAll();
chciałbym to zamockować i podstawić własną listę ładowaną właśnie z json.
W przypadku listy zwykłych obiektów używam ObjectMappera i metody writeValueAsString a dalej w teście z pliku odtwarzam listę i na niej pracuje.
Kiedy chce zrzucić tym sposobem listę encji dostaję błędy:
Can not parse field to json
com.fasterxml.jackson.databind.JsonMappingException: could not initialize proxy [pl.app.xxx.repositories.xxx#1] - no Session
(through reference chain: pl.app.xxx.repositories.xxx["roomId"]->pl.app.xxx.repositories.xxx$HibernateProxy$jE4aRmEW["description"])
nie radzi sobie z polami które odwołują się do innych tabel.
Czy zna ktoś może jakiś sposób na rozwiązanie tego problemu.
Wiem, że w teście mogę użyć np. liquidbase, załadować kontekst i pobierać dane z bazy
lub stworzyć klasę która taką listę wygeneruje ale jest z tym dużo pracy bo lista jest dosyć spora dlatego szukam szybszego rozwiązania
i takiego który nie wymaga ładowania całego kontekstu.
@Transactional
?