From c286b1649e75d6c655698f38d695b58e3efa6270 Mon Sep 17 00:00:00 2001 From: Tejas Amol Hande <59686002+tejhande@users.noreply.github.com> Date: Mon, 10 Jun 2024 13:27:31 +0530 Subject: [PATCH] feat: Add tests for SmartScraperGraph using sample text and configuration fixtures (@tejhande) - Added pytest fixture to provide sample text from a file. - Added pytest fixture to provide graph configuration. - Implemented test_scraping_pipeline to test the execution of SmartScraperGraph. - Added assertions to verify the result is not None and to check the expected structure of the result. Contributed by @tejhande --- tests/graphs/scrape_plain_text_mistral_test.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tests/graphs/scrape_plain_text_mistral_test.py b/tests/graphs/scrape_plain_text_mistral_test.py index 919d48c0..b887161c 100644 --- a/tests/graphs/scrape_plain_text_mistral_test.py +++ b/tests/graphs/scrape_plain_text_mistral_test.py @@ -5,11 +5,10 @@ import os import pytest from scrapegraphai.graphs import SmartScraperGraph - @pytest.fixture def sample_text(): """ - Example of text + Example of text fixture. """ file_name = "inputs/plain_html_example.txt" curr_dir = os.path.dirname(os.path.realpath(__file__)) @@ -20,11 +19,10 @@ def sample_text(): return text - @pytest.fixture def graph_config(): """ - Configuration of the graph + Configuration of the graph fixture. """ return { "llm": { @@ -40,10 +38,9 @@ def graph_config(): } } - -def test_scraping_pipeline(sample_text: str, graph_config: dict): +def test_scraping_pipeline(sample_text, graph_config): """ - Start of the scraping pipeline + Test the SmartScraperGraph scraping pipeline. """ smart_scraper_graph = SmartScraperGraph( prompt="List me all the news with their description.", @@ -54,3 +51,6 @@ def test_scraping_pipeline(sample_text: str, graph_config: dict): result = smart_scraper_graph.run() assert result is not None + # Additional assertions to check the structure of the result can be added here + assert isinstance(result, dict) # Assuming the result is a dictionary + assert "news" in result # Assuming the result should contain a key "news"