trellis-2-mrp-mlx/tests/test_model_revisions.py

37 lines
1.1 KiB
Python

from pathlib import Path
from trellis2.model_revisions import (
DINOV3_REPO,
DINOV3_REVISION,
MODEL_REVISIONS,
RMBG_REPO,
RMBG_REVISION,
SOURCE_REVISIONS,
TRELLIS_REPO,
TRELLIS_REVISION,
revision_for_repo,
)
ROOT = Path(__file__).resolve().parents[1]
def test_runtime_revisions_are_full_commits():
assert MODEL_REVISIONS[TRELLIS_REPO] == TRELLIS_REVISION
assert MODEL_REVISIONS[DINOV3_REPO] == DINOV3_REVISION
assert MODEL_REVISIONS[RMBG_REPO] == RMBG_REVISION
assert all(len(revision) == 40 for revision in MODEL_REVISIONS.values())
assert all(len(revision) == 40 for revision in SOURCE_REVISIONS.values())
def test_unknown_repo_keeps_explicit_revision():
assert revision_for_repo("example/private-model", "release-1") == "release-1"
def test_source_revisions_are_present_in_reproducible_inputs():
reproducibility_text = "\n".join(
(ROOT / path).read_text(encoding="utf-8")
for path in ("scripts/setup_macos.sh", "requirements_macos_core.txt", "README.md")
)
for revision in SOURCE_REVISIONS.values():
assert revision in reproducibility_text