code: def test_normality():
      if debug_mode:
          if "test normality" not in to_test:
              return
          else:
              print("\n\nTEST NON-NORMALITY", end="")
      for ds in datasets:
          for dt in dt_s_list:
              if debug_mode:
                  print("\n" + dt_s_tup_to_string(dt) + ": ", end="")
  
              obtained = results_sm[ds][dt].test_normality(signif=0.05)
              err_msg = build_err_msg(
                  ds, dt, "TEST NON-NORMALITY - STATISTIC"
              )
              obt_statistic = obtained.test_statistic
              des_statistic = results_ref[ds][dt]["test_norm"][
                  "joint_test_statistic"
              ]
              assert_allclose(
                  obt_statistic,
                  des_statistic,
                  rtol,
                  atol,
                  False,
                  err_msg,
              )
              err_msg = build_err_msg(
                  ds, dt, "TEST NON-NORMALITY - P-VALUE"
              )
              obt_pvalue = obtained.pvalue
              des_pvalue = results_ref[ds][dt]["test_norm"][
                  "joint_pvalue"
              ]
              assert_allclose(
                  obt_pvalue, des_pvalue, rtol, atol, False, err_msg
              )
              # call methods to assure they do not raise exceptions
              obtained.summary()
              str(obtained)
  
imports: import numpy
  from numpy.testing import assert_, assert_allclose, assert_raises
  import statsmodels.datasets.macrodata.data
  from statsmodels.tsa.vector_ar.tests.JMulTi_results.parse_jmulti_vecm_output import sublists
  from statsmodels.tsa.vector_ar.var_model import VAR
  from .JMulTi_results.parse_jmulti_var_output import dt_s_tup_to_string, load_results_jmulti
label_desc: Use image node_id 15 for calling a global function with example usage: test_normality() without return types