mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-21 04:44:59 +00:00
46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
import unittest
|
|
from unittest.mock import patch, MagicMock
|
|
|
|
from aider.commands import Commands
|
|
|
|
|
|
class TestScrape(unittest.TestCase):
|
|
@patch("aider.commands.install_playwright")
|
|
@patch("aider.commands.Scraper")
|
|
def test_cmd_web_imports_playwright(self, mock_scraper, mock_install_playwright):
|
|
# Mock the necessary objects and methods
|
|
mock_io = MagicMock()
|
|
mock_coder = MagicMock()
|
|
mock_install_playwright.return_value = True
|
|
mock_scraper_instance = MagicMock()
|
|
mock_scraper.return_value = mock_scraper_instance
|
|
mock_scraper_instance.scrape.return_value = "Mocked content"
|
|
|
|
# Create a Commands instance
|
|
commands = Commands(mock_io, mock_coder)
|
|
|
|
# Run the cmd_web command
|
|
commands.cmd_web("https://example.com")
|
|
|
|
# Check that install_playwright was called
|
|
mock_install_playwright.assert_called_once()
|
|
|
|
# Check that Scraper was instantiated
|
|
mock_scraper.assert_called_once()
|
|
|
|
# Try to import playwright
|
|
try:
|
|
import playwright # noqa: F401
|
|
playwright_imported = True
|
|
except ImportError:
|
|
playwright_imported = False
|
|
|
|
# Assert that playwright was successfully imported
|
|
self.assertTrue(
|
|
playwright_imported,
|
|
"Playwright should be importable after running cmd_web command"
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|