code: def test_Tool_from_string() -> None:
      assert isinstance(Tool.from_string("pan"), t.PanTool)
      assert isinstance(Tool.from_string("xpan"), t.PanTool)
      assert isinstance(Tool.from_string("ypan"), t.PanTool)
      assert isinstance(Tool.from_string("xwheel_pan"), t.WheelPanTool)
      assert isinstance(Tool.from_string("ywheel_pan"), t.WheelPanTool)
      assert isinstance(Tool.from_string("wheel_zoom"), t.WheelZoomTool)
      assert isinstance(
          Tool.from_string("xwheel_zoom"), t.WheelZoomTool
      )
      assert isinstance(
          Tool.from_string("ywheel_zoom"), t.WheelZoomTool
      )
      assert isinstance(Tool.from_string("zoom_in"), t.ZoomInTool)
      assert isinstance(Tool.from_string("xzoom_in"), t.ZoomInTool)
      assert isinstance(Tool.from_string("yzoom_in"), t.ZoomInTool)
      assert isinstance(Tool.from_string("zoom_out"), t.ZoomOutTool)
      assert isinstance(Tool.from_string("xzoom_out"), t.ZoomOutTool)
      assert isinstance(Tool.from_string("yzoom_out"), t.ZoomOutTool)
      assert isinstance(Tool.from_string("click"), t.TapTool)
      assert isinstance(Tool.from_string("tap"), t.TapTool)
      assert isinstance(Tool.from_string("crosshair"), t.CrosshairTool)
      assert isinstance(Tool.from_string("box_select"), t.BoxSelectTool)
      assert isinstance(
          Tool.from_string("xbox_select"), t.BoxSelectTool
      )
      assert isinstance(
          Tool.from_string("ybox_select"), t.BoxSelectTool
      )
      assert isinstance(
          Tool.from_string("poly_select"), t.PolySelectTool
      )
      assert isinstance(
          Tool.from_string("lasso_select"), t.LassoSelectTool
      )
      assert isinstance(Tool.from_string("line_edit"), t.LineEditTool)
      assert isinstance(Tool.from_string("box_zoom"), t.BoxZoomTool)
      assert isinstance(Tool.from_string("xbox_zoom"), t.BoxZoomTool)
      assert isinstance(Tool.from_string("ybox_zoom"), t.BoxZoomTool)
      assert isinstance(Tool.from_string("save"), t.SaveTool)
      assert isinstance(Tool.from_string("copy"), t.CopyTool)
      assert isinstance(Tool.from_string("undo"), t.UndoTool)
      assert isinstance(Tool.from_string("redo"), t.RedoTool)
      assert isinstance(Tool.from_string("reset"), t.ResetTool)
      assert isinstance(Tool.from_string("help"), t.HelpTool)
      assert isinstance(Tool.from_string("examine"), t.ExamineTool)
      assert isinstance(Tool.from_string("box_edit"), t.BoxEditTool)
      assert isinstance(Tool.from_string("point_draw"), t.PointDrawTool)
      assert isinstance(Tool.from_string("poly_draw"), t.PolyDrawTool)
      assert isinstance(Tool.from_string("poly_edit"), t.PolyEditTool)
      assert isinstance(Tool.from_string("hover"), t.HoverTool)
  
file_path: bokeh/tests/unit/bokeh/models/test_tools.py
imports: from __future__ import annotations
  import pytest
  from bokeh.models.tools import Tool, Toolbar
  import bokeh.models.tools
  from bokeh.core.validation.check import ValidationIssues, check_integrity
  from bokeh.models import Block, ColumnDataSource, GlyphRenderer, HBar, Quad, Rect, VBar
label_desc: Use image node_id 1 for calling a global function with example usage: test_Tool_from_string() without return types