code: def test_np_global_shape():
      prev_np_shape = set_np_shape(2)
      data = []
  
      def f():
          # scalar
          data.append(mx.np.ones(shape=()))
          # zero-dim
          data.append(mx.np.ones(shape=(0, 1, 2)))
  
      try:
          thread = threading.Thread(target=f)
          thread.start()
          thread.join()
  
          assert_almost_equal(data[0].asnumpy(), np.ones(shape=()))
          assert_almost_equal(
              data[1].asnumpy(), np.ones(shape=(0, 1, 2))
          )
      finally:
          set_np_shape(prev_np_shape)
  
file_path: mxnet/tests/python/unittest/test_thread_local.py
imports: import threading
  import numpy
  import mxnet
  from mxnet import device, attribute
  from mxnet.device import Device
  from mxnet.attribute import AttrScope
  from mxnet.test_utils import assert_almost_equal, set_default_device
  from mxnet.util import _NumpyArrayScope, set_np_shape
label_desc: Use image node_id 8 for calling a global function with example usage: test_np_global_shape() without return types