code: def _run_expand_op_test(self, X, shape, gc, dc):
      shape = np.array(shape)
      op = core.CreateOperator(
          "Expand",
          ["X", "shape"],
          ["Y"],
      )
  
      def ref(X, shape):
          return (X * np.ones(abs(shape)),)
  
      self.assertReferenceChecks(gc, op, [X, shape], ref)
      self.assertDeviceChecks(dc, op, [X, shape], [0])
      self.assertGradientChecks(gc, op, [X, shape], 0, [0])
  
file_path: pytorch/caffe2/python/operator_test/expand_op_test.py
imports: from caffe2.python import core
  from hypothesis import given, settings
  import caffe2.python.hypothesis_test_util
  import caffe2.python.serialized_test.serialized_test_util
  import hypothesis.strategies
  import numpy
label_desc: Use image node_id 2 for calling the TestExpandOp obj's underlying member method code with example usage: obj._run_expand_op_test(X, shape, gc, dc) and returns: unknown