parent
ac34ef0740
commit
295b9368f9
@ -0,0 +1,59 @@
|
|||||||
|
import pytest
|
||||||
|
import requests
|
||||||
|
from typing import Dict, Any
|
||||||
|
from .conftest import BASE_URL
|
||||||
|
|
||||||
|
|
||||||
|
class TestSummarizationEndpoint:
|
||||||
|
"""Tests the /summarization endpoint"""
|
||||||
|
|
||||||
|
def test_single_text(self, api_client):
|
||||||
|
"""Test with a single text"""
|
||||||
|
payload = {
|
||||||
|
"text": (
|
||||||
|
"Artificial intelligence is revolutionizing industries worldwide. "
|
||||||
|
"Machine learning enables computers to learn from data without explicit programming. "
|
||||||
|
"Deep learning uses neural networks with multiple layers to solve complex problems."
|
||||||
|
),
|
||||||
|
"threshold": 0.3
|
||||||
|
}
|
||||||
|
response = api_client.post(f"{BASE_URL}/summarization", json=payload)
|
||||||
|
assert response.status_code == 200
|
||||||
|
|
||||||
|
data = response.json()
|
||||||
|
assert "outputs" in data
|
||||||
|
assert isinstance(data["outputs"], list)
|
||||||
|
|
||||||
|
def test_batch_texts(self, api_client):
|
||||||
|
"""Test with a batch of texts"""
|
||||||
|
payload = {
|
||||||
|
"texts": [
|
||||||
|
"Python is a high-level programming language. It's known for its simplicity and readability.",
|
||||||
|
"JavaScript is essential for web development. It runs in browsers and on servers.",
|
||||||
|
"Rust is a systems programming language. It focuses on safety and performance."
|
||||||
|
],
|
||||||
|
"threshold": 0.3
|
||||||
|
}
|
||||||
|
response = api_client.post(f"{BASE_URL}/summarization", json=payload)
|
||||||
|
assert response.status_code == 200
|
||||||
|
|
||||||
|
data = response.json()
|
||||||
|
assert len(data["outputs"]) == 3
|
||||||
|
|
||||||
|
def test_with_optional_prompt(self, api_client):
|
||||||
|
"""Test with an optional prompt"""
|
||||||
|
payload = {
|
||||||
|
"text": "Climate change affects global weather patterns.",
|
||||||
|
"prompt": "Summarize the key points",
|
||||||
|
"threshold": 0.3
|
||||||
|
}
|
||||||
|
response = api_client.post(f"{BASE_URL}/summarization", json=payload)
|
||||||
|
assert response.status_code == 200
|
||||||
|
|
||||||
|
def test_error_no_text(self, api_client):
|
||||||
|
"""Test error when no text is provided"""
|
||||||
|
payload = {
|
||||||
|
"threshold": 0.5
|
||||||
|
}
|
||||||
|
response = api_client.post(f"{BASE_URL}/summarization", json=payload)
|
||||||
|
assert response.status_code == 400
|
||||||
Loading…
Reference in new issue