code: def test_is_cyclic_number():
      assert is_cyclic_number(15) == True
      assert is_cyclic_number(randprime(1, 2000) ** 2) == False
      assert is_cyclic_number(randprime(1000, 100000)) == True
      assert is_cyclic_number(4) == False
      raises(ValueError, lambda: is_cyclic_number(-5))
  
      for n in range(1, 100):
          assert is_cyclic_number(n) == (n in A003277)
  
file_path: sympy/sympy/combinatorics/tests/test_group_numbers.py
imports: from sympy.combinatorics.group_numbers import is_nilpotent_number, is_abelian_number, is_cyclic_number, _holder_formula, groups_count
  from sympy.ntheory.factor_ import factorint
  from sympy.ntheory.generate import prime
  from sympy.testing.pytest import raises
  from sympy import randprime
label_desc: Use image node_id 3 for calling a global function with example usage: test_is_cyclic_number() without return types