diff options
| author | Aeliton G. Silva | 2026-01-12 22:39:55 -0300 |
|---|---|---|
| committer | Aeliton G. Silva | 2026-01-13 04:22:25 -0300 |
| commit | f975144f25d34f97329b2d4e52891061573cea08 (patch) | |
| tree | 226fe223b31af6f217b1dd413629ab2cf26964d4 /src/tests | |
| parent | b8703752ffc7768b0275897b3c2a869ff41504e5 (diff) | |
Use pyproject.toml + uv_build
This replaces setup.py by a modern pyproject.toml using uv_build
backend.
Dependencies are being also managed by uv, so to install dependencies
and run the project one can execute:
```
uv sync
uv run pytest # optional
python -m avp
```
To build the both source and binary (wheel) distribution package run:
```
uv build
```
Uv can be installed with `pip install uv`.
The directory structure has been changed to reflect best practices.
- src/* -> src/avp/
- src/tests -> ../tests
Diffstat (limited to 'src/tests')
| -rw-r--r-- | src/tests/__init__.py | 27 | ||||
| -rw-r--r-- | src/tests/data/test.jpg | bin | 48766 -> 0 bytes | |||
| -rw-r--r-- | src/tests/data/test.ogg | bin | 30043 -> 0 bytes | |||
| -rw-r--r-- | src/tests/data/test.png | bin | 220 -> 0 bytes | |||
| -rw-r--r-- | src/tests/test_commandline_export.py | 39 | ||||
| -rw-r--r-- | src/tests/test_commandline_parser.py | 45 | ||||
| -rw-r--r-- | src/tests/test_core_init.py | 21 |
7 files changed, 0 insertions, 132 deletions
diff --git a/src/tests/__init__.py b/src/tests/__init__.py deleted file mode 100644 index e2d83e7..0000000 --- a/src/tests/__init__.py +++ /dev/null @@ -1,27 +0,0 @@ -import pytest -import os -import sys -from ..core import Core - - -def getTestDataPath(filename): - return os.path.join(Core.wd, "tests", "data", filename) - - -def run(logFile): - """Run Pytest, which then imports and runs all tests in this module.""" - os.environ["PYTEST_QT_API"] = "PyQt6" - with open(logFile, "w") as f: - # temporarily redirect stdout to a text file so we capture pytest's output - sys.stdout = f - try: - val = pytest.main( - [ - os.path.dirname(__file__), - "-s", # disable pytest's internal capturing of stdout etc. - ] - ) - finally: - sys.stdout = sys.__stdout__ - - return val diff --git a/src/tests/data/test.jpg b/src/tests/data/test.jpg Binary files differdeleted file mode 100644 index 86266d9..0000000 --- a/src/tests/data/test.jpg +++ /dev/null diff --git a/src/tests/data/test.ogg b/src/tests/data/test.ogg Binary files differdeleted file mode 100644 index 46af76c..0000000 --- a/src/tests/data/test.ogg +++ /dev/null diff --git a/src/tests/data/test.png b/src/tests/data/test.png Binary files differdeleted file mode 100644 index f1ffd4a..0000000 --- a/src/tests/data/test.png +++ /dev/null diff --git a/src/tests/test_commandline_export.py b/src/tests/test_commandline_export.py deleted file mode 100644 index 6126da7..0000000 --- a/src/tests/test_commandline_export.py +++ /dev/null @@ -1,39 +0,0 @@ -import sys -import os -import tempfile -from ..command import Command -from . import getTestDataPath -from pytestqt import qtbot - - -def test_commandline_classic_export(qtbot): - """Run Qt event loop and create a video in the system /tmp or /temp""" - soundFile = getTestDataPath("test.ogg") - outputDir = tempfile.mkdtemp(prefix="avp-test-") - outputFilename = os.path.join(outputDir, "output.mp4") - sys.argv = [ - "", - "-c", - "0", - "classic", - "-i", - soundFile, - "-o", - outputFilename, - ] - - command = Command() - command.quit = lambda _: None - command.parseArgs() - # Command object now has a video_thread Worker which is exporting the video - - with qtbot.waitSignal(command.worker.videoCreated, timeout=10000): - """ - Wait until videoCreated is emitted by the video_thread Worker - or until 10 second timeout has passed - """ - print(f"Test Video created at {outputFilename}") - - assert os.path.exists(outputFilename) - # output video should be at least 200kb - assert os.path.getsize(outputFilename) > 200000 diff --git a/src/tests/test_commandline_parser.py b/src/tests/test_commandline_parser.py deleted file mode 100644 index 5d1232b..0000000 --- a/src/tests/test_commandline_parser.py +++ /dev/null @@ -1,45 +0,0 @@ -import sys -import pytest -from ..command import Command - - -def test_commandline_help(): - command = Command() - sys.argv = ["", "--help"] - with pytest.raises(SystemExit): - command.parseArgs() - - -def test_commandline_help_if_bad_args(): - command = Command() - sys.argv = ["", "--junk"] - with pytest.raises(SystemExit): - command.parseArgs() - - -def test_commandline_launches_gui_if_debug(): - command = Command() - sys.argv = ["", "--debug"] - mode = command.parseArgs() - assert mode == "GUI" - - -def test_commandline_launches_gui_if_debug_with_project(): - command = Command() - sys.argv = ["", "test", "--debug"] - mode = command.parseArgs() - assert mode == "GUI" - - -def test_commandline_tries_to_export(): - command = Command() - didCallFunction = False - - def captureFunction(*args): - nonlocal didCallFunction - didCallFunction = True - - sys.argv = ["", "-c", "0", "classic", "-i", "_", "-o", "_"] - command.createAudioVisualization = captureFunction - command.parseArgs() - assert didCallFunction diff --git a/src/tests/test_core_init.py b/src/tests/test_core_init.py deleted file mode 100644 index 950dc13..0000000 --- a/src/tests/test_core_init.py +++ /dev/null @@ -1,21 +0,0 @@ -from ..core import Core - - -def test_component_names(): - core = Core() - assert core.compNames == [ - "Classic Visualizer", - "Color", - "Conway's Game of Life", - "Image", - "Sound", - "Spectrum", - "Title Text", - "Video", - "Waveform", - ] - - -def test_moduleindex(): - core = Core() - assert core.moduleIndexFor("Classic Visualizer") == 0 |
