code: def test_log_progress_noninteractive_filter():
      name = "dl-test"
      lgr = LoggerHelper(name).get_initialized_logger()
      pbar_id = "lp_test"
      with swallow_logs(new_level=logging.INFO, name=name) as cml:
          log_progress(
              lgr.info, pbar_id, "Start", label="testing", total=3
          )
          log_progress(lgr.info, pbar_id, "THERE0", update=1)
          log_progress(
              lgr.info,
              pbar_id,
              "NOT",
              update=1,
              noninteractive_level=logging.DEBUG,
          )
          log_progress(
              lgr.info,
              pbar_id,
              "THERE1",
              update=1,
              noninteractive_level=logging.INFO,
          )
          log_progress(lgr.info, pbar_id, "Done")
          for present in ["Start", "THERE0", "THERE1", "Done"]:
              assert_in(present, cml.out)
          assert_not_in("NOT", cml.out)
  
imports: import inspect
  import logging
  import os.path
  from logging import makeLogRecord
  from os.path import exists
  from unittest.mock import patch
  from datalad import cfg
  from datalad.log import ColorFormatter, LoggerHelper, TraceBack, log_progress, with_progress, with_result_progress
  from datalad.support import ansi_colors
  from datalad.support.constraints import EnsureBool
  from datalad.tests.utils_pytest import SkipTest, assert_equal, assert_in, assert_no_open_files, assert_not_in, assert_re_in, known_failure_githubci_win, ok_, ok_endswith, ok_generator, swallow_logs, with_tempfile
  from datalad.utils import on_windows
label_desc: Use image node_id 8 for calling a global function with example usage: test_log_progress_noninteractive_filter() without return types