Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
27 lines
699 B
Python
27 lines
699 B
Python
"""Regression: negative size must read to EOF, not drop a suffix."""
|
|
import sys
|
|
import types
|
|
from pathlib import Path
|
|
|
|
|
|
def _stub():
|
|
try:
|
|
import openai # noqa: F401
|
|
except ImportError:
|
|
sys.modules.setdefault("openai", types.ModuleType("openai"))
|
|
sys.modules["openai"].OpenAI = object
|
|
|
|
|
|
_stub()
|
|
|
|
from agent import LocalFileTools # noqa: E402
|
|
|
|
|
|
def test_negative_size_reads_all(tmp_path: Path):
|
|
(tmp_path / "a.txt").write_text("a\nb\nc\n", encoding="utf-8")
|
|
tools = LocalFileTools(str(tmp_path))
|
|
out = tools.read_file("a.txt", offset=0, size=-1)
|
|
assert out["success"] is True
|
|
assert out["content"] == "a\nb\nc\n"
|
|
assert out["lines_read"] == 3
|