code: def assertDictEqual(self, a, b, msg=None):
      self.assertEqual(a.keys(), b.keys())
  
      for key in a:
          self.assertAllEqual(a[key], b[key])
  
file_path: agents/tf_agents/examples/cql_sac/kumar20/dataset/dataset_utils_test.py
imports: import numpy
  import tensorflow
  from tf_agents.examples.cql_sac.kumar20.dataset.dataset_utils import create_collect_data_spec
  from tf_agents.examples.cql_sac.kumar20.dataset.dataset_utils import create_episode_dataset
  from tf_agents.specs.array_spec import ArraySpec
  from tf_agents.trajectories import policy_step
  from tf_agents.trajectories import time_step
  from tf_agents.trajectories import trajectory
  from tf_agents.utils import test_utils
label_desc: Use image node_id 1 for calling the UtilsTest obj's underlying member method code with example usage: obj.assertDictEqual(a, b, msg) without return types