package com.example.service; import com.example.domain.Ticket; import com.example.service.mapper.Mapper; import com.example.service.remote.RemoteTicketService; import com.example.service.remote.TicketDto; import java.util.Arrays; import java.util.List; import org.junit.Test; import static org.junit.Assert.*; import org.junit.Before; import org.mockito.InjectMocks; import org.mockito.Mock; import static org.mockito.Mockito.*; import org.mockito.MockitoAnnotations; public class DefaultTicketServiceTest { @Mock private RemoteTicketService mockRemoteTicketService; @Mock private Mapper mapper; @InjectMocks private TicketService ticketService = new DefaultTicketService(); @Before public void setUp() { MockitoAnnotations.initMocks(this); } @Test public void testFindTicketsHasResults() { when(mockRemoteTicketService.ticketSearch(anyString())).thenReturn(Arrays.asList(new TicketDto())); when(mapper.map(anyListOf(TicketDto.class))).thenReturn(Arrays.asList(new Ticket())); List<Ticket> tickets = ticketService.findTickets("test"); assertFalse(tickets.isEmpty()); } @Test public void testFindTicketsExceptionThrown() { when(mockRemoteTicketService.ticketSearch(anyString())).thenThrow(Exception.class); List<Ticket> tickets = ticketService.findTickets("test"); assertTrue(tickets.isEmpty()); } }