code: def test_tutorial_logging(
      tmpdir: Path, args: List[str], expected: List[str]
  ) -> None:
      cmd = [
          "examples/tutorials/basic/running_your_hydra_app/4_logging/my_app.py",
          f"hydra.run.dir={tmpdir}",
          "hydra.job.chdir=True",
      ]
      cmd.extend(args)
      result, _err = run_python_script(cmd)
      lines = result.splitlines()
      assert len(lines) == len(expected)
      for i in range(len(lines)):
          assert re.findall(re.escape(expected[i]), lines[i])
  
imports: import os
  import re
  import subprocess
  from pathlib import Path
  from textwrap import dedent
  from typing import Any, List
  from _pytest.python_api import RaisesContext
  from omegaconf import DictConfig, OmegaConf
  from pytest import mark, raises
  from hydra.test_utils.test_utils import TSweepRunner, TTaskRunner, chdir_hydra_root, run_python_script, verify_dir_outputs
label_desc: Use image node_id 4 for calling a global function with example usage: test_tutorial_logging(tmpdir, args, expected) without return types