Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package pl.pw.swfispw.service;
- import org.junit.Assert;
- import org.junit.Test;
- import org.junit.runner.RunWith;
- import org.mockito.InjectMocks;
- import org.mockito.Mock;
- import org.mockito.runners.MockitoJUnitRunner;
- import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
- import pl.pw.swfispw.configuration.SecurityConfiguration;
- import pl.pw.swfispw.dao.repository.UserRepository;
- import pl.pw.swfispw.domain.User;
- import pl.pw.swfispw.web.dto.user.UserDetailsDTO;
- import static org.junit.Assert.assertNotNull;
- import static org.mockito.Matchers.anyLong;
- import static org.mockito.Mockito.*;
- @RunWith(MockitoJUnitRunner.class)
- public class UserServiceTest {
- @InjectMocks
- private UserService userService;
- @Mock
- private UserRepository userRepository;
- @Mock
- private SecurityConfiguration securityConfiguration;
- @Test
- public void testMockCreation() {
- assertNotNull(userRepository);
- }
- @Test
- public void changePasswordChange() {
- BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
- String originalPassword = "test";
- User user = new User();
- user.setPassword(passwordEncoder.encode(originalPassword));
- when(userRepository.findOne(anyLong())).thenReturn(user);
- when(securityConfiguration.passwordEncoder()).thenReturn(new BCryptPasswordEncoder());
- String newPassword = "newPassword";
- userService.changePassword(1L, newPassword);
- verify(userRepository, times(1)).findOne(anyLong());
- Assert.assertNotEquals(originalPassword, user.getPassword());
- Assert.assertTrue(passwordEncoder.matches(newPassword, user.getPassword()));
- }
- @Test
- public void getTest() {
- String name = "Ala";
- User user = new User();
- user.setName(name);
- when(userRepository.findOne(anyLong())).thenReturn(user);
- UserDetailsDTO userDetailsDTO = userService.get(1L);
- verify(userRepository, times(1)).findOne(anyLong());
- Assert.assertEquals(name, userDetailsDTO.getName());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement