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
17 lines
587 B
Python
17 lines
587 B
Python
"""Regression: progress prints must not ZeroDivisionError when episodes < 10."""
|
|
|
|
|
|
def test_progress_every_never_zero():
|
|
for num_episodes in (1, 5, 9, 10, 100):
|
|
progress_every = max(1, num_episodes // 10)
|
|
assert progress_every >= 1
|
|
# modulo must be defined
|
|
for episode in range(num_episodes):
|
|
_ = (episode + 1) % progress_every
|
|
|
|
|
|
def test_source_uses_max_guard():
|
|
from pathlib import Path
|
|
src = (Path(__file__).parent / "manual" / "rl_learning_check.py").read_text()
|
|
assert "progress_every = max(1, num_episodes // 10)" in src
|