code: def testJensenShannonDistance(self):
      source_tensor = np.array(
          [[1, 0, 0], [0.1, 0.2, 0.7]], dtype="float32"
      )
      target_tensor = np.array(
          [[1, 0, 0], [0.1, 0.9, 0]], dtype="float32"
      )
      expected_tensor = np.sum(
          self._jsd_func(source_tensor, target_tensor), -1
      )
      expected_value = np.mean(expected_tensor)
      distance_config = configs.DistanceConfig(
          "jensen_shannon_divergence", sum_over_axis=-1
      )
      distance_tensor = distances.pairwise_distance_wrapper(
          tf.constant(source_tensor),
          tf.constant(target_tensor),
          distance_config=distance_config,
      )
      with self.cached_session() as sess:
          distance_value = sess.run(distance_tensor)
          self.assertAllClose(distance_value, expected_value)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import neural_structured_learning.configs
  from neural_structured_learning.lib import distances
  import numpy
  import tensorflow
label_desc: Use image node_id 12 for calling the DistancesTest obj's underlying member method code with example usage: obj.testJensenShannonDistance() without return types