Tests
Testing¤
The testing framework uses pytest to validate the functionality of the core components.
-
The tests are located in the
tests/directory and cover various modules including configuration generation, file processing, BIDS conversion, DataLad integration, and Dataverse interaction. (Work in progress) -
The test directory contains :
test_utils: Directory containing utility functions needed across multiple test files.testcases: Directory containing all the tests in a in a directory structure -test_<test_name>.- Each
test_<test_name>directory contains adatafolder with sample data for that test and atest_<test_name>.pyfile with the actual test cases. run_all_tests.py: A script to run all the tests in thetestcasesdirectory sequentially.
Tests will be added continuously as new features are added and existing features are updated.
Running Tests¤
Before running the tests with uv, install the project in editable mode using uv pip install --editable ./. Then run the tests with uv run pytest (caveat, sometimes running all tests at once fails; in that case, you can run only the main functionality tests via uv run pytest tests/test_main_functionality).
These tests ensure that each component functions as expected and that the overall pipeline works seamlessly. This tests will also be triggered automatically on each push or PR to the main repository using GitHub Actions.