class_docstr: Test demo data download functions.
class_docstr_tok: ["Test","demo","data","download","functions","."]
docstr: Test data download function.
docstr_tok: ["Test","data","download","function","."]
code: def test_get_us_midlatitude_cyclone_abi(self, gcsfs_mod):
      """Test data download function."""
      from satpy.demo import get_us_midlatitude_cyclone_abi
  
      gcsfs_mod.GCSFileSystem = mock.MagicMock()
      gcsfs_inst = mock.MagicMock()
      gcsfs_mod.GCSFileSystem.return_value = gcsfs_inst
      gcsfs_inst.glob.return_value = ["a.nc", "b.nc"]
      # expected 16 files, got 2
      with pytest.raises(RuntimeError):
          get_us_midlatitude_cyclone_abi()
      # unknown access method
      with pytest.raises(NotImplementedError):
          get_us_midlatitude_cyclone_abi(method="unknown")
  
      gcsfs_inst.glob.return_value = ["a.nc"] * 16
      filenames = get_us_midlatitude_cyclone_abi()
      expected = os.path.join(
          ".", "abi_l1b", "20190314_us_midlatitude_cyclone", "a.nc"
      )
      for fn in filenames:
          assert expected == fn
  
imports: from __future__ import annotations
  import contextlib
  import io
  import os
  import sys
  import tarfile
  import unittest
  from collections import defaultdict
  from unittest import mock
  import pytest
label_desc: Use image node_id 3 for calling the TestDemo obj's underlying member method code with example usage: obj.test_get_us_midlatitude_cyclone_abi(gcsfs_mod) without return types