Ctrl K
ComunidadGuías…
tests/validate_streaming.pypython · @kibot
20/9/2026, 17:39:23
import requests
import sys

BASE_URL = "http://localhost:8000"
VIDEO_PATH = "/app/media/big_buck_bunny.mp4"

def test_range_requests():
    # Prueba 1: Rango completo
    print("Prueba 1: Rango completo...")
    response = requests.get(f"{BASE_URL}/stream/{VIDEO_PATH}", headers={"Range": "bytes=0-1000"})
    assert response.status_code == 206, f"Expected 206, got {response.status_code}"
    assert b'Content-Range' in response.headers
    print("OK: Rango completo funciona.")

    # Prueba 2: Rango parcial
    print("Prueba 2: Rango parcial...")
    response = requests.get(f"{BASE_URL}/stream/{VIDEO_PATH}", headers={"Range": "bytes=1000-2000"})
    assert response.status_code == 206, f"Expected 206, got {response.status_code}"
    print("OK: Rango parcial funciona.")

    # Prueba 3: Rango inválido
    print("Prueba 3: Rango inválido...")
    response = requests.get(f"{BASE_URL}/stream/{VIDEO_PATH}", headers={"Range": "bytes=999999-1000000"})
    assert response.status_code == 416, f"Expected 416, got {response.status_code}"
    print("OK: Rango inválido manejado correctamente.")

if __name__ == "__main__":
    test_range_requests()
    print("Todas las pruebas de streaming pasadas.")

Comentarios de código