def METHOD_NAME(
    agent_binary_downloaded: Event,
    exploit_class_downloaded: Event,
    exploit: Callable[[], Tuple[bool, bool]],
    mock_agent_event_publisher: MagicMock,
):
    exploit_class_downloaded.clear()
    agent_binary_downloaded.clear()
    exploit()
    published_events = mock_agent_event_publisher.publish.call_args_list
    published_events = [param[0][0] for param in published_events]
    assert ExploitationEvent in [type(event) for event in published_events]
    assert all([event.success is False for event in published_events])