code: def assert_option_strategy(strategy, init_opts, exp_opts, **kwargs):
      """Test for any strategy for options handler
      strategy : strategy to use
      init_opts : dict with keys :code:`{'c1', 'c2', 'w'}` or :code:`{'c1',
              'c2', 'w', 'k', 'p'}`
      exp_opts: dict with expected values after strategy with given parameters
      kwargs: arguments to use for given strategy
      """
      assert len(init_opts) == len(
          exp_opts
      ), "Size of initial options and expected options must be same"
      oh = OptionsHandler(strategy)
      return_opts = oh(init_opts, **kwargs)
      assert np.allclose(
          list(return_opts.values()),
          list(exp_opts.values()),
          atol=0.001,
          rtol=0,
      ), "Expected options don't match with the given strategy"
  
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 14 for calling a global function with example usage: assert_option_strategy(strategy, init_opts, exp_opts) without return types