code: def test_extract(tmp_fs_path):
      def make_zip(path: str):
          with fsspec.open(path, mode="wb") as f:
              with zipfile.ZipFile(f, mode="w") as z:
                  z.writestr("1", b"data")
                  z.writestr("2", b"data")
  
      src = osp.join(tmp_fs_path, "src", "test.zip")
      make_zip(src)
      assert len(fsspec.open_files(f"zip://*::{src}")) == 2
  
      dst = osp.join(tmp_fs_path, "dst")
      assert not fs.exists(dst)
  
      # Can copy and extract afterwards:
      if fs.isdisk(tmp_fs_path):
          fs.cp(src, osp.join(dst, "test.zip"))
          assert fs.exists(osp.join(dst, "test.zip"))
          extract_zip(osp.join(dst, "test.zip"), dst)
          assert len(fs.ls(dst)) == 3
          for i in range(2):
              fs.exists(osp.join(dst, str(i)))
          fs.rm(dst)
  
      # Can copy and extract:
      fs.cp(src, dst, extract=True)
      assert len(fs.ls(dst)) == 2
      for i in range(2):
          fs.exists(osp.join(dst, str(i)))
  
file_path: pytorch_geometric/test/io/test_fs.py
imports: import zipfile
  from os import path
  import fsspec
  import pytest
  import torch
  import torch_geometric.typing
  from torch_geometric.data import extract_zip
  from torch_geometric.io import fs
  from torch_geometric.testing import noWindows
label_desc: Use image node_id 8 for calling a global function with example usage: test_extract(tmp_fs_path) without return types