code: def verify_download(url, sha1_hash, overwrite):
      with tempfile.TemporaryDirectory() as root:
          download_path = os.path.join(root, "dat0")
          # Firstly, verify that we are able to get download the data correctly
          download(
              url,
              sha1_hash=sha1_hash,
              path=download_path,
              overwrite=overwrite,
          )
          assert sha1sum(download_path) == sha1_hash
          os.remove(download_path)
  
          # Secondly, verify that we are able to download with multiprocessing
          download_path = os.path.join(root, "dat1")
          with multiprocessing.Pool(2) as pool:
              pool.map(
                  functools.partial(
                      download,
                      sha1_hash=sha1_hash,
                      path=download_path,
                      overwrite=overwrite,
                  ),
                  [url for _ in range(2)],
              )
          assert sha1sum(download_path) == sha1_hash
          os.remove(download_path)
  
file_path: gluon-nlp/tests/test_utils_misc.py
imports: import pytest
  import tempfile
  import os
  import logging
  import multiprocessing
  import functools
  from pathlib import Path
  import numpy
  import mxnet
  from gluonnlp.utils.misc import download, sha1sum, logging_config, get_mxnet_visible_ctx, logerror
label_desc: Use image node_id 2 for calling a global function with example usage: verify_download(url, sha1_hash, overwrite) without return types