AI-notes-agent / tests /test_extractor.py
Jaleed02's picture
Initial commit: Multi-User AI Study Agent
2d25973
Raw
History Blame Contribute Delete
1.47 kB
import sys
import os
import io
# Add parent to path for imports
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
from src.utils.extractor import extract_universal_text
def create_mock_file(name, content_bytes):
f = io.BytesIO(content_bytes)
f.name = name
return f
def test_markdown():
print("Testing Markdown extraction...")
content = b"# Hello Markdown\nThis is a test."
file = create_mock_file("test.md", content)
text = extract_universal_text(file)
print(f"Extracted: {text.strip()}")
assert "Hello Markdown" in text
def test_docx():
print("Testing DOCX extraction...")
import docx
doc = docx.Document()
doc.add_paragraph("Hello from DOCX")
f = io.BytesIO()
doc.save(f)
file = create_mock_file("test.docx", f.getvalue())
text = extract_universal_text(file)
print(f"Extracted: {text.strip()}")
assert "Hello from DOCX" in text
def test_pptx():
print("Testing PPTX extraction...")
import pptx
prs = pptx.Presentation()
slide = prs.slides.add_slide(prs.slide_layouts[0])
slide.shapes.title.text = "Hello from PPTX"
f = io.BytesIO()
prs.save(f)
file = create_mock_file("test.pptx", f.getvalue())
text = extract_universal_text(file)
print(f"Extracted: {text.strip()}")
assert "Hello from PPTX" in text
if __name__ == "__main__":
test_markdown()
test_docx()
test_pptx()
print("All tests passed!")