code: def test_model_names(setup):
      garch = GARCH(2, 0, 0)
      assert_equal(garch.name, "ARCH")
      garch = GARCH(2, 0, 2)
      assert_equal(garch.name, "GARCH")
      garch = GARCH(2, 2, 2)
      assert_equal(garch.name, "GJR-GARCH")
      garch = GARCH(1, 0, 0, power=1.0)
      assert_equal(garch.name, "AVARCH")
      garch = GARCH(1, 0, 1, power=1.0)
      assert_equal(garch.name, "AVGARCH")
      garch = GARCH(1, 1, 1, power=1.0)
      assert_equal(garch.name, "TARCH/ZARCH")
      garch = GARCH(3, 0, 0, power=1.5)
      assert_equal(garch.name, "Power ARCH (power: 1.5)")
      assert "Power" in garch.__str__()
      garch = GARCH(1, 2, 1, power=1.5)
      assert_equal(garch.name, "Asym. Power GARCH (power: 1.5)")
      garch = GARCH(2, 0, 2, power=1.5)
      assert_equal(garch.name, "Power GARCH (power: 1.5)")
  
imports: import types
  from typing import NamedTuple
  import warnings
  import numpy
  from numpy.random import RandomState
  from numpy.testing import assert_allclose, assert_almost_equal, assert_array_equal, assert_equal
  import pytest
  from scipy.special import gamma, gammaln
  from arch.univariate import ZeroMean
  from arch.univariate.distribution import Normal, SkewStudent, StudentsT
  import arch.univariate.recursions_python
  from arch.univariate.volatility import APARCH, ARCH, EGARCH, FIGARCH, GARCH, HARCH, ConstantVariance, EWMAVariance, FixedVariance, MIDASHyperbolic, RiskMetrics2006
  from arch.utility.exceptions import InitialValueWarning
label_desc: Use image node_id 17 for calling a global function with example usage: test_model_names(setup) without return types