code: def test_box_zoom_with_center_origin(
      self, single_plot_page: SinglePlotPage
  ) -> None:
      plot = _make_plot(BoxZoomTool(origin="center"))
  
      page = single_plot_page(plot)
  
      page.drag_canvas_at_position(plot, 100, 100, 50, 50)
  
      page.eval_custom_action()
  
      results = page.results
      assert (
          results["xrstart"] + results["xrend"]
      ) / 2.0 == pytest.approx(0.25)
      assert (
          results["yrstart"] + results["yrend"]
      ) / 2.0 == pytest.approx(0.75)
  
      assert page.has_no_console_errors()
  
file_path: bokeh/tests/integration/tools/test_box_zoom_tool.py
imports: from __future__ import annotations
  import pytest
  from bokeh.core.enums import DimensionsType
  from bokeh.models import BoxZoomTool, ColumnDataSource, CustomJS, Plot, Range1d, Rect
  from tests.support.plugins.project import SinglePlotPage
  from tests.support.util.selenium import RECORD
label_desc: Use image node_id 3 for calling the Test_BoxZoomTool obj's underlying member method code with example usage: obj.test_box_zoom_with_center_origin(single_plot_page) without return types