UsuarioService { public Usuario salvarUsuario(Usuario usuario) throws UsuarioException { Usuario usuarioCriado = null; try { usuarioCriado = this.usuarioRepository.save(usuario); salvarLog(); } catch (DataIntegrityViolationException e) { throw new UsuarioException("Login já cadastrado"); } return usuarioCriado; } UsuarioService(UsuarioRepository usuarioRepository); List<Usuario> listarUsuarios(); Usuario salvarUsuario(Usuario usuario); void salvarLog(); void removerUsuario(Long id); Optional<Usuario> recuperarPorLogin(String login); Optional<Usuario> recuperarPorNomeEIdade(String nome, Integer idade); Usuario atualizarUsuario(Usuario usuario);  }
@Test public void salvarUsuarioTest() throws UsuarioException { Usuario usuario = createUser(); usuario.setId(1L); when(usuarioRepository.save(any(Usuario.class))).thenReturn(usuario); Usuario usuarioCriado = usuarioService.salvarUsuario(usuario); InOrder inOrder = Mockito.inOrder(usuarioRepository, usuarioService); inOrder.verify(usuarioRepository).save(eq(usuario)); inOrder.verify(usuarioService).salvarLog(); assertNotNull(usuarioCriado); assertNotNull(usuarioCriado.getId()); }