code: def test_copyMakeBorder(self):
      try:
          import cv2
      except ImportError:
          raise unittest.SkipTest("Unable to import cv2")
      for img in self.IMAGES:
          cv_img = cv2.imread(img)
          mx_img = mx.nd.array(cv_img)
          top = np.random.randint(1, 10)
          bot = np.random.randint(1, 10)
          left = np.random.randint(1, 10)
          right = np.random.randint(1, 10)
          new_h, new_w, _ = mx_img.shape
          new_h += top + bot
          new_w += left + right
          val = [np.random.randint(1, 255)] * 3
          for type_val in range(0, 5):
              cv_border = cv2.copyMakeBorder(
                  cv_img,
                  top,
                  bot,
                  left,
                  right,
                  borderType=type_val,
                  value=val,
              )
              mx_border = mx.image.copyMakeBorder(
                  mx_img,
                  top,
                  bot,
                  left,
                  right,
                  type=type_val,
                  values=val,
              )
              assert_almost_equal(mx_border.asnumpy(), cv_border)
              out_img = mx.nd.zeros(
                  (new_h, new_w, 3), dtype=mx_img.dtype
              )
              mx.image.copyMakeBorder(
                  mx_img,
                  top,
                  bot,
                  left,
                  right,
                  type=type_val,
                  values=val,
                  out=out_img,
              )
              assert_almost_equal(out_img.asnumpy(), cv_border)
  
imports: import os
  import mxnet
  import numpy
  import scipy.ndimage
  from mxnet.test_utils import *
  from common import xfail_when_nonstandard_decimal_separator
  import shutil
  import tempfile
  import unittest
  import pytest
label_desc: Use image node_id 14 for calling the TestImage obj's underlying member method code with example usage: obj.test_copyMakeBorder() without return types