code: def test_get_model_version_download_uri(store):
      name = "test_for_update_MV"
      _rm_maker(store, name)
      source_path = "path/to/source"
      mv = _mv_maker(
          store, name, source=source_path, run_id=uuid.uuid4().hex
      )
      mvd1 = store.get_model_version(name=mv.name, version=mv.version)
      assert mvd1.name == name
      assert mvd1.source == source_path
  
      # download location points to source
      assert (
          store.get_model_version_download_uri(
              name=mv.name, version=mv.version
          )
          == source_path
      )
  
      # download URI does not change even if model version is updated
      store.transition_model_version_stage(
          name=mv.name,
          version=mv.version,
          stage="Production",
          archive_existing_versions=False,
      )
      store.update_model_version(
          name=mv.name, version=mv.version, description="Test for Path"
      )
      mvd2 = store.get_model_version(name=mv.name, version=mv.version)
      assert mvd2.source == source_path
      assert (
          store.get_model_version_download_uri(
              name=mv.name, version=mv.version
          )
          == source_path
      )
  
      # cannot retrieve download URI for deleted model versions
      store.delete_model_version(name=mv.name, version=mv.version)
      with pytest.raises(
          MlflowException,
          match=rf"Model Version \(name={mv.name}, version={mv.version}\) not found",
      ) as exception_context:
          store.get_model_version_download_uri(
              name=mv.name, version=mv.version
          )
      assert exception_context.value.error_code == ErrorCode.Name(
          RESOURCE_DOES_NOT_EXIST
      )
  
imports: import time
  import uuid
  from unittest import mock
  import pytest
  from mlflow.entities.model_registry import ModelVersion, ModelVersionTag, RegisteredModelTag
  from mlflow.environment_variables import MLFLOW_TRACKING_URI
  from mlflow.exceptions import MlflowException
  from mlflow.protos.databricks_pb2 import INVALID_PARAMETER_VALUE, RESOURCE_ALREADY_EXISTS, RESOURCE_DOES_NOT_EXIST, ErrorCode
  from mlflow.store.model_registry.dbmodels.models import SqlModelVersion, SqlModelVersionTag, SqlRegisteredModel, SqlRegisteredModelTag
  from mlflow.store.model_registry.sqlalchemy_store import SqlAlchemyStore
  from tests.helper_functions import random_str
label_desc: Use image node_id 19 for calling a global function with example usage: test_get_model_version_download_uri(store) without return types