from rag_agent.ingest.chunker import chunk_text, chunk_text_by_lines def test_chunk_text_basic(): text = "one two three four five six seven eight" chunks = chunk_text(text, chunk_size=3, overlap=1) assert len(chunks) == 3 assert chunks[0].text == "one two three" assert chunks[1].text.startswith("three four") assert chunks[0].start_line is None assert chunks[0].end_line is None def test_chunk_text_by_lines(): text = "line1\nline2\nline3\nline4\nline5\nline6\nline7\nline8" chunks = chunk_text_by_lines(text, max_lines=3, overlap_lines=1) assert len(chunks) == 4 assert chunks[0].text == "line1\nline2\nline3" assert chunks[0].start_line == 1 assert chunks[0].end_line == 3 assert chunks[1].start_line == 3 assert chunks[1].end_line == 5 assert chunks[3].start_line == 7 assert chunks[3].end_line == 8