code: def test_eq(self):
      original1 = NotHashable()
      original2 = NotHashable()
      # Different wrappers pointing to the same object should be equal.
      self.assertEqual(
          utils.CompareById(original1), utils.CompareById(original1)
      )
      # The original objet and the wrapped object should not be equal.
      self.assertNotEqual(original1, utils.CompareById(original1))
      # Similarly a different object should not be equal to a wrapped object.
      self.assertNotEqual(original2, utils.CompareById(original1))
      # None should also not compare.
      self.assertNotEqual(None, utils.CompareById(original1))
      # Different wrapped objects should not be equal.
      self.assertNotEqual(
          utils.CompareById(original1), utils.CompareById(original2)
      )
  
imports: from absl.testing import parameterized
  import numpy
  from sonnet.src import initializers
  from sonnet.src import test_utils
  from sonnet.src import utils
  import tensorflow
label_desc: Use image node_id 3 for calling the CompareByIdTest obj's underlying member method code with example usage: obj.test_eq() without return types