code: def test_TFDS_single_host_with_eval_holdout_no_valid_split(self):
      train_ds_gen = tf_inputs.TFDS(
          "para_crawl/ende",
          data_dir=_TESTDATA,
          train=True,
          host_id=0,
          keys=("en", "de"),
          n_hosts=1,
          eval_holdout_size=0.1,
      )
  
      # Just ensure that this doesn't crash.
      for d in train_ds_gen():
          print(f"Train: {d}")
          break
  
      # para_crawl doesn't have a validation set, see that this still doesn't
      # crash because of eval_holdout_set.
      valid_ds_gen = tf_inputs.TFDS(
          "para_crawl/ende",
          data_dir=_TESTDATA,
          train=False,
          host_id=0,
          keys=("en", "de"),
          n_hosts=1,
          eval_holdout_size=0.1,
      )
  
      # Just ensure that this doesn't crash.
      for d in valid_ds_gen():
          print(f"Eval: {d}")
          break
  
imports: import collections
  import os
  from unittest import mock
  import gin
  import numpy
  from t5.data import assert_dataset
  from t5.data import preprocessors
  import tensorflow
  import tensorflow_datasets
  from trax.data import inputs
  from trax.data import tf_inputs
label_desc: Use image node_id 3 for calling the TFInputsTest obj's underlying member method code with example usage: obj.test_TFDS_single_host_with_eval_holdout_no_valid_split() without return types