class_docstr: Credit: https://stackoverflow.com/questions/33797126/proper-way-to-remove-keys-in-dictionary-with-none-values-in-python
class_docstr_tok: ["Credit",":","https",":","\/\/stackoverflow.com\/questions\/33797126\/proper-way-to-remove-keys-in-dictionary-with-none-values-in-python"]
code: def test_delete_none(self):
      input = {
          "a": 12,
          "b": 34,
          "c": None,
          "k": {
              "d": 34,
              "t": None,
              "m": [
                  {"k": 23, "t": None},
                  [None, 1, 2, 3],
                  {1, 2, None},
              ],
              None: 123,
          },
      }
      truth = {
          "a": 12,
          "b": 34,
          "k": {
              "d": 34,
              "t": None,
              "m": [
                  {"k": 23, "t": None},
                  [None, 1, 2, 3],
                  {1, 2, None},
              ],
              None: 123,
          },
      }
      assert delete_none(input) == truth
  
imports: from __future__ import annotations
  import json
  import os
  import sys
  import unittest.mock
  import warnings
  from pathlib import Path
  from unittest.mock import MagicMock
  import httpx
  import pytest
  from typing_extensions import Literal
  from gradio import EventData, Request
  from gradio.utils import abspath, append_unique_suffix, assert_configs_are_equivalent_besides_ids, check_function_inputs_match, colab_check, delete_none, format_ner_list, get_continuous_fn, get_extension_from_file_path_or_url, get_type_hints, ipython_check, is_in_or_equal, is_special_typed_parameter, kaggle_check, readme_to_html, sagemaker_check, sanitize_list_for_csv, sanitize_value_for_csv, tex2svg, validate_url
label_desc: Use image node_id 1 for calling the TestDeleteNone obj's underlying member method code with example usage: obj.test_delete_none() without return types