code: def test_right_edge_drag_updates_end(
      self, single_plot_page: SinglePlotPage
  ) -> None:
      plot = _make_plot()
  
      page = single_plot_page(plot)
  
      page.drag_canvas_at_position(plot, 600, 200, 100, 0)
  
      page.eval_custom_action()
  
      results = page.results
      assert results["start"] == 0.4
      assert results["end"] == 0.7
  
      page.drag_canvas_at_position(plot, 700, 200, -200, 0)
  
      page.eval_custom_action()
  
      results = page.results
      assert results["start"] == 0.4
      assert results["end"] == 0.5
  
file_path: bokeh/tests/integration/tools/test_range_tool.py
imports: from __future__ import annotations
  import pytest
  from bokeh.models import ColumnDataSource, CustomJS, Plot, Range1d, RangeTool, Rect
  from tests.support.plugins.project import SinglePlotPage
  from tests.support.util.selenium import RECORD
label_desc: Use image node_id 10 for calling the Test_RangeTool obj's underlying member method code with example usage: obj.test_right_edge_drag_updates_end(single_plot_page) without return types