Spaces:
No application file
No application file
| import pytest | |
| from embedchain.loaders.gmail import GmailLoader | |
| def mock_beautifulsoup(mocker): | |
| return mocker.patch("embedchain.loaders.gmail.BeautifulSoup", return_value=mocker.MagicMock()) | |
| def gmail_loader(mock_beautifulsoup): | |
| return GmailLoader() | |
| def test_load_data_file_not_found(gmail_loader, mocker): | |
| with pytest.raises(FileNotFoundError): | |
| with mocker.patch("os.path.isfile", return_value=False): | |
| gmail_loader.load_data("your_query") | |
| def test_load_data(gmail_loader, mocker): | |
| mock_gmail_reader_instance = mocker.MagicMock() | |
| text = "your_test_email_text" | |
| metadata = { | |
| "id": "your_test_id", | |
| "snippet": "your_test_snippet", | |
| } | |
| mock_gmail_reader_instance.load_data.return_value = [ | |
| { | |
| "text": text, | |
| "extra_info": metadata, | |
| } | |
| ] | |
| with mocker.patch("os.path.isfile", return_value=True): | |
| response_data = gmail_loader.load_data("your_query") | |
| assert "doc_id" in response_data | |
| assert "data" in response_data | |
| assert isinstance(response_data["doc_id"], str) | |
| assert isinstance(response_data["data"], list) | |