Spaces:
Running
Running
MOSAICapp Test Suite
This directory contains the automated tests for the MOSAICapp software.
File Structure
1. conftest.py
Contains fixtures (setup code) shared across all tests. It generates temporary CSV files and dummy datasets so tests can run without external data dependencies.
2. test_core_functions.py (Fast)
Unit tests for the mosaic_core utility functions. These run instantly.
- Slugify: Checks filename sanitisation.
- CacheIO: Verifies that topic labels can be saved/loaded from JSON.
- Device Resolution: Ensures the app correctly selects CPU/GPU/MPS devices.
3. test_integration.py (Slow)
Integration tests that run the actual ML pipeline.
- Embeddings: Loads the
sentence-transformersmodel and checks vector output. - Topic Modelling: Runs a minimal BERTopic pipeline (UMAP + HDBSCAN) on dummy data.
- LLM labeling: (Optional) Tests the HuggingFace API connection if
HF_TOKENis present in the environment.
How to Run
Run everything:
pytest tests/ -v
Run only fast tests:
pytest tests/test_core_functions.py -v