Въпрос относно тестването на AuthService
Closed this issue · 1 comments
Зрдравей, Лъчо, имам проблем с Unit тест на AuthService. Направила съм го, както беше показал след регистрация автоматично да се логне. Мисля, че проблема ми идва някъде от UserDetails, защото при дебъгване спира на този ред
when(mockUserDetailsService.loadUserByUsername(testUser
.getUsername())).thenReturn(userDetails);
Странното е, че
Mockito.verify(mockedUserService).register(userEntityArgumentCaptor.capture()); -> работи,
докато
Mockito.verify(mockUserRepository).save(userEntityArgumentCaptor.capture()); -> не
Ще може ли някаква насока, много благодаря предварително :)
https://github.com/yanamet/HotelAntique -> линк към проекта
Здравей!
Това няма как да работи:
Mockito.verify(mockUserRepository).save(userEntityArgumentCaptor.capture()); //Това не
Причината е, че това репозитори никога не се вика никъде. Погледни както имаш в сървиса (който тестваш):
this.userService.register(user);
Тук от теста подаваш userService
който е мок, не е истински сървис. Разбира се, той няма как да знае да извика mockUserRepository
. Все едно викаш:
this.fakeObject.register(user)
Като fakeObject
няма нищо общо с твоя истински и работещ готин userService
.
Направо го трий това mockUserRepository, защото не виждам какво може да правиш с него. Не виждам и да го ползваш някъде.
Поздрави,
Л.