code: def testparse_loss_key(self):
      self.assertDictEqual(
          utils.parse_keys_and_weights("a"), {"a": 1.0}
      )
      self.assertDictEqual(
          utils.parse_keys_and_weights("a :0.9"), {"a": 0.9}
      )
      self.assertDictEqual(
          utils.parse_keys_and_weights("a,b"), {"a": 1.0, "b": 1.0}
      )
      self.assertDictEqual(
          utils.parse_keys_and_weights("a, b"), {"a": 1.0, "b": 1.0}
      )
      self.assertDictEqual(
          utils.parse_keys_and_weights("a, b: 2."), {"a": 1.0, "b": 2.0}
      )
      self.assertDictEqual(
          utils.parse_keys_and_weights("a:0.1,b:0.9"),
          {"a": 0.1, "b": 0.9},
      )
      self.assertDictEqual(
          utils.parse_keys_and_weights("a:0.1, b : 0.9"),
          {"a": 0.1, "b": 0.9},
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import math
  import tensorflow
  from tensorflow_ranking.python import utils
label_desc: Use image node_id 19 for calling the UtilsTest obj's underlying member method code with example usage: obj.testparse_loss_key() without return types