code: def test_logo_widget(verify_image_cache):
      pl = pv.Plotter()
      pl.add_mesh(pv.Sphere())
      pl.add_logo_widget()
      pl.show()
  
      pl = pv.Plotter()
      pl.add_mesh(pv.Sphere())
      pl.add_logo_widget(position=(0.01, 0.01), size=(0.8, 0.8))
      pl.show()
  
      pl = pv.Plotter()
      # has a 2 x 1 aspect ratio
      pl.add_logo_widget(
          examples.mapfile, position=(0.0, 0.0), size=(0.99, 0.495)
      )
      pl.show()
  
      pl = pv.Plotter()
      pl.add_logo_widget(
          examples.download_vtk_logo().to_image(),
          position=(0.0, 0.0),
          size=(0.8, 0.8),
      )
      pl.show()
  
      pl = pv.Plotter()
      with pytest.raises(
          TypeError, match="must be a pyvista.ImageData or a file path"
      ):
          pl.add_logo_widget(logo=0)
  
imports: import numpy
  import pytest
  import vtk
  import pyvista
  from pyvista import examples
  from pyvista.core.errors import VTKVersionError
  from pyvista.plotting.affine_widget import DARK_YELLOW, get_angle, ray_plane_intersection
label_desc: Use image node_id 19 for calling a global function with example usage: test_logo_widget(verify_image_cache) without return types