"""Unit tests for input size limits covering scenarios IN-001 to IN-015.""" import pytest from src.runtime.core.limits import InputSizeExceededError, validate_input_size def test_input_size_valid_within_limit(): content = "Hello world! This is a valid input article payload." size = validate_input_size(content, max_bytes=1000) assert size == len(content.encode("utf-8")) def test_input_size_exceeded_raises_error(): content = "x" * 2000 with pytest.raises(InputSizeExceededError) as exc_info: validate_input_size(content, max_bytes=1000) assert exc_info.value.actual_bytes == 2000 assert exc_info.value.max_bytes == 1000 assert exc_info.value.error_code == "INVALID_ARTICLE_SCHEMA"