Я работаю над интеграционным тестированием весеннего приложения,
и пытаюсь протестировать простой метод удаления.
Сначала я добавляю элемент (в моем случае сектор), а затем проверить его удаление.
Однако, когда метод теста запускается, он вызывается, но, как если бы элемент не был удален, я не знаю, по какой причине.
Расположение и сектора меньше по сравнению с первым может - много к одному, где локация имеет больше секторов. В настоящее время у меня есть 7 секторов в тестовой базе данных, и она добавляется к 8 с идентификатором 8, потому что для идентификатора установлено значение идентификатора.
Это мой метод тестирования (используйте @Transactional в классе тестирования):
@Test
public void deleteSectorTest(){
Sector sector = sectorService.addSector(SectorConst.newDtoToAdd());
int sizeBeforeDel = sectorRepository.findAll().size();
sectorService.deleteSector(8L);
int sizeAfterDel = sectorRepository.findAll().size();
assertEquals(sizeBeforeDel - 1, sizeAfterDel);
}
Это мои методы добавления и удаления секторов в секторе обслуживания:
public Sector addSector(SectorDto sd) {
Sector sector = new Sector();
if(locationService.findOneLocation(sd.getLocationId()) == null){
throw new LocationNotFoundException("Location with id : " +sd.getLocationId() +" not found.");
}
Location l = locationService.findOneLocation(sd.getLocationId());
sector = mapFromDto(sd);
sector.setLocation(l);
l.getSectors().add(sector);
sectorRepository.save(sector);
return sector;
}
public void deleteSector(Long id){
sectorRepository.deleteById(id);
}
И вот моя ошибка в консоли:
Если кто-нибудь знает, в чем проблема, я был бы признателен, спасибо!