code: def test_Arrow() -> None:
      arrow = Arrow()
      assert arrow.x_start == field("x_start")
      assert arrow.y_start == field("y_start")
      assert arrow.start_units == "data"
      assert arrow.start is None
      assert arrow.x_end == field("x_end")
      assert arrow.y_end == field("y_end")
      assert arrow.end_units == "data"
      assert isinstance(arrow.end, ArrowHead)
      assert isinstance(arrow.source, ColumnDataSource)
      assert arrow.x_range_name == "default"
      assert arrow.y_range_name == "default"
      check_line_properties(arrow)
      check_properties_existence(
          arrow,
          [
              *ANNOTATION,
              "x_start",
              "y_start",
              "start_units",
              "start",
              "x_end",
              "y_end",
              "end_units",
              "end",
              "source",
          ],
          LINE,
      )
  
imports: from __future__ import annotations
  import pytest
  from datetime import datetime
  from unittest import mock
  from bokeh.core.properties import field, value
  from bokeh.core.validation import check_integrity, process_validation_issues
  from bokeh.models import Arrow, ArrowHead, Band, BoxAnnotation, ColorBar, ColumnDataSource, GlyphRenderer, Label, LabelSet, Legend, LegendItem, LinearColorMapper, Node, PolyAnnotation, Slope, Span, Title, Whisker
  from bokeh.util.serialization import convert_datetime_type
  from _util_models import ABOVE_FILL, ABOVE_HATCH, ANGLE, BELOW_FILL, BELOW_HATCH, FILL, HATCH, HOVER_FILL, HOVER_HATCH, HOVER_LINE, LINE, TEXT, check_fill_properties, check_hatch_properties, check_line_properties, check_properties_existence, check_text_properties, prefix
label_desc: Use image node_id 4 for calling a global function with example usage: test_Arrow() without return types