blender-python-stubs/tests/test_blender_downloader.py
Joseph HENRY 852a5de700 Initial commit
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 13:00:51 +01:00

43 lines
1.2 KiB
Python

"""Tests for the Blender downloader module."""
import unittest
from blender_downloader import (
get_archive_extension,
get_download_url,
get_extracted_dir_name,
)
class TestGetDownloadUrl(unittest.TestCase):
def test_builds_correct_url(self) -> None:
url = get_download_url("5.0.1")
self.assertIn("https://download.blender.org/release/Blender5.0/", url)
self.assertIn("blender-5.0.1-", url)
self.assertTrue(url.endswith(get_archive_extension()))
def test_major_minor_extraction(self) -> None:
url = get_download_url("4.3.2")
self.assertIn("/Blender4.3/", url)
self.assertIn("blender-4.3.2-", url)
class TestGetExtractedDirName(unittest.TestCase):
def test_linux_dir_name(self) -> None:
name = get_extracted_dir_name("5.0.1")
self.assertEqual(name, "blender-5.0.1-linux-x64")
def test_different_version(self) -> None:
name = get_extracted_dir_name("4.3.2")
self.assertEqual(name, "blender-4.3.2-linux-x64")
class TestGetArchiveExtension(unittest.TestCase):
def test_linux_extension(self) -> None:
ext = get_archive_extension()
self.assertEqual(ext, ".tar.xz")
if __name__ == "__main__":
unittest.main()