← Back to issue list

Refactor: Split up plugin tests

View original Github issue

Metadata

Project
charmcraft
Number
#2849
Type
issue
State
open
Author
lengau
Labels
good first issue Status: Triaged
Created
Updated
Closed
—

Current evaluation

Maintainer-filed refactor to split the long plugin unit tests under tests/unit/parts/plugins into smaller focused files. Triaged, labelled good first issue, assigned to hawkxdev; PR #2853 covers the python plugin piece and is approved but not yet merged.

Suggested action: keep open

Reason: The issue is already triaged (labels 'good first issue' and 'Status: Triaged') and lengau explicitly handed it to hawkxdev on 2026-08-25 ('if you'd like to give it a go, please have at it!'), with two volunteers volunteering. PR #2853 only splits test_get_package_install_commands for the python/poetry/uv plugins, whereas the issue scopes all plugin tests (sooriya14 notes test_reactive.py is by far the largest file there), so substantial work remains and the issue should stay open. Impact is deliberately low because this is a test-only refactor with no behaviour change, but it is well scoped with a working precedent PR and snapcraft#1014 as a prior art.

Evaluated by: mr-cal-bot

Impact: 15 Quick Win: 9 Complexity: 28 Confidence: 84 Actionability: 82

Issue body

The plugin unit tests are pretty long and getting kind of unwieldy. As pointed out by @bepri at https://github.com/canonical/charmcraft/pull/2835/changes#r3832956749 we should break them up, but I don't want to break them up within that PR since it's unrelated work that makes it less obvious that we're testing the same thing.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 15
Quick Win: 9
Complexity: 28
Confidence: 84
Actionability: 82
keep open Maintainer-filed refactor to split the long plugin unit tests under tests/unit/parts/plugins into smaller focused files. Triaged, labelled good first issue, assigned to hawkxdev; PR #2853 covers the python plugin piece and is approved but not yet merged.
stealth/space-bunny-alpha
Impact: 24
Quick Win: 15
Complexity: 24
Confidence: 89
Actionability: 82
keep open Triaged, maintainer-approved refactor to split large plugin unit test files into focused modules, with implementation assigned or awaiting a contributor’s work.
qwen3.6-35b-a3b-mtp-q6
Impact: 30
Quick Win: 26
Staleness: 10
Complexity: 15
Confidence: 85
Support Request: 0
keep open Refactor to split large plugin test files (test_reactive.py, test_python.py) into smaller focused files. Triaged, with maintainer encouraging contributors to take it.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 95
Support Request: 0
keep open Maintainer-requested refactor to split long plugin unit tests into smaller files. Triaged, labeled good first issue, and actively claimed by a contributor with maintainer approval.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 90
Support Request: 0
keep open Refactoring long plugin unit tests into smaller, focused files. Maintainer has assigned the task to a contributor and it is currently awaiting implementation.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 95
Support Request: 0
keep open Refactor to split long plugin unit tests into smaller, focused files. Currently triaged and fresh, with multiple contributors volunteering to be assigned.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 90
Support Request: 0
keep open Maintainer-requested refactor to split long plugin unit tests into smaller, focused tests. A contributor has volunteered to implement the changes and is awaiting assignment.
qwen/qwen3.6-35b-a3b
Staleness: 0
Complexity: 10
Confidence: 90
Support Request: 0
keep open Refactor to split long plugin unit tests into smaller, more manageable files. Currently triaged and labeled as a good first issue, awaiting implementation.

Update history

Date Change
updated
updated
updated
updated
created

Related work

  • Likely Fixed By: charmcraft#2853 (confidence 72%)

    Open, approved PR 'test(plugins): split package install command tests' splitting test_get_package_install_commands for python/poetry/uv and adding tests/unit/parts/plugins/conftest.py with a make_plugin factory; covers only part of the scope of #2849.

  • Related To: snapcraft#1014 (confidence 70%)

    Merged snapcraft PR d97c00e8f reorganised plugin tests into a subdirectory, resolving launchpad bug 'Plugin tests need to be reorganized' — prior art for the same maintenance concern.

Related issues

No related issues found above the similarity threshold.