nextcloud-libraries / nextcloud-libraries/nextcloud-viewer

Port most of the viewer's end-to-end tests here

Open
#1 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

AI assisted status: triage type: tests
Dominant language
TypeScript
Stars
1
Forks
0
Avg merge
6h 19m
Merged PRs (30d)
43

Description

The Playwright specs stayed in nextcloud/server when the viewer moved out. That was right for the move itself, but most of them are not really about the server.

Of the 47 specs, the ones that genuinely test integration should stay there: opening from the Files list, public link shares, the sidebar, and the browser history and URL behaviour. Those exercise wiring this repository cannot see, and they are the sanity check that the package a server ships actually works inside it.

The rest — navigation between files, odd file names, per-format media playback, error handling, the compare API, the editor action, the accessibility pass — are about the viewer itself and would run faster and closer to the code here.

That needs a browser test setup in this repository: a playground page mounting the viewer over some fixture files, and Playwright wired to it, roughly as nextcloud-image-editor does.

One thing to settle first, and the reason this is not a mechanical move: the viewer talks to WebDAV and to the previews endpoint, and a playground has neither. Either the fixtures are File nodes whose source is a plain URL served by the dev server, if the viewer copes with a node that is not DAV-backed, or the playground stubs those requests. The first would also give this repository a working demo page for the docs to link to.

  • Decide whether a non-DAV File node is enough to drive the viewer
  • Playground page and Playwright setup
  • Port the specs that are about the viewer
  • Leave the integration specs in the server, and say so in both repos

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the 47 Playwright specs in nextcloud/server and the browser-test setup in nextcloud-image-editor. Decide whether non-DAV File nodes can use plain dev-server URLs or whether WebDAV and previews requests need stubbing. Done means a playground mounts the viewer, viewer-focused specs run here, and the retained integration specs are documented in both repositories.

Written by the indexing model from the issue text.

Assessment

Tech stack
playwright, typescript
Domain
frontend, testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.