code: def test_bad_with_matches(self):
      renderer = bmr.GlyphRenderer(
          data_source=ColumnDataSource(data=dict(x=[], y=[]))
      )
      renderer.glyph = Scatter(x="xx", y="yy")
  
      check = renderer._check_bad_column_name()
  
      assert len(check) == 1
      assert check[0] == ValidationIssue(
          code=1001,
          name="BAD_COLUMN_NAME",
          text="Glyph refers to nonexistent column name. This could either be due to a misspelling or typo, or due to an expected column being missing. ",
          extra=f"x='xx' [closest match: 'x'], y='yy' [closest match: 'y'] {{renderer: {renderer}}}",
      )
  
imports: from __future__ import annotations
  import pytest
  from bokeh.core.validation.check import ValidationIssue
  from bokeh.models import ColorBar, ColumnDataSource, GeoJSONDataSource, Image, ImageRGBA, ImageStack, IndexFilter, Line, MultiLine, Patch, Scatter, Text, WebDataSource, WeightedStackColorMapper
  from bokeh.transform import linear_cmap, log_cmap
  import bokeh.models.renderers
label_desc: Use image node_id 5 for calling the TestGlyphRenderer_check_bad_column_name obj's underlying member method code with example usage: obj.test_bad_with_matches() without return types