tests: split the plugins tests in the same directory
Metadata
Current evaluation
Merged. Fixes Python 3.6 unittest discovery crashes by restructuring plugin test directories, replacing a temporary workaround that relied on missing init files. Approved and merged with 24 files changed.
Suggested action: —
No scores available.
Issue body
Previously we applied a temporary solution to split long running suites,
taking advantage that the discovery of python unittests will skip the
directories without an __init__.py file. However, this behaviour changed
on python3.6 and now the discovery is crashing if the directory doesn't
have an __init__.py file.
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)?
- [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged. Fixes Python 3.6 unittest discovery crashes by restructuring plugin test directories, replacing a temporary workaround that relied on missing init files. Approved and merged with 24 files changed. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Resolves Python 3.6+ unittest discovery crashes by properly splitting plugins tests within the same directory, replacing a temporary workaround that relied on missing __init__.py files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Resolved Python 3.6+ unittest discovery crashes by replacing a temporary __init__.py workaround with proper plugins test directory splitting. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1791 tests: python plugin integration tests moved to a separate suite | snapcraft | merged | Merged. Python plugin integration tests were split into a separate suite to prevent timeout failures in the main plugins test suite. Approved by reviewer, passed CI, and modified seven files. | |
| #1014 tests: reorganize plugin tests into subdirectory. | snapcraft | merged | Merged reorganization of plugin unit tests into a subdirectory, resolving Launchpad bug #1651903. The change moved 27 files without code modifications, maintaining 96.38% coverage and improving test suite manageability. | |
| #771 Python plugin improvements | snapcraft | merged | Merged Python plugin improvements after reviewer approval. Entry point conflicts were resolved via filesets and integration tests passed. Documentation and unit test updates remain pending but did not block the merge. | |
| #947 tests: deduplicate tests for python-based plugins | craft-parts | merged | Merged changes that deduplicate tests for Python-based plugins, resolving #935 and CRAFT-3807. Approved by three reviewers, passed CI, and modified six files with a net reduction of 98 lines. |