code: def test_infer_params():
      assert _infer_params({}) == []
      assert _infer_params({"some": "val"}) == []
      assert _infer_params(
          {"some": "val", "param": tune.uniform(0, 1)}
      ) == ["param"]
      assert _infer_params(
          {"some": "val", "param": tune.grid_search([0, 1])}
      ) == ["param"]
      assert sorted(
          _infer_params(
              {
                  "some": "val",
                  "param": tune.grid_search([0, 1]),
                  "other": tune.choice([0, 1]),
              }
          )
      ) == ["other", "param"]
  
imports: import argparse
  from unittest import mock
  import pytest
  import sys
  from freezegun import freeze_time
  from ray import tune
  from ray.air.constants import TRAINING_ITERATION
  from ray.tune.experimental.output import _get_time_str, _get_trials_by_state, _get_trial_info, _infer_user_metrics, _max_len, _current_best_trial, _best_trial_str, _get_trial_table_data, _get_dict_as_table_data, _infer_params, AirVerbosity, TrainReporter, TuneTerminalReporter
  from ray.tune.experiment.trial import Trial
label_desc: Use image node_id 10 for calling a global function with example usage: test_infer_params() without return types