Skip to content

Add frontend playwright tests#57

Merged
ethanrous merged 9 commits intomainfrom
playwright-testing
Feb 12, 2026
Merged

Add frontend playwright tests#57
ethanrous merged 9 commits intomainfrom
playwright-testing

Conversation

@ethanrous
Copy link
Owner

No description provided.

@ethanrous ethanrous requested a review from Copilot February 11, 2026 02:51
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Playwright-based end-to-end testing for the Nuxt frontend (with coverage reporting), plus supporting scripts and CI wiring.

Changes:

  • Introduces a full Playwright E2E suite (fixtures, setup/teardown, multiple spec files) and Playwright config with HTML + coverage reporting.
  • Adds build/test scripts and Makefile targets to run UI E2E tests locally and in CI.
  • Refactors some shared types/utilities and Mongo test orchestration to support the new E2E workflow.

Reviewed changes

Copilot reviewed 40 out of 41 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
weblens-vue/weblens-nuxt/types/weblensMedia.ts Refactors WeblensMedia API surface and updates media row calculations.
weblens-vue/weblens-nuxt/types/weblensFile.ts Removes fetching/icon-related helpers and corresponding icon imports.
weblens-vue/weblens-nuxt/playwright.config.ts Adds Playwright configuration, reporter, and coverage settings.
weblens-vue/weblens-nuxt/package.json Adds E2E scripts/deps; adjusts Vite dependency and adds cleanup script.
weblens-vue/weblens-nuxt/nuxt.config.ts Enables client sourcemaps (needed for coverage mapping).
weblens-vue/weblens-nuxt/e2e/upload-flow.spec.ts Adds E2E coverage for upload workflows and media processing/timeline visibility.
weblens-vue/weblens-nuxt/e2e/sort-and-view.spec.ts Adds E2E coverage for sorting and view mode controls.
weblens-vue/weblens-nuxt/e2e/share-interactions.spec.ts Adds E2E coverage for share modal interactions and accessors.
weblens-vue/weblens-nuxt/e2e/share-browsing.spec.ts Adds E2E coverage for public share link browsing and share root navigation.
weblens-vue/weblens-nuxt/e2e/setup.spec.ts Adds E2E coverage for initial server setup flow.
weblens-vue/weblens-nuxt/e2e/settings.spec.ts Adds E2E coverage for settings pages, API keys, theme toggle, and user creation.
weblens-vue/weblens-nuxt/e2e/search-filters.spec.ts Adds E2E coverage for local filtering, recursive search, and regex toggle.
weblens-vue/weblens-nuxt/e2e/presentation.spec.ts Adds E2E coverage for presentation mode plus error page coverage.
weblens-vue/weblens-nuxt/e2e/password-change.spec.ts Adds E2E coverage for password change success/failure paths.
weblens-vue/weblens-nuxt/e2e/navigation.spec.ts Adds E2E coverage for redirects and route protection.
weblens-vue/weblens-nuxt/e2e/multi-user.spec.ts Adds E2E coverage for non-admin user flows and cleanup.
weblens-vue/weblens-nuxt/e2e/media-timeline.spec.ts Adds E2E coverage for timeline mode controls and filters.
weblens-vue/weblens-nuxt/e2e/login.spec.ts Adds E2E coverage for login validation, errors, and authenticated redirect.
weblens-vue/weblens-nuxt/e2e/keyboard-shortcuts.spec.ts Adds E2E coverage for keyboard shortcuts across the app.
weblens-vue/weblens-nuxt/e2e/files.spec.ts Adds baseline file browser E2E coverage (folders, rename, trash, toggles).
weblens-vue/weblens-nuxt/e2e/file-preview.spec.ts Adds E2E coverage for preview/presentation behavior with uploaded files.
weblens-vue/weblens-nuxt/e2e/file-operations.spec.ts Adds broad E2E coverage for file operations (upload/download/share/history/trash).
weblens-vue/weblens-nuxt/e2e/file-history.spec.ts Adds E2E coverage for history panel and rewind indicator behavior.
weblens-vue/weblens-nuxt/e2e/empty-states.spec.ts Adds E2E coverage for empty states and invalid navigation.
weblens-vue/weblens-nuxt/e2e/download.spec.ts Adds E2E coverage for single and multi-file download paths.
weblens-vue/weblens-nuxt/e2e/dev-actions.spec.ts Adds E2E coverage for developer/admin actions and users table.
weblens-vue/weblens-nuxt/e2e/context-menu.spec.ts Adds E2E coverage for context menu behaviors across contexts (folder/file/trash).
weblens-vue/weblens-nuxt/e2e/global-teardown.ts Adds teardown to stop the spawned backend process after tests.
weblens-vue/weblens-nuxt/e2e/global-setup.ts Adds setup to reset DB/fs and spawn backend for the E2E suite.
weblens-vue/weblens-nuxt/e2e/fixtures.ts Adds automatic JS coverage collection fixture for monocart reporter.
weblens-vue/weblens-nuxt/components/molecule/PresentationMediaContent.vue Updates PDF check callsite to renamed IsPDF() method.
weblens-vue/weblens-nuxt/.gitignore Ignores Playwright output/report/cache directories.
scripts/test-weblens.bash Uses shared log file helper; tweaks mongo stack invocation.
scripts/test-playwright.bash Adds end-to-end test runner script (mongo + builds + PW run).
scripts/lib/mongo.bash Refactors mongo orchestration to “stack-name” based API and compose naming.
scripts/lib/misc.bash Adds get_log_file helper used by test scripts.
docker/mongo.compose.yaml Makes mongo container names/ports stack-configurable for parallelism.
api/go.mod Updates Go version directive.
Makefile Adds UI E2E targets and improves clean behavior.
.github/workflows/test.yml Adds CI job to run Playwright E2E and upload the report artifact.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ethanrous ethanrous marked this pull request as ready for review February 12, 2026 01:01
@ethanrous ethanrous merged commit 46a8d81 into main Feb 12, 2026
4 checks passed
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