code: def test_attr_selector_creates_customjs_int(self) -> None:
      m1 = SomeModel()
      m2 = SomeModel()
      assert len(m1.js_property_callbacks) == 0
      m1.js_link("a", m2, "b", 1)
      assert len(m1.js_property_callbacks) == 1
      assert "change:a" in m1.js_property_callbacks
      cbs = m1.js_property_callbacks["change:a"]
      assert len(cbs) == 1
      cb = cbs[0]
      assert isinstance(cb, CustomJS)
      assert cb.args == dict(other=m2)
      assert cb.code == "other.b = this.a[1]"
  
imports: from __future__ import annotations
  import pytest
  from bokeh.core.has_props import is_abstract
  from bokeh.core.properties import Int, List, String
  from bokeh.core.types import ID
  from bokeh.models import *
  from bokeh.models import CustomJS
  from bokeh.plotting import *
  from bokeh.document import document
  from bokeh.model import Model
label_desc: Use image node_id 5 for calling the Test_js_link obj's underlying member method code with example usage: obj.test_attr_selector_creates_customjs_int() without return types