code: def test_axis_type_auto(self) -> None:
      assert (bpp._get_axis_class("auto", FactorRange(), 0)) == (
          CategoricalAxis,
          {},
      )
      assert (bpp._get_axis_class("auto", FactorRange(), 1)) == (
          CategoricalAxis,
          {},
      )
      assert (bpp._get_axis_class("auto", DataRange1d(), 0)) == (
          LinearAxis,
          {},
      )
      assert (bpp._get_axis_class("auto", DataRange1d(), 1)) == (
          LinearAxis,
          {},
      )
      assert (bpp._get_axis_class("auto", Range1d(), 0)) == (
          LinearAxis,
          {},
      )
      assert (bpp._get_axis_class("auto", Range1d(), 1)) == (
          LinearAxis,
          {},
      )
      assert (
          bpp._get_axis_class(
              "auto", Range1d(start=datetime.datetime(2018, 3, 21)), 0
          )
      ) == (DatetimeAxis, {})
      assert (
          bpp._get_axis_class(
              "auto", Range1d(start=datetime.datetime(2018, 3, 21)), 1
          )
      ) == (DatetimeAxis, {})
  
imports: from __future__ import annotations
  import pytest
  import datetime
  import numpy
  import pandas
  from bokeh.models import CategoricalAxis, CategoricalScale, DataRange1d, DatetimeAxis, FactorRange, LinearAxis, LinearScale, LogAxis, LogScale, MercatorAxis, Range1d
  import bokeh.plotting._plot
label_desc: Use image node_id 6 for calling the Test__get_axis_class obj's underlying member method code with example usage: obj.test_axis_type_auto() without return types