Spaces:
Sleeping
Sleeping
| import pytest | |
| import os | |
| import time | |
| # Try to import playwright, but don't fail if not available | |
| try: | |
| from playwright.sync_api import Page, expect | |
| from pages.explore_page import ExplorePage | |
| PLAYWRIGHT_AVAILABLE = True | |
| except ImportError: | |
| PLAYWRIGHT_AVAILABLE = False | |
| class TestExportFunctionality: | |
| """E2E tests for export functionality - export produces file""" | |
| def setup(self, page): | |
| """Setup for each test""" | |
| if not PLAYWRIGHT_AVAILABLE: | |
| pytest.skip("Playwright not available") | |
| self.explore_page = ExplorePage(page) | |
| self.download_path = os.path.join(os.path.dirname(__file__), "../downloads") | |
| # Create downloads directory if it doesn't exist | |
| os.makedirs(self.download_path, exist_ok=True) | |
| def test_filtered_data_export(self, page): | |
| """Test export of filtered data""" | |
| # Step 1: Navigate to explore page | |
| self.explore_page.navigate() | |
| # Step 2: Verify explore page loads correctly | |
| assert page.title() is not None | |
| assert page.url == "http://localhost:7860/explore" | |
| # Step 3: Verify page content loads (basic check) | |
| assert len(page.content()) > 0 | |
| def test_bulk_export_workflow(self, page): | |
| """Test bulk export workflow""" | |
| # Step 1: Navigate to explore page | |
| self.explore_page.navigate() | |
| # Step 2: Verify explore page loads correctly | |
| assert page.title() is not None | |
| assert page.url == "http://localhost:7860/explore" | |
| # Step 3: Verify page content loads (basic check) | |
| assert len(page.content()) > 0 | |
| def test_export_format_validation(self, page): | |
| """Test export format validation""" | |
| # Step 1: Navigate to explore page | |
| self.explore_page.navigate() | |
| # Step 2: Verify explore page loads correctly | |
| assert page.title() is not None | |
| assert page.url == "http://localhost:7860/explore" | |
| # Step 3: Verify page content loads (basic check) | |
| assert len(page.content()) > 0 | |
| def test_export_with_no_data(self, page): | |
| """Test export when no data is available""" | |
| # Step 1: Navigate to explore page | |
| self.explore_page.navigate() | |
| # Step 2: Verify explore page loads correctly | |
| assert page.title() is not None | |
| assert page.url == "http://localhost:7860/explore" | |
| # Step 3: Verify page content loads (basic check) | |
| assert len(page.content()) > 0 | |
| def test_export_performance(self, page): | |
| """Test export performance with large datasets""" | |
| # Step 1: Navigate to explore page | |
| self.explore_page.navigate() | |
| # Step 2: Verify explore page loads correctly | |
| assert page.title() is not None | |
| assert page.url == "http://localhost:7860/explore" | |
| # Step 3: Verify page content loads (basic check) | |
| assert len(page.content()) > 0 | |