class_docstr: Test that SparseSoftmaxCrossEntropyWithLogits operates reproducibly.
  
  Inheriting from sparse_xent_op_test_base.SparseXentOpTestBase ensures that
  regular op functionality is correct when the deterministic code-path is
  selected.
  
  Note that because nn_ops.sparse_softmax_cross_entropy_with_logits_v2 calls
  nn_ops.sparse_softmax_cross_entropy_with_logits directly, the focus of
  testing is on the former in order to test both.
class_docstr_tok: ["Test","that","SparseSoftmaxCrossEntropyWithLogits","operates","reproducibly",".","Inheriting","from","sparse_xent_op_test_base.SparseXentOpTestBase","ensures","that","regular","op","functionality","is","correct","when","the","deterministic","code-path","is","selected",".","Note","that","because","nn_ops.sparse_softmax_cross_entropy_with_logits_v2","calls","nn_ops.sparse_softmax_cross_entropy_with_logits","directly",",","the","focus","of","testing","is","on","the","former","in","order","to","test","both","."]
code: def testForward(self):
      with self.cached_session():
          for logits_dtype in [
              np.float16,
              np.float32,
              np.float64,
              dtypes.bfloat16.as_numpy_dtype,
          ]:
              for labels_dtype in [np.int32, np.int64]:
                  for trial in range(5):
                      seed = 123 + trial
                      labels, logits = self._generateInputs(
                          labels_dtype, logits_dtype, seed=seed
                      )
                      result_a = nn_ops.sparse_softmax_cross_entropy_with_logits_v2(
                          labels=labels, logits=logits
                      )
                      result_b = nn_ops.sparse_softmax_cross_entropy_with_logits_v2(
                          labels=labels, logits=logits
                      )
                      self.assertAllEqual(result_a, result_b)
  
imports: import numpy
  from tensorflow.python.eager import backprop
  from tensorflow.python.framework import config
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors_impl
  from tensorflow.python.framework import test_util
  from tensorflow.python.kernel_tests.sparse_ops import sparse_xent_op_test_base
  from tensorflow.python.ops.nn_grad import _SparseSoftmaxCrossEntropyWithLogitsGrad
  from tensorflow.python.ops import gen_nn_ops
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.platform import test
label_desc: Use image node_id 4 for calling the SparseXentOpDeterministicTest obj's underlying member method code with example usage: obj.testForward() without return types