class_docstr: tests for BinaryCrossesntropy StrongConvex loss.
docstr: Test the call method to ensure it returns the correct value.
  
  Args:
    logits: unscaled output of model
    y_true: label
    delta: delta value for StrongConvexHuber loss.
    result: correct loss calculation value
docstr_tok: ["Test","the","call","method","to","ensure","it","returns","the","correct","value",".","Args",":","logits",":","unscaled","output","of","model","y_true",":","label","delta",":","delta","value","for","StrongConvexHuber","loss",".","result",":","correct","loss","calculation","value"]
code: def test_calculation(self, logits, y_true, delta, result):
      """Test the call method to ensure it returns the correct value.
  
      Args:
        logits: unscaled output of model
        y_true: label
        delta: delta value for StrongConvexHuber loss.
        result: correct loss calculation value
      """
      logits = tf.Variable(logits, False, dtype=tf.float32)
      y_true = tf.Variable(y_true, False, dtype=tf.float32)
      loss = StrongConvexHuber(0.00001, 1, 1, delta)
      loss = loss(y_true, logits)
      self.assertAllClose(loss.numpy(), result)
  
imports: from contextlib import contextmanager
  from io import StringIO
  import sys
  from absl.testing import parameterized
  import tensorflow.compat.v1
  from tensorflow.compat.v1.python.framework import test_util
  from tensorflow.compat.v1.python.keras import keras_parameterized
  from tensorflow.compat.v1.python.keras.regularizers import L1L2
  from tensorflow_privacy.privacy.bolt_on.losses import StrongConvexBinaryCrossentropy
  from tensorflow_privacy.privacy.bolt_on.losses import StrongConvexHuber
  from tensorflow_privacy.privacy.bolt_on.losses import StrongConvexMixin
label_desc: Use image node_id 3 for calling the HuberTests obj's underlying member method code with example usage: obj.test_calculation(logits, y_true, delta, result) without return types