import hashlib from unittest.mock import patch import pytest from embedchain.loaders.excel_file import ExcelFileLoader @pytest.fixture def excel_file_loader(): return ExcelFileLoader() def test_load_data(excel_file_loader): mock_url = "mock_excel_file.xlsx" expected_content = "Sample Excel Content" # Mock the load_data method of the excel_file_loader instance with patch.object( excel_file_loader, "load_data", return_value={ "doc_id": hashlib.sha256((expected_content + mock_url).encode()).hexdigest(), "data": [{"content": expected_content, "meta_data": {"url": mock_url}}], }, ): result = excel_file_loader.load_data(mock_url) assert result["data"][0]["content"] == expected_content assert result["data"][0]["meta_data"]["url"] == mock_url expected_doc_id = hashlib.sha256((expected_content + mock_url).encode()).hexdigest() assert result["doc_id"] == expected_doc_id