code: def test_estimate_segmaps_norm_type(self):
      ntype = normalization.estimate_segmaps_norm_type(None)
      assert ntype == "None"
  
      for name, dt in zip(
          ["int", "uint", "bool"], [np.int32, np.uint16, bool]
      ):
          ntype = normalization.estimate_segmaps_norm_type(
              np.zeros((1, 1, 1, 1), dtype=dt)
          )
          assert ntype == "array[%s]" % (name,)
  
      ntype = normalization.estimate_segmaps_norm_type(
          ia.SegmentationMapsOnImage(
              np.zeros((1, 1, 1), dtype=np.int32), shape=(1, 1, 1)
          )
      )
      assert ntype == "SegmentationMapsOnImage"
  
      ntype = normalization.estimate_segmaps_norm_type([])
      assert ntype == "iterable[empty]"
  
      ntype = normalization.estimate_segmaps_norm_type(
          [np.zeros((1, 1, 1), dtype=np.int32)]
      )
      assert ntype == "iterable-array[int]"
  
      ntype = normalization.estimate_segmaps_norm_type(
          [
              ia.SegmentationMapsOnImage(
                  np.zeros((1, 1, 1), dtype=np.int32), shape=(1, 1, 1)
              )
          ]
      )
      assert ntype == "iterable-SegmentationMapsOnImage"
  
      # --
      # error cases
      # --
      with self.assertRaises(AssertionError):
          _ntype = normalization.estimate_segmaps_norm_type(1)
  
      with self.assertRaises(AssertionError):
          _ntype = normalization.estimate_segmaps_norm_type("foo")
  
      with self.assertRaises(AssertionError):
          _ntype = normalization.estimate_segmaps_norm_type([1])
  
      # wrong class
      with self.assertRaises(AssertionError):
          _ntype = normalization.estimate_segmaps_norm_type(
              ia.KeypointsOnImage([], shape=(1, 1, 1))
          )
  
      with self.assertRaises(AssertionError):
          _ntype = normalization.estimate_segmaps_norm_type([[]])
  
      # list of list of SegMap, only list of SegMap is max
      with self.assertRaises(AssertionError):
          _ntype = normalization.estimate_segmaps_norm_type(
              [
                  [
                      ia.SegmentationMapsOnImage(
                          np.zeros((1, 1, 1, 1), dtype=np.int32),
                          shape=(1, 1, 1),
                      )
                  ]
              ]
          )
  
imports: from __future__ import print_function, division, absolute_import
  import sys
  import numpy
  import six.moves
  import imgaug
  import imgaug.augmentables.normalization
  from imgaug.testutils import reseed
label_desc: Use image node_id 19 for calling the TestNormalization obj's underlying member method code with example usage: obj.test_estimate_segmaps_norm_type() without return types