code: def test_reduce_over_zero(self):
      a = Tensor.ones(3, 2, 0).sum(axis=2)
      assert a.shape == (3, 2)
      np.testing.assert_equal(
          a.numpy(), np.sum(np.zeros((3, 2, 0)), axis=2)
      )
  
      a = Tensor.ones(3, 2, 0).sum(axis=2, keepdim=True)
      assert a.shape == (3, 2, 1)
      np.testing.assert_equal(
          a.numpy(), np.sum(np.zeros((3, 2, 0)), axis=2, keepdims=True)
      )
  
imports: import numpy
  import torch
  import unittest, copy
  import mmap
  from tinygrad import Tensor, Device, dtypes
  from tinygrad.helpers import temp
  from extra.gradcheck import numerical_jacobian, jacobian, gradcheck
label_desc: Use image node_id 11 for calling the TestZeroShapeTensor obj's underlying member method code with example usage: obj.test_reduce_over_zero() without return types