Files
ai-video-fullstack/backend/tests/test_knowledge.py
T

24 lines
796 B
Python
Raw Normal View History

import unittest
from services.knowledge import extract_text, split_text
class KnowledgeTextTest(unittest.TestCase):
def test_extracts_utf8_text(self):
self.assertEqual(extract_text("说明.txt", "你好,知识库".encode()), "你好,知识库")
def test_split_text_keeps_overlap_and_all_content(self):
text = "第一段。" * 250
chunks = split_text(text, chunk_size=120, overlap=20)
self.assertGreater(len(chunks), 1)
self.assertTrue(all(chunk for chunk in chunks))
self.assertLessEqual(max(map(len, chunks)), 120)
def test_rejects_unsupported_binary_file(self):
with self.assertRaisesRegex(ValueError, "暂仅支持"):
extract_text("archive.zip", b"data")
if __name__ == "__main__":
unittest.main()