code: def test_get_registered_model_permission(store):
      username1 = random_str()
      password1 = random_str()
      user1 = _user_maker(store, username1, password1)
  
      name1 = random_str()
      user_id1 = user1.id
      permission1 = READ.name
      _rmp_maker(store, name1, username1, permission1)
      rmp1 = store.get_registered_model_permission(name1, username1)
      assert isinstance(rmp1, RegisteredModelPermission)
      assert rmp1.name == name1
      assert rmp1.user_id == user_id1
      assert rmp1.permission == permission1
  
      # error on non-existent row
      name2 = random_str()
      with pytest.raises(
          MlflowException,
          match=rf"Registered model permission with name={name2} and username={username1} not found",
      ) as exception_context:
          store.get_registered_model_permission(name2, username1)
      assert exception_context.value.error_code == ErrorCode.Name(
          RESOURCE_DOES_NOT_EXIST
      )
  
imports: import pytest
  from mlflow.exceptions import MlflowException
  from mlflow.protos.databricks_pb2 import INVALID_PARAMETER_VALUE, RESOURCE_ALREADY_EXISTS, RESOURCE_DOES_NOT_EXIST, ErrorCode
  from mlflow.server.auth.entities import ExperimentPermission, RegisteredModelPermission, User
  from mlflow.server.auth.permissions import ALL_PERMISSIONS, EDIT, READ
  from mlflow.server.auth.sqlalchemy_store import SqlAlchemyStore
  from tests.helper_functions import random_str
label_desc: Use image node_id 18 for calling a global function with example usage: test_get_registered_model_permission(store) without return types