code: def test_split_intent_with_prefix(
      text: Text, attribute, expected_tokens: List[Text]
  ):
      component_config = {
          "intent_tokenization_flag": True,
          "intent_split_symbol": "+",
          "prefix_separator_symbol": "!",
      }
  
      tk = create_whitespace_tokenizer(component_config)
  
      message = Message.build(text=text)
      message.set(attribute, text)
  
      assert [
          t.text for t in tk._split_name(message, attribute)
      ] == expected_tokens
  
imports: from typing import Any, Dict, Optional, Tuple, Text, List
  import pytest
  from rasa.nlu.tokenizers.tokenizer import Token
  from rasa.nlu.constants import TOKENS_NAMES
  from rasa.shared.nlu.constants import TEXT, INTENT, RESPONSE, INTENT_RESPONSE_KEY, ACTION_TEXT, ACTION_NAME
  from rasa.shared.nlu.training_data.training_data import TrainingData
  from rasa.shared.nlu.training_data.message import Message
  from rasa.nlu.tokenizers.whitespace_tokenizer import WhitespaceTokenizer
label_desc: Use image node_id 14 for calling a global function with example usage: test_split_intent_with_prefix(text, attribute, expected_tokens) without return types