code: def test_json_serialization():
      suite_result = create_suite_result(
          include_results_without_conditions=False,
          include_results_without_display=False,
          include_results_without_conditions_and_display=False,
      )
      output = JsonSerializer(suite_result).serialize()
  
      # NOTE: SuiteResult JSON serializer returns not a json string
      # but a simple builtin python values which then can be serailized into json string.
      # We need to verify that this is actually true
      assert_that(json.loads(json.dumps(output)) == output)
  
      assert_that(
          output,
          has_entries(
              {
                  "name": instance_of(str),
                  "results": has_length(
                      equal_to(len(suite_result.results))
                  ),
              }
          ),
      )
  
      for index, payload in enumerate(output["results"]):
          result = suite_result.results[index]
          if isinstance(result, CheckResult):
              assert_check_result_json_output(
                  payload, suite_result.results[index]
              )
          elif isinstance(result, CheckFailure):
              assert_check_failure_json_output(payload)
          else:
              raise TypeError(
                  f"Suite contains results of unknown type - {type(result)}"
              )
  
imports: import json
  import typing
  from bs4 import BeautifulSoup
  from hamcrest import all_of, assert_that, calling, contains_exactly, contains_string, equal_to, greater_than, has_entries, has_item, has_length, has_property, instance_of, matches_regexp, only_contains, raises, starts_with
  from IPython.display import Image
  from ipywidgets import HTML, Accordion, Tab, VBox
  from plotly.basedatatypes import BaseFigure
  from wandb.sdk.data_types.base_types.wb_value import WBValue
  from deepchecks.core.check_result import CheckFailure, CheckResult
  from deepchecks.core.serialization.common import form_output_anchor, plotlyjs_script
  from deepchecks.core.serialization.suite_result.html import SuiteResultSerializer
  from deepchecks.core.serialization.suite_result.ipython import SuiteResultSerializer
  from deepchecks.core.serialization.suite_result.json import SuiteResultSerializer
  from deepchecks.core.serialization.suite_result.junit import SuiteResultSerializer
  from deepchecks.core.serialization.suite_result.wandb import SuiteResultSerializer
  from deepchecks.core.serialization.suite_result.widget import SuiteResultSerializer
  from deepchecks.core.suite import SuiteResult
  from deepchecks.utils.strings import get_random_string
  from tests.common import create_suite_result, instance_of_ipython_formatter
  from tests.serialization.test_check_failure_serialization import assert_json_output
  from tests.serialization.test_check_result_serialization import assert_json_output
label_desc: Use image node_id 13 for calling a global function with example usage: test_json_serialization() without return types