code: def test_sanitization(self):
      self.assertEqual(tensor.sanitize_spec_name("normal"), "normal")
      self.assertEqual(
          tensor.sanitize_spec_name("123nums"), "tensor_123nums"
      )
      self.assertEqual(tensor.sanitize_spec_name("____"), "tensor_____")
      self.assertEqual(tensor.sanitize_spec_name("_abc"), "tensor__abc")
      self.assertEqual(tensor.sanitize_spec_name("AdEfG"), "adefg")
      self.assertEqual(
          tensor.sanitize_spec_name("1_2_3_a"), "tensor_1_2_3_a"
      )
      self.assertEqual(tensor.sanitize_spec_name("a_1-2"), "a_1_2")
      self.assertEqual(tensor.sanitize_spec_name("f6%hj"), "f6_hj")
      self.assertEqual(tensor.sanitize_spec_name("45&%"), "tensor_45__")
      self.assertEqual(tensor.sanitize_spec_name(""), "unknown")
  
imports: import pickle
  from absl.testing import parameterized
  import numpy
  from tensorflow.core.framework import full_type_pb2
  from tensorflow.core.function import trace_type
  from tensorflow.python.eager import context
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor
  from tensorflow.python.framework import tensor_shape
  from tensorflow.python.framework import test_util
  from tensorflow.python.framework import type_spec
  from tensorflow.python.framework.type_utils import fulltypes_for_flat_tensors
  from tensorflow.python.ops import array_ops
  from tensorflow.python.platform import googletest
label_desc: Use image node_id 1 for calling the SpecNameSanizationTest obj's underlying member method code with example usage: obj.test_sanitization() without return types