code: def test_json_update_succeeds(self):
      updated_cats_vs_dogs_dict = json_utils.update(
          json_dict=_CATS_VS_DOGS_V1_DICT
      )
  
      for section in _MODEL_CARD_SECTIONS:
          with self.subTest(name=section):
              self.assertDictEqual(
                  updated_cats_vs_dogs_dict.get(section),
                  _CATS_VS_DOGS_V2_DICT.get(section),
              )
  
      with self.subTest(name=_QUANTITATIVE_ANALYSIS):
          # Check Graphics fields are equal
          v1_graphics_updated = updated_cats_vs_dogs_dict.get(
              _QUANTITATIVE_ANALYSIS
          ).get("graphics")
          v2_graphics = _CATS_VS_DOGS_V2_DICT.get(
              _QUANTITATIVE_ANALYSIS
          ).get("graphics")
          self.assertDictEqual(v1_graphics_updated, v2_graphics)
  
          # Check PerformanceMetrics fields are equal length
          v1_metrics_updated = updated_cats_vs_dogs_dict.get(
              _QUANTITATIVE_ANALYSIS
          ).get("performance_metrics")
          v2_metrics = _CATS_VS_DOGS_V2_DICT.get(
              _QUANTITATIVE_ANALYSIS
          ).get("performance_metrics")
          self.assertLen(v1_metrics_updated, len(v2_metrics))
  
          # Check PerformanceMetrics fields are equal value
          for v1m, v2m in zip(v1_metrics_updated, v2_metrics):
              self.assertSameElements(v1m.keys(), v2m.keys())
              for field in v1m.keys():
                  if field == _CONFIDENCE_INTERVAL:
                      self.assertEqual(
                          str(v1m[_CONFIDENCE_INTERVAL]["lower_bound"]),
                          str(v2m[_CONFIDENCE_INTERVAL]["lower_bound"]),
                      )
                      self.assertEqual(
                          str(v1m[_CONFIDENCE_INTERVAL]["upper_bound"]),
                          str(v2m[_CONFIDENCE_INTERVAL]["upper_bound"]),
                      )
                  else:
                      self.assertEqual(str(v1m[field]), str(v2m[field]))
  
file_path: model-card-toolkit/model_card_toolkit/utils/json_utils_test.py
imports: import json
  import os
  import pkgutil
  import jsonschema
  from absl.testing import absltest, parameterized
  from model_card_toolkit.utils import json_utils
label_desc: Use image node_id 5 for calling the JsonUtilsTest obj's underlying member method code with example usage: obj.test_json_update_succeeds() without return types