code: def test__eval_step__epoch_end__flow(tmpdir):
      """Tests that only training_step can be used."""
  
      class TestModel(DeterministicModel):
          def training_step(self, batch, batch_idx):
              acc = self.step(batch, batch_idx)
              acc = acc + batch_idx
              self.training_step_called = True
              return acc
  
          def validation_step(self, batch, batch_idx):
              self.validation_step_called = True
              if batch_idx == 0:
                  out = ["1", 2, torch.tensor(2)]
                  self.out_a = out
              if batch_idx > 0:
                  out = {"something": "random"}
                  self.out_b = out
              return out
  
          def backward(self, loss):
              return LightningModule.backward(self, loss)
  
      model = TestModel()
      trainer = Trainer(
          default_root_dir=tmpdir,
          limit_train_batches=2,
          limit_val_batches=2,
          max_epochs=2,
          log_every_n_steps=1,
          enable_model_summary=False,
      )
  
      trainer.fit(model)
  
      # make sure correct steps were called
      assert model.validation_step_called
  
file_path: pytorch-lightning/tests/tests_pytorch/loops/test_evaluation_loop_flow.py
imports: import torch
  from lightning.pytorch import Trainer
  from lightning.pytorch.core.module import LightningModule
  from lightning.pytorch.trainer.states import RunningStage
  from torch import Tensor
  from tests_pytorch.helpers.deterministic_model import DeterministicModel
label_desc: Use image node_id 2 for calling a global function with example usage: test__eval_step__epoch_end__flow(tmpdir) and returns: acc, out, LightningModule