code: def _construct_expected_param_dict(
      self, obsf: ObservationFeatures, transform: MapUnitX
  ):
      result = {"x": 2, "a": 2, "b": "b"}
      for step in ("step_1", "step_2"):
          if step in obsf.parameters:
              scale_fac = self.target_range / (
                  transform.bounds[step][1] - transform.bounds[step][0]
              )
              # pyre-fixme[6]: For 2nd param expected `Union[int, str]` but got
              #  `float`.
              # pyre-fixme[58]: `*` is not supported for operand types
              #  `Union[None, bool, float, int, str]` and `float`.
              result[step] = (
                  self.target_lb + obsf.parameters[step] * scale_fac
              )
      return result
  
file_path: Ax/ax/modelbridge/transforms/tests/test_map_unit_x_transform.py
imports: from copy import deepcopy
  import numpy
  from ax.core.observation import Observation, ObservationData, ObservationFeatures
  from ax.core.parameter import ChoiceParameter, ParameterType, RangeParameter
  from ax.core.search_space import SearchSpace
  from ax.modelbridge.transforms.map_unit_x import MapUnitX
  from ax.utils.common.testutils import TestCase
label_desc: Use image node_id 5 for calling the MapUnitXTransformTest obj's underlying member method code with example usage: obj._construct_expected_param_dict(obsf, transform) and returns: result