code: def test_metadata(test_images):
      meta = iio.immeta(test_images / "newtonscradle.gif")
      assert "version" in meta and meta["version"] == b"GIF89a"
  
      with iio.imopen(
          test_images / "newtonscradle.gif", "r", plugin="pillow"
      ) as image_file:
          image_file.read(index=5)
          meta = image_file.metadata(index=0)
          assert "version" in meta and meta["version"] == b"GIF89a"
          assert "palette" not in meta
  
      meta_all = iio.immeta(
          test_images / "newtonscradle.gif", exclude_applied=False
      )
      palette = meta_all["palette"]
      assert palette.shape == (102, 3)
      assert np.issubdtype(palette.dtype, np.number)
  
imports: import io
  import os
  from pathlib import Path
  import imageio.v3
  import numpy
  import pytest
  from imageio.core.request import InitializationError, Request
  from imageio.core.v3_plugin_api import PluginV3
  from imageio.plugins.pillow import PillowPlugin
  from PIL import Image, ImageSequence, ImageOps, __version__
label_desc: Use image node_id 34 for calling a global function with example usage: test_metadata(test_images) without return types