code: def test_save_and_load_model_card(self):
      temp_dir = self.create_tempdir()
      model_card_py = model_card.ModelCard(
          model_details=model_card.ModelDetails(name="an awesome model")
      )
  
      with self.subTest("save and load from json"):
          json_path = os.path.join(
              temp_dir, "awesome_model_model_card.json"
          )
          model_card_py.save(json_path)
          loaded_from_json = model_card.load_model_card(json_path)
          self.assertEqual(model_card_py, loaded_from_json)
  
      with self.subTest("save and load from proto"):
          proto_path = os.path.join(
              temp_dir, "awesome_model_model_card.proto"
          )
          model_card_py.save(proto_path)
          loaded_from_proto = model_card.load_model_card(proto_path)
          self.assertEqual(model_card_py, loaded_from_proto)
  
      with self.subTest("save and load unsupported format"):
          unsupported_path = os.path.join(
              temp_dir, "awesome_model_model_card.xyz"
          )
          with self.assertRaisesRegex(
              ValueError, "Unsupported file format"
          ):
              model_card_py.save(unsupported_path)
          with self.assertRaisesRegex(
              ValueError, "Unsupported file format"
          ):
              model_card.load_model_card(unsupported_path)
  
imports: import json
  import os
  import pkgutil
  import jsonschema
  from absl.testing import absltest
  from google.protobuf import text_format
  from model_card_toolkit import model_card
  from model_card_toolkit.proto import model_card_pb2
label_desc: Use image node_id 18 for calling the ModelCardTest obj's underlying member method code with example usage: obj.test_save_and_load_model_card() without return types