code: def _testGradientsSimple(self, dtype):
      inp = self._makeData((4, 4), dtype)
      with self.cached_session():
          inp_tensor = ops.convert_to_tensor(inp)
          s = array_ops.split(
              value=inp_tensor, num_or_size_splits=4, axis=1
          )
          inp_grads = [self._makeData((4, 1), dtype) for _ in range(4)]
          grad_tensors = [constant_op.constant(x) for x in inp_grads]
          grad = gradients_impl.gradients(
              s, [inp_tensor], grad_tensors
          )[0]
          result = self.evaluate(grad)
      for i in range(4):
          self.assertAllEqual(result[:, i : i + 1], inp_grads[i])
  
imports: import numpy
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors_impl
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gradients_impl
  from tensorflow.python.ops import math_ops
  from tensorflow.python.platform import test
label_desc: Use image node_id 22 for calling the SplitOpTest obj's underlying member method code with example usage: obj._testGradientsSimple(dtype) without return types