code: def test_onehot_encoding(tmpdir, backend, ray_cluster_2cpu):
      input_features = [
          number_feature(),
          category_feature(encoder={"type": "onehot"}),
      ]
      output_features = [binary_feature()]
  
      data_csv_path = os.path.join(tmpdir, "dataset.csv")
      dataset = generate_data(
          input_features, output_features, data_csv_path
      )
      config = {
          "input_features": input_features,
          "output_features": output_features,
          TRAINER: {"epochs": 2},
      }
      run_test_suite(config, dataset, backend)
  
file_path: ludwig/tests/integration_tests/test_cached_preprocessing.py
imports: import os
  import numpy
  import pytest
  from ludwig.api import LudwigModel
  from ludwig.constants import MODEL_ECD, MODEL_GBM, PREPROCESSING, PROC_COLUMN, TRAINER
  from tests.integration_tests.test_gbm import category_feature
  from tests.integration_tests.utils import binary_feature, generate_data, number_feature, run_test_suite, text_feature
label_desc: Use image node_id 1 for calling a global function with example usage: test_onehot_encoding(tmpdir, backend, ray_cluster_2cpu) without return types