code: def test_hash(self):
      x1 = provider.ScalarDatum(step=12, wall_time=0.25, value=1.25)
      x2 = provider.ScalarDatum(step=12, wall_time=0.25, value=1.25)
      x3 = provider.ScalarDatum(step=23, wall_time=3.25, value=-0.5)
      self.assertEqual(hash(x1), hash(x2))
      # The next check is technically not required by the `__hash__`
      # contract, but _should_ pass; failure on this assertion would at
      # least warrant some scrutiny.
      self.assertNotEqual(hash(x1), hash(x3))
  
imports: import numpy
  from tensorboard import test
  from tensorboard.data import provider
label_desc: Use image node_id 3 for calling the ScalarDatumTest obj's underlying member method code with example usage: obj.test_hash() without return types