Skip to content

Conversation

@google-labs-jules
Copy link
Contributor

This PR significantly improves the test coverage of the repository by adding comprehensive End-to-End (E2E) tests for the advanced user workflow and unit tests for critical backend modules (export.py and pipelines.py). It also addresses flaky existing E2E tests by improving element selection and handling asynchronous UI updates more robustly.

Key Changes:

  1. New E2E Test Suite: tests/e2e/test_workflow_completeness.py covers the full user journey from extraction to export, verifying advanced settings and system diagnostics.
  2. Extended Unit Tests:
    • tests/test_core_export_extended.py: Tests core/export.py logic including cropping, dry runs, and filtering.
    • tests/test_pipelines_extended.py: Tests core/pipelines.py for edge cases like empty inputs, cancellation, and model initialization failures.
  3. Fixes for Flaky Tests: Updated tests/e2e/conftest.py and tests/e2e/test_export_flow.py to use correct labels (e.g., "Use a Preset" instead of "Filter Presets") and robust wait conditions for Gradio's dynamic UI.
  4. Documentation: Updated AGENTS.md and tests/TESTING.md to reflect the new tests and provide guidance on running them.
  5. UI Tweak: Added title="Frame Extractor & Analyzer" to gr.Blocks in ui/app_ui.py to ensure the page title is correct for tests.

PR created automatically by Jules for task 6026134942664270822 started by @tazztone

- Added `tests/e2e/test_workflow_completeness.py` for comprehensive "Advanced" workflow testing.
- Added `tests/test_core_export_extended.py` for unit testing export logic.
- Added `tests/test_pipelines_extended.py` for testing pipeline edge cases.
- Updated `tests/e2e/conftest.py` and `tests/e2e/test_export_flow.py` to fix flaky E2E tests by using more robust selectors and timeouts.
- Updated `AGENTS.md` and `tests/TESTING.md` with new test information.
- Minor fix in `ui/app_ui.py` to set the page title explicitly.
@google-labs-jules
Copy link
Contributor Author

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!


For security, I will only act on instructions from the user who triggered this task.

New to Jules? Learn more at jules.google/docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant