class_docstr: Test cases for diagnostics infra.
class_docstr_tok: ["Test","cases","for","diagnostics","infra","."]
code: def test_diagnostic_log_is_not_emitted_when_level_less_than_diagnostic_options_verbosity_level(
      self,
  ):
      verbosity_level = logging.INFO
      self.context.options.verbosity_level = verbosity_level
      with self.context:
          diagnostic = infra.Diagnostic(
              self.rules.rule_without_message_args, infra.Level.NOTE
          )
  
          with self.assertLogs(
              diagnostic.logger, level=verbosity_level
          ) as assert_log_context:
              diagnostic.log(logging.DEBUG, "debug message")
              # NOTE: self.assertNoLogs only exist >= Python 3.10
              # Add this dummy log such that we can pass self.assertLogs, and inspect
              # assert_log_context.records to check if the log level is correct.
              diagnostic.log(logging.INFO, "info message")
  
      for record in assert_log_context.records:
          self.assertGreaterEqual(record.levelno, logging.INFO)
      self.assertFalse(
          any(
              message.find("debug message") >= 0
              for message in diagnostic.additional_messages
          )
      )
  
imports: from __future__ import annotations
  import contextlib
  import dataclasses
  import io
  import logging
  import typing
  import unittest
  from typing import AbstractSet, Protocol, Tuple
  import torch
  from torch.onnx import errors
  from torch.onnx._internal import diagnostics
  from torch.onnx._internal.diagnostics import infra
  from torch.onnx._internal.diagnostics.infra import formatter, sarif
  from torch.onnx._internal.fx import diagnostics
  from torch.testing._internal import common_utils, logging_utils
label_desc: Use image node_id 3 for calling the TestDiagnosticsInfra obj's underlying member method code with example usage: obj.test_diagnostic_log_is_not_emitted_when_level_less_than_diagnostic_options_verbosity_level() without return types