Spaces:
Running
Running
| from pathlib import Path | |
| import sys | |
| PROJECT_ROOT = Path(__file__).resolve().parents[1] | |
| SRC_PATH = PROJECT_ROOT / "src" | |
| if str(SRC_PATH) not in sys.path: | |
| sys.path.insert(0, str(SRC_PATH)) | |
| from export_utils import generate_results_pdf | |
| def test_generate_single_pdf_bytes(): | |
| payload = { | |
| "mode": "single", | |
| "input_text": "You are not welcome here.", | |
| "rationale": "Contains targeted exclusionary language.", | |
| "models": { | |
| "base": { | |
| "prediction": 1, | |
| "confidence": 0.91, | |
| "probabilities": [0.09, 0.91], | |
| "processing_time": 0.124, | |
| "technical_details": { | |
| "prediction": 1, | |
| "confidence": 0.91, | |
| }, | |
| }, | |
| "enhanced": { | |
| "prediction": 1, | |
| "confidence": 0.95, | |
| "probabilities": [0.05, 0.95], | |
| "processing_time": 0.141, | |
| "token_importance": [ | |
| {"Token": "welcome", "Importance": 0.7321}, | |
| {"Token": "not", "Importance": 0.6112}, | |
| ], | |
| "technical_details": { | |
| "prediction": 1, | |
| "confidence": 0.95, | |
| }, | |
| }, | |
| }, | |
| } | |
| pdf_bytes = generate_results_pdf(payload) | |
| assert pdf_bytes | |
| assert pdf_bytes.startswith(b"%PDF") | |
| def test_generate_batch_pdf_bytes(): | |
| payload = { | |
| "mode": "batch", | |
| "filename": "sample.csv", | |
| "rows": 25, | |
| "models": { | |
| "base": { | |
| "f1_score": 0.8012, | |
| "precision": 0.8301, | |
| "accuracy": 0.8400, | |
| "recall": 0.7750, | |
| "confusion_matrix": [[11, 2], [2, 10]], | |
| "cpu_usage": 27.3, | |
| "peak_cpu_usage": 48.1, | |
| "memory_usage": 312.2, | |
| "peak_memory_usage": 402.9, | |
| "runtime": 1.24, | |
| "avg_time_per_sample": 0.0496, | |
| } | |
| }, | |
| } | |
| pdf_bytes = generate_results_pdf(payload) | |
| assert pdf_bytes | |
| assert pdf_bytes.startswith(b"%PDF") | |