test_class.declarator: connectionHandler
test_class.modifier: @MockBean
      private
test_class.original_string: @MockBean
      private ConnectionHandler connectionHandler;
test_class.type: ConnectionHandler
test_class.var_name: connectionHandler
test_class.declarator: dashboardService
test_class.modifier: @MockBean
      private
test_class.original_string: @MockBean
      private DashboardService dashboardService;
test_class.type: DashboardService
test_class.var_name: dashboardService
test_class.declarator: issueService
test_class.modifier: @MockBean
      private
test_class.original_string: @MockBean
      private IssueService issueService;
test_class.type: IssueService
test_class.var_name: issueService
test_class.declarator: eventsHelper
test_class.modifier: @MockBean
      private
test_class.original_string: @MockBean
      private ProcessEventsHelper eventsHelper;
test_class.type: ProcessEventsHelper
test_class.var_name: eventsHelper
test_class.declarator: eventHandler
test_class.modifier: private
test_class.original_string: private IssueEventHandler eventHandler;
test_class.type: IssueEventHandler
test_class.var_name: eventHandler
test_class.file: mirrorgate-api/src/test/java/com/bbva/arq/devops/ae/mirrorgate/cron/handler/IssueEventHandlerTest.java
test_class.identifier: IssueEventHandlerTest
test_case.body: @Test
      public void testDeletedEvents() {
  
          when(dashboardService.getDashboardWithNames(anyList())).thenReturn(Collections.emptyList());
  
          eventHandler.processEvents(Collections.singletonList(new Event()), Collections.emptySet());
  
          verify(connectionHandler, times(1)).sendEventUpdateMessageToAll(EventType.ISSUE);
      }
test_case.class_method_signature: IssueEventHandlerTest.testDeletedEvents()
test_case.full_signature: @Test public void testDeletedEvents()
test_case.identifier: testDeletedEvents
test_case.invocations: thenReturn when getDashboardWithNames anyList emptyList processEvents singletonList emptySet sendEventUpdateMessageToAll verify times
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testDeletedEvents()
focal_class.declarator: connectionHandler
focal_class.modifier: private final
focal_class.original_string: private final ConnectionHandler connectionHandler;
focal_class.type: ConnectionHandler
focal_class.var_name: connectionHandler
focal_class.declarator: issueService
focal_class.modifier: private final
focal_class.original_string: private final IssueService issueService;
focal_class.type: IssueService
focal_class.var_name: issueService
focal_class.declarator: eventsHelper
focal_class.modifier: private final
focal_class.original_string: private final ProcessEventsHelper eventsHelper;
focal_class.type: ProcessEventsHelper
focal_class.var_name: eventsHelper
focal_class.file: mirrorgate-api/src/main/java/com/bbva/arq/devops/ae/mirrorgate/cron/handler/IssueEventHandler.java
focal_class.identifier: IssueEventHandler
focal_class.interfaces: implements EventHandler
focal_class.class_method_signature: IssueEventHandler.IssueEventHandler(
          final ConnectionHandler connectionHandler,
          final IssueService issueService,
          final ProcessEventsHelper eventsHelper
      )
focal_class.full_signature: @Autowired public  IssueEventHandler(
          final ConnectionHandler connectionHandler,
          final IssueService issueService,
          final ProcessEventsHelper eventsHelper
      )
focal_class.identifier: IssueEventHandler
focal_class.modifiers: @Autowired public
focal_class.parameters: (
          final ConnectionHandler connectionHandler,
          final IssueService issueService,
          final ProcessEventsHelper eventsHelper
      )
focal_class.signature:  IssueEventHandler(
          final ConnectionHandler connectionHandler,
          final IssueService issueService,
          final ProcessEventsHelper eventsHelper
      )
focal_class.class_method_signature: IssueEventHandler.processEvents(final List<Event> eventList, final Set<String> dashboardIds)
focal_class.full_signature: @Override public void processEvents(final List<Event> eventList, final Set<String> dashboardIds)
focal_class.identifier: processEvents
focal_class.modifiers: @Override public
focal_class.parameters: (final List<Event> eventList, final Set<String> dashboardIds)
focal_class.return: void
focal_class.signature: void processEvents(final List<Event> eventList, final Set<String> dashboardIds)
focal_method.body: @Override
      public void processEvents(final List<Event> eventList, final Set<String> dashboardIds) {
  
          final List<String> idList = eventList.stream()
              .map(Event::getCollectionId)
              .map(String.class::cast)
              .collect(Collectors.toList());
  
          if (idList.contains(null)) {
              connectionHandler.sendEventUpdateMessageToAll(EventType.ISSUE);
          } else {
              final Iterable<Issue> issues = issueService.getIssuesById(idList);
  
              final Predicate<Dashboard> filterDashboards = dashboard ->
                  StreamSupport.stream(issues.spliterator(), false)
                      .anyMatch(issue -> CollectionUtils.containsAny(issue.getKeywords(), dashboard.getBoards()));
  
              eventsHelper.processEvents(dashboardIds, filterDashboards, EventType.ISSUE);
          }
      }
focal_method.class_method_signature: IssueEventHandler.processEvents(final List<Event> eventList, final Set<String> dashboardIds)
focal_method.full_signature: @Override public void processEvents(final List<Event> eventList, final Set<String> dashboardIds)
focal_method.identifier: processEvents
focal_method.invocations: collect map map stream toList contains sendEventUpdateMessageToAll getIssuesById anyMatch stream spliterator containsAny getKeywords getBoards processEvents
focal_method.modifiers: @Override public
focal_method.parameters: (final List<Event> eventList, final Set<String> dashboardIds)
focal_method.return: void
focal_method.signature: void processEvents(final List<Event> eventList, final Set<String> dashboardIds)