code: def test_axis_range(axis):
      r_fix, r_auto = [2, 5], None
      axis.range = r_auto
      assert axis.behavior == "auto"
      axis.range = r_fix
      r = [0.0, 0.0]
      axis.GetRange(r)
      assert np.allclose(axis.range, r_fix)
      assert np.allclose(r, r_fix)
      assert axis.behavior == "fixed"
  
      assert axis.GetBehavior() == charts.Axis.BEHAVIORS["fixed"]
      axis.behavior = "auto"
      assert axis.behavior == "auto"
      assert axis.GetBehavior() == charts.Axis.BEHAVIORS["auto"]
      with pytest.raises(ValueError):
          axis.behavior = "invalid"
  
imports: import itertools
  import platform
  import weakref
  import numpy
  import pytest
  from vtkmodules.vtkRenderingContext2D import vtkPen
  import pyvista
  from pyvista import examples
  from pyvista.plotting import charts
  from pyvista.plotting.colors import COLOR_SCHEMES
label_desc: Use image node_id 22 for calling a global function with example usage: test_axis_range(axis) without return types