code: def test_sudoku_generator(n):
      """Generate Sudoku graphs of various sizes and verify their properties."""
      G = nx.sudoku_graph(n)
      expected_nodes = n**4
      expected_degree = (n - 1) * (3 * n + 1)
      expected_edges = expected_nodes * expected_degree // 2
      assert not G.is_directed()
      assert not G.is_multigraph()
      assert G.number_of_nodes() == expected_nodes
      assert G.number_of_edges() == expected_edges
      assert all(d == expected_degree for _, d in G.degree)
  
      if n == 2:
          assert sorted(G.neighbors(6)) == [2, 3, 4, 5, 7, 10, 14]
      elif n == 3:
          assert sorted(G.neighbors(42)) == [
              6,
              15,
              24,
              33,
              34,
              35,
              36,
              37,
              38,
              39,
              40,
              41,
              43,
              44,
              51,
              52,
              53,
              60,
              69,
              78,
          ]
      elif n == 4:
          assert sorted(G.neighbors(0)) == [
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              32,
              33,
              34,
              35,
              48,
              49,
              50,
              51,
              64,
              80,
              96,
              112,
              128,
              144,
              160,
              176,
              192,
              208,
              224,
              240,
          ]
  
imports: import pytest
  import networkx
label_desc: Use image node_id 2 for calling a global function with example usage: test_sudoku_generator(n) without return types