code: def test_creation_and_hydration():
      name = random_str()
      description = random_str()
      rmd_1 = RegisteredModel(name, 1, 2, description, [], [])
      _check(rmd_1, name, 1, 2, description, [], {}, {})
  
      as_dict = {
          "name": name,
          "creation_timestamp": 1,
          "last_updated_timestamp": 2,
          "description": description,
          "latest_versions": [],
          "tags": {},
          "aliases": {},
      }
      assert dict(rmd_1) == as_dict
  
      proto = rmd_1.to_proto()
      assert proto.name == name
      assert proto.creation_timestamp == 1
      assert proto.last_updated_timestamp == 2
      assert proto.description == description
      rmd_2 = RegisteredModel.from_proto(proto)
      _check(rmd_2, name, 1, 2, description, [], {}, {})
      as_dict["tags"] = []
      rmd_3 = RegisteredModel.from_dictionary(as_dict)
      _check(rmd_3, name, 1, 2, description, [], {}, {})
  
file_path: mlflow/tests/entities/model_registry/test_registered_model.py
imports: from mlflow.entities.model_registry import RegisteredModelAlias
  from mlflow.entities.model_registry.model_version import ModelVersion
  from mlflow.entities.model_registry.registered_model import RegisteredModel
  from mlflow.entities.model_registry.registered_model_tag import RegisteredModelTag
  from tests.helper_functions import random_str
label_desc: Use image node_id 2 for calling a global function with example usage: test_creation_and_hydration() without return types