code: def test_match_soft_keyword(self):
      # empty match
      self._assert_highlighting("match", {"KEYWORD": [("1.0", "1.5")]})
  
      # match followed by partial identifier
      self._assert_highlighting(
          "match fo", {"KEYWORD": [("1.0", "1.5")]}
      )
  
      # match followed by identifier and colon
      self._assert_highlighting(
          "match foo:", {"KEYWORD": [("1.0", "1.5")]}
      )
  
      # match followed by keyword
      self._assert_highlighting(
          "match and", {"KEYWORD": [("1.6", "1.9")]}
      )
  
      # match followed by builtin with keyword prefix
      self._assert_highlighting(
          "match int:",
          {"KEYWORD": [("1.0", "1.5")], "BUILTIN": [("1.6", "1.9")]},
      )
  
      # match followed by non-text operator
      self._assert_highlighting("match^", {})
      self._assert_highlighting("match @", {})
  
      # match followed by colon
      self._assert_highlighting("match :", {})
  
      # match followed by comma
      self._assert_highlighting("match\t,", {})
  
      # match followed by a lone underscore
      self._assert_highlighting(
          "match _:", {"KEYWORD": [("1.0", "1.5")]}
      )
  
imports: from idlelib import colorizer
  from test.support import requires
  import unittest
  from unittest import mock
  from idlelib.idle_test.tkinter_testing_utils import run_in_tk_mainloop
  from functools import partial
  import textwrap
  from tkinter import Tk, Text
  from idlelib import config
  from idlelib.percolator import Percolator
label_desc: Use image node_id 16 for calling the ColorDelegatorTest obj's underlying member method code with example usage: obj.test_match_soft_keyword() without return types