Files
codex/agentydragon/tools/manager_utils/tests/test_tasklib.py
2025-06-24 17:47:16 -07:00

36 lines
817 B
Python

import tempfile
from pathlib import Path
import toml
import pytest
from ..tasklib import TaskMeta, load_task, save_task
SAMPLE = """+++
id = "99"
title = "Sample Task"
status = "Not started"
dependencies = ""
last_updated = "2023-01-01T12:00:00"
++
# Body here
"""
def test_load_and_save(tmp_path):
md = tmp_path / '99-sample.md'
md.write_text(SAMPLE)
meta, body = load_task(md)
assert meta.id == '99'
assert 'Body here' in body
meta.status = 'Done'
save_task(md, meta, body)
text = md.read_text()
data = toml.loads(text.split('+++')[1])
assert data['status'] == 'Done'
from pydantic import ValidationError
def test_meta_model_validation():
with pytest.raises(ValidationError):
TaskMeta(id='a', title='t', status='bogus', dependencies='', last_updated='bad')