code: def test_patch_good_simple_indices(self) -> None:
      ds = bms.ColumnDataSource(data=dict(a=[10, 11], b=[20, 21]))
      ds._document = "doc"
      stuff = {}
      mock_setter = object()
  
      def mock(*args, **kw):
          stuff["args"] = args
          stuff["kw"] = kw
  
      ds.data._patch = mock
      ds.patch(dict(a=[(0, 100), (1, 101)], b=[(0, 200)]), mock_setter)
      assert stuff["args"] == (
          "doc",
          ds,
          dict(a=[(0, 100), (1, 101)], b=[(0, 200)]),
          mock_setter,
      )
      assert stuff["kw"] == {}
  
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 45 for calling the TestColumnDataSource obj's underlying member method code with example usage: obj.test_patch_good_simple_indices() without return types