code: def test_sum_with_output_type():
      reductions = ["sum"]
  
      batch_gens = [Batch3DOverflow]
      types = [
          (np.uint8, [np.uint64, np.float32]),
          (np.int8, [np.int64, np.float32]),
          (np.uint16, [np.uint64, np.float32]),
          (np.int16, [np.int64, np.float32]),
          (np.uint32, [np.uint64, np.float32]),
          (np.int32, [np.int32, np.int64, np.float32]),
      ]
  
      rng = np.random.default_rng(1043)
      for reduction_name in reductions:
          for batch_gen in batch_gens:
              for type_map in types:
                  input_type = type_map[0]
                  keep_dims = np.random.choice([False, True])
                  for output_type in type_map[1]:
                      layout = rng.choice([None, "RGB"])
                      yield (
                          run_reduce,
                          keep_dims,
                          reduction_name,
                          batch_gen,
                          input_type,
                          output_type,
                          layout,
                      )
  
imports: import nvidia.dali.fn
  from nvidia.dali.pipeline import Pipeline
  from nose.tools import nottest
  import numpy
  from test_utils import np_type_to_dali
  from nose_utils import assert_raises
label_desc: Use image node_id 14 for calling a global function with example usage: test_sum_with_output_type() without return types