pallets / pallets/click

Add e2e completion testing

Open
#2,917 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

shell completion tests
Dominant language
Python
Stars
17.7k
Forks
2.3k
Avg merge
1d 30m
Merged PRs (30d)
18

Description

Currently it's a bit hard to know whether our completions actually work end-to-end. Whether when it's all installed, that we actually get the completions we're expecting in our API. It would be nice if we added some way that we could test this. This would've been helpful in #2846.

We might be able to use scrut to create a test for it. My team created this tool for our work and it basically allows you to easily create E2E tests. If you can make autocompletions show by running a command on the commandline, you can very easily make a scrut test out of that.

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 completion behavior referenced in #2846 and the scrut project linked in the issue. Define an end-to-end command-line check that runs against an installed package and verifies the expected completions are exposed through the API; done means this check reliably detects missing completions.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.