Python: Add support for dynamic imports

```python
import foo_slint
```

will now also look for `foo.slint`
This commit is contained in:
Simon Hausmann 2024-03-06 12:06:57 +01:00 committed by Simon Hausmann
parent 4a313f45bd
commit 3b7b2411b4
2 changed files with 59 additions and 0 deletions

View file

@ -0,0 +1,27 @@
# Copyright © SixtyFPS GmbH <info@slint.dev>
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.1 OR LicenseRef-Slint-commercial
import pytest
from slint import slint as native
import sys
import os
def test_magic_import():
import test_load_file_slint as compiledmodule
instance = compiledmodule.App()
del instance
def test_magic_import_path():
oldsyspath = sys.path
with pytest.raises(ModuleNotFoundError, match="No module named 'printerdemo_slint'"):
import printerdemo_slint
try:
sys.path.append(os.path.join(os.path.dirname(__file__),
"..", "..", "..", "examples", "printerdemo", "ui"))
import printerdemo_slint
instance = printerdemo_slint.MainWindow()
del instance
finally:
sys.path = oldsyspath