code: def test_no_chat_history_overflow() -> None:
      """Should run without crashing.
  
      originally the long chinese utterance lead to a table width overflow and
      available width for new utterances being < 0."""
      events = [
          {
              "event": "action",
              "timestamp": 1619956299.2875981,
              "name": "action_session_start",
              "policy": None,
              "confidence": 1.0,
              "action_text": None,
              "hide_rule_turn": False,
          },
          {"event": "session_started", "timestamp": 1619956299.287627},
          {
              "event": "bot",
              "timestamp": 1619956324.2313201,
              "metadata": {"utter_action": "utter_long_chinese"},
              "text": "牙龈出血的症状对应得疾病可能有：肥大性龈炎、骨髓增生异常综合征、"
              "口腔疾病、小儿出血性疾病、边缘性龈炎、获得性维生素K依赖性凝血因子异常、"
              "小儿白血病、回归热、坏死性龈口炎、青春期功能失调性子宫出血、"
              "郎-奥韦综合征、急性淋巴细胞白血病、感染性血小板减少性紫癜、"
              "单纯性牙周炎、单核细胞白血病、δ-贮存池病、小儿特发性血小板减少性紫癜、"
              "老年人真性红细胞增多症、急性根尖牙周炎、慢性根尖牙周炎、创伤性口炎、"
              "青少年牙周炎、慢性牙周炎",
          },
          {
              "event": "user",
              "timestamp": 1619956299.509249,
              "text": "hi",
              "parse_data": {
                  "intent": {
                      "id": -2517711783688260279,
                      "name": "greet",
                      "confidence": 1.0,
                  },
                  "entities": [],
                  "text": "hi",
                  "message_id": "4a95248b3c6b480c9550f9c19062e2bc",
                  "metadata": {},
              },
              "input_channel": None,
              "message_id": "4a95248b3c6b480c9550f9c19062e2bc",
              "metadata": {},
          },
      ]
  
      rasa.core.training.interactive._chat_history_table(events)
  
imports: import asyncio
  import json
  import os
  import uuid
  from collections import deque
  from pathlib import Path
  from typing import Any, Dict, List, Text, Tuple
  from tests.conftest import AsyncMock
  import pytest
  from _pytest.monkeypatch import MonkeyPatch
  from aioresponses import aioresponses
  import unittest.mock
  from unittest.mock import Mock
  import rasa.shared.utils.io
  import rasa.utils.io
  from rasa.core.actions import action
  from rasa.core.training import interactive
  from rasa.shared.constants import INTENT_MESSAGE_PREFIX, DEFAULT_SENDER_ID, DOCS_URL_POLICIES, LATEST_TRAINING_DATA_FORMAT_VERSION
  from rasa.shared.core.constants import ACTION_LISTEN_NAME, ACTION_UNLIKELY_INTENT_NAME
  from rasa.shared.core.domain import Domain
  from rasa.shared.core.events import BotUttered, ActionExecuted, UserUttered
  from rasa.shared.core.trackers import DialogueStateTracker
  from rasa.shared.core.training_data.story_reader.yaml_story_reader import YAMLStoryReader
  from rasa.shared.importers.rasa import TrainingDataImporter
  from rasa.shared.nlu.constants import TEXT
  from rasa.shared.nlu.training_data.formats import RasaYAMLReader
  from rasa.shared.nlu.training_data.loading import RASA, UNK, RASA_YAML
  from rasa.shared.nlu.training_data.message import Message
  from rasa.utils.endpoints import EndpointConfig
  from tests import utilities
label_desc: Use image node_id 17 for calling a global function with example usage: test_no_chat_history_overflow() without return types