code: def test_download_cache(mock_urlretrieve) -> None:
      # forcing a re-download should call urlretrieve
      Cora().download(ignore_cache=True)
      assert mock_urlretrieve.called
  
      mock_urlretrieve.reset_mock()
  
      # if already downloaded and in the cache, then another download should skip urlretrieve
      Cora().download()
      assert not mock_urlretrieve.called
  
imports: import pytest
  import tempfile
  import os
  import sys
  import numpy
  from stellargraph.datasets import *
  from urllib.error import URLError
  from stellargraph.datasets.dataset_loader import DatasetLoader
  from urllib.request import urlretrieve
  from unittest.mock import patch
label_desc: Use image node_id 5 for calling a global function with example usage: test_download_cache(mock_urlretrieve) without return types