Files
AnyImage/tests/test_manifest.py

26 lines
818 B
Python

import tomllib
import unittest
from pathlib import Path
PROJECT_ROOT = Path(__file__).resolve().parents[1]
MANIFEST_PATH = PROJECT_ROOT / "src" / "anyimage" / "blender_manifest.toml"
class ManifestTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.manifest = tomllib.loads(MANIFEST_PATH.read_text(encoding="utf-8"))
def test_declares_modern_extension_metadata(self):
self.assertEqual(self.manifest["schema_version"], "1.0.0")
self.assertEqual(self.manifest["id"], "anyimage")
self.assertEqual(self.manifest["type"], "add-on")
self.assertNotIn("bl_info", self.manifest)
def test_declares_required_environment_permissions(self):
self.assertEqual(
set(self.manifest["permissions"]),
{"network", "files"},
)