class_docstr: Test case for downloading an hrit tarball.
class_docstr_tok: ["Test","case","for","downloading","an","hrit","tarball","."]
docstr: Test that files are not downloaded twice.
docstr_tok: ["Test","that","files","are","not","downloaded","twice","."]
code: def test_do_not_download_same_file_twice(self):
      """Test that files are not downloaded twice."""
      from satpy.demo import download_seviri_hrit_20180228_1500
  
      get_mock = mock.MagicMock()
      self.get_mock.return_value.__enter__ = get_mock
      with mock_filesystem():
          files = download_seviri_hrit_20180228_1500(
              subset={"HRV": [1, 2, 3], "IR_108": [1, 2], "EPI": None}
          )
          new_files = download_seviri_hrit_20180228_1500(
              subset={"HRV": [1, 2, 3], "IR_108": [1, 2], "EPI": None}
          )
          assert set(files) == set(new_files)
          assert get_mock.call_count == 6
  
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 6 for calling the TestSEVIRIHRITDemoDownload obj's underlying member method code with example usage: obj.test_do_not_download_same_file_twice() without return types