docstr: Test TQDMProgressBar callback with evaluate entry point
docstr_tok: ["Test","TQDMProgressBar","callback","with","evaluate","entry","point"]
code: def test_progress_bar_evaluate(self) -> None:
      """
      Test TQDMProgressBar callback with evaluate entry point
      """
      input_dim = 2
      dataset_len = 10
      batch_size = 2
      max_epochs = 1
      expected_total = dataset_len / batch_size
  
      dataloader = generate_random_dataloader(
          dataset_len, input_dim, batch_size
      )
      state = State(
          entry_point=EntryPoint.EVALUATE,
          eval_state=PhaseState(
              dataloader=dataloader,
              max_epochs=max_epochs,
          ),
      )
  
      my_unit = DummyEvalUnit(2)
      progress_bar = TQDMProgressBar()
      progress_bar.on_eval_epoch_start(state, my_unit)
      self.assertEqual(
          none_throws(progress_bar._eval_progress_bar).total,
          expected_total,
      )
  
file_path: tnt/tests/framework/callbacks/test_tqdm_progress_bar.py
imports: import unittest
  from pyre_extensions import none_throws
  from torchtnt.framework._test_utils import DummyEvalUnit, DummyPredictUnit, DummyTrainUnit, generate_random_dataloader
  from torchtnt.framework.callbacks.tqdm_progress_bar import TQDMProgressBar
  from torchtnt.framework.state import EntryPoint, PhaseState, State
  from torchtnt.framework.train import train
label_desc: Use image node_id 3 for calling the TQDMProgressBarTest obj's underlying member method code with example usage: obj.test_progress_bar_evaluate() without return types