code: def test_sum_of_three_squares():
      for i in [
          0,
          1,
          2,
          34,
          123,
          34304595905,
          34304595905394941,
          343045959052344,
          800,
          801,
          802,
          803,
          804,
          805,
          806,
      ]:
          a, b, c = sum_of_three_squares(i)
          assert a**2 + b**2 + c**2 == i
          assert a >= 0
  
      # error
      raises(ValueError, lambda: sum_of_three_squares(-1))
  
      assert sum_of_three_squares(7) is None
      assert sum_of_three_squares((4**5) * 15) is None
      # if there are two zeros, there might be a solution
      # with only one zero, e.g. 25 => (0, 3, 4) or
      # with no zeros, e.g. 49 => (2, 3, 6)
      assert sum_of_three_squares(25) == (0, 0, 5)
      assert sum_of_three_squares(4) == (0, 0, 2)
  
imports: from sympy.core.add import Add
  from sympy.core.mul import Mul
  from sympy.core.numbers import Rational, oo, pi
  from sympy.core.relational import Eq
  from sympy.core.singleton import S
  from sympy.core.symbol import symbols
  from sympy.matrices.dense import Matrix
  from sympy.ntheory.factor_ import factorint
  from sympy.simplify.powsimp import powsimp
  from sympy.core.function import _mexpand
  from sympy.core.sorting import default_sort_key, ordered
  from sympy.functions.elementary.trigonometric import sin
  from sympy.solvers.diophantine import diophantine
  from sympy.solvers.diophantine.diophantine import diop_DN, diop_solve, diop_ternary_quadratic_normal, diop_general_pythagorean, diop_ternary_quadratic, diop_linear, diop_quadratic, diop_general_sum_of_squares, diop_general_sum_of_even_powers, descent, diop_bf_DN, divisible, equivalent, find_DN, ldescent, length, reconstruct, partition, power_representation, prime_as_sum_of_two_squares, square_factor, sum_of_four_squares, sum_of_three_squares, transformation_to_DN, transformation_to_normal, classify_diop, base_solution_linear, cornacchia, sqf_normal, gaussian_reduce, holzer, check_param, parametrize_ternary_quadratic, sum_of_powers, sum_of_squares, _diop_ternary_quadratic_normal, _nint_or_floor, _odd, _even, _remove_gcd, _can_do_sum_of_squares, DiophantineSolutionSet, GeneralPythagorean, BinaryQuadratic
  from sympy.testing.pytest import slow, raises, XFAIL
  from sympy.utilities.iterables import signed_permutations
label_desc: Use image node_id 36 for calling a global function with example usage: test_sum_of_three_squares() without return types