code: def test_cyclic_gc():
      # One object references itself
      instance = m.DynamicClass()
      instance.circular_reference = instance
  
      cstats = ConstructorStats.get(m.DynamicClass)
      assert cstats.alive() == 1
      del instance
      assert cstats.alive() == 0
  
      # Two object reference each other
      i1 = m.DynamicClass()
      i2 = m.DynamicClass()
      i1.cycle = i2
      i2.cycle = i1
  
      assert cstats.alive() == 2
      del i1, i2
      assert cstats.alive() == 0
  
imports: import sys
  import pytest
  import env
  from pybind11_tests import ConstructorStats
  from pybind11_tests import methods_and_attributes
label_desc: Use image node_id 11 for calling a global function with example usage: test_cyclic_gc() without return types