code: def test_block_picking(multiblock_poly):
      """Test we can pick a block."""
  
      pl = pv.Plotter()
      width, height = pl.window_size
      actor, mapper = pl.add_composite(multiblock_poly)
  
      picked_blocks = []
  
      def turn_blue(index, dataset):
          mapper.block_attr[index].color = "blue"
          picked_blocks.append(index)
  
      pl.enable_block_picking(callback=turn_blue)
      pl.show(auto_close=False)
  
      # click in the corner
      assert not picked_blocks
      pl.iren._mouse_left_button_click(0, 0)
      assert not picked_blocks
  
      # click directly in the middle
      pl.iren._mouse_left_button_click(width // 2, height // 2)
      assert mapper.block_attr[2].color
  
      assert pl.picked_block_index == picked_blocks[0]
  
imports: import os
  import numpy
  import pytest
  import vtk
  import pyvista
  from pyvista.plotting.errors import PyVistaPickingError
label_desc: Use image node_id 17 for calling a global function with example usage: test_block_picking(multiblock_poly) without return types