class_docstr: Tests that dispatching utilities correctly select generation strategies.
code: def test_winsorization(self) -> None:
      winsorized = choose_generation_strategy(
          search_space=get_branin_search_space(),
          winsorization_config=WinsorizationConfig(
              upper_quantile_margin=2
          ),
      )
      tc = not_none(winsorized._steps[1].model_kwargs).get(
          "transform_configs"
      )
      self.assertIn("Winsorize", tc)
      self.assertDictEqual(
          tc["Winsorize"],
          {
              "winsorization_config": WinsorizationConfig(
                  lower_quantile_margin=0.0,
                  upper_quantile_margin=2,
                  lower_boundary=None,
                  upper_boundary=None,
              )
          },
      )
      self.assertIn("Derelativize", tc)
      self.assertDictEqual(
          tc["Derelativize"], {"use_raw_status_quo": False}
      )
  
      winsorized = choose_generation_strategy(
          search_space=get_branin_search_space(),
          derelativize_with_raw_status_quo=True,
      )
      tc = not_none(winsorized._steps[1].model_kwargs).get(
          "transform_configs"
      )
      self.assertIn(
          "Winsorize",
          tc,
      )
      self.assertDictEqual(
          tc["Winsorize"],
          {"derelativize_with_raw_status_quo": True},
      )
      self.assertIn(
          "Derelativize",
          tc,
      )
      self.assertDictEqual(
          tc["Derelativize"], {"use_raw_status_quo": True}
      )
  
imports: import logging
  import warnings
  from typing import Any, Dict
  import torch
  from ax.core.objective import MultiObjective
  from ax.core.optimization_config import MultiObjectiveOptimizationConfig
  from ax.modelbridge.dispatch_utils import _make_botorch_step, calculate_num_initialization_trials, choose_generation_strategy, DEFAULT_BAYESIAN_PARALLELISM
  from ax.modelbridge.factory import Cont_X_trans, Y_trans
  from ax.modelbridge.registry import Mixed_transforms, Models
  from ax.modelbridge.transforms.log_y import LogY
  from ax.modelbridge.transforms.winsorize import Winsorize
  from ax.models.winsorization_config import WinsorizationConfig
  from ax.utils.common.testutils import TestCase
  from ax.utils.common.typeutils import not_none
  from ax.utils.testing.core_stubs import get_branin_search_space, get_discrete_search_space, get_experiment, get_factorial_search_space, get_large_factorial_search_space, get_large_ordinal_search_space, get_search_space_with_choice_parameters, run_branin_experiment_with_generation_strategy
  from ax.utils.testing.mock import fast_botorch_optimize
label_desc: Use image node_id 8 for calling the TestDispatchUtils obj's underlying member method code with example usage: obj.test_winsorization() without return types