code: def test_make_iterable_validator_none_auto(
      value, allow_auto, allow_none
  ):
      scalar_validator = _validate_float_or_none
      validate_iterable = make_iterable_validator(
          scalar_validator, allow_auto=allow_auto, allow_none=allow_none
      )
      raise_error = False
      if value is None and not allow_none:
          raise_error = "Only ordered iterable"
      if value == "auto" and not allow_auto:
          raise_error = "Could not convert"
      if raise_error:
          with pytest.raises(ValueError, match=raise_error):
              validate_iterable(value)
      else:
          value = validate_iterable(value)
          assert np.iterable(value) or value is None or value == "auto"
  
imports: import os
  import numpy
  import pytest
  from xarray.core.indexing import MemoryCachedArray
  from ...data import datasets, load_arviz_data
  from ...rcparams import _make_validate_choice, _make_validate_choice_regex, _validate_float_or_none, _validate_positive_int_or_none, _validate_probability, make_iterable_validator, rc_context, rc_params, rcParams, read_rcfile
  from ...stats import compare
  from ..helpers import models
label_desc: Use image node_id 17 for calling a global function with example usage: test_make_iterable_validator_none_auto(value, allow_auto, allow_none) without return types