Improve tests, downloader, and project config

- Expand blender_downloader with better error handling and platform support
- Add test_main.py for main module tests
- Expand test coverage for introspect and generate_stubs
- Remove reportUnknownMemberType suppression from conformance config
- Exclude conformance/ from ruff linting (docs examples have E402)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-02 11:49:53 +02:00
co-authored by Claude Opus 4.6
parent 7e1e18d845
commit 673b9e54bc
7 changed files with 420 additions and 44 deletions
+5 -2
View File
@@ -139,8 +139,7 @@ class TestGenerateFunctionStub(unittest.TestCase):
"is_classmethod": False,
}
result = generate_function_stub(func)
self.assertNotIn("*, ", result)
self.assertIn("**kwargs", result)
self.assertEqual(result, "def foo(x: str, **kwargs: object) -> None: ...\n")
def test_default_before_nondefault_reordered(self) -> None:
"""Non-default params must come before default params."""
@@ -640,6 +639,10 @@ class TestTopologicalSort(unittest.TestCase):
]
result = topological_sort_structs(structs)
self.assertEqual(len(result), 2)
names = [s["name"] for s in result]
self.assertEqual(set(names), {"A", "B"})
self.assertEqual(names.count("A"), 1)
self.assertEqual(names.count("B"), 1)
class TestCollectAllMethods(unittest.TestCase):