code: def test_bound_handling(
      bounds, positions_inbound, positions_out_of_bound, strategy
  ):
      bh = BoundaryHandler(strategy=strategy)
      # Test if it doesn't handle inbound positions
      inbound_handled = bh(positions_inbound, bounds)
      assert inbound_handled.all() == positions_inbound.all()
  
      # Test if all particles are handled to a position inside the boundaries
      outbound_handled = bh(positions_out_of_bound, bounds)
      lower_than_bound = outbound_handled >= bounds[0]
      greater_than_bound = outbound_handled <= bounds[1]
      assert lower_than_bound.all()
      assert greater_than_bound.all()
  
imports: import pytest
  import inspect
  import numpy
  from collections import OrderedDict
  from pyswarms.backend.handlers import BoundaryHandler, VelocityHandler, OptionsHandler, HandlerMixin
  import pyswarms.backend.handlers
label_desc: Use image node_id 2 for calling a global function with example usage: test_bound_handling(bounds, positions_inbound, positions_out_of_bound, strategy) without return types