code: def test_data_accepts_groupby_arg(self) -> None:
      from bokeh.sampledata.autompg import autompg as df
  
      group = df.groupby(by=["origin", "cyl"])
      ds = bms.ColumnDataSource()
      assert ds.data == {}
      ds.data = group
      s = group.describe()
      assert len(ds.column_names) == 49
      assert isinstance(ds.data["origin_cyl"], np.ndarray)
      for key in s.columns.values:
          k2 = "_".join(key)
          assert isinstance(ds.data[k2], np.ndarray)
          assert list(s[key]) == list(ds.data[k2])
  
imports: from __future__ import annotations
  import pytest
  import datetime
  import io
  import numpy
  import pandas
  from bokeh.models import Selection
  from bokeh.util.serialization import convert_datetime_array
  from bokeh.util.warnings import BokehDeprecationWarning
  import bokeh.models.sources
label_desc: Use image node_id 16 for calling the TestColumnDataSource obj's underlying member method code with example usage: obj.test_data_accepts_groupby_arg() without return types