Issue #4000
closed
Tests in master are failing due to a change in pulp_file
Status:
CLOSED - CURRENTRELEASE
Description
A recent change in pulp_file[0] has caused the tests in pulp to fail. The issue is that tests in pulp are coupled to the pulp_file plugin code[1] and we're not running pulpcore tests against pulp_file. So any changes to pulp_file could unknowingly break the tests in pulpcore.
The purist in me thinks that we should not have the tests in pulpcore be dependent on the code in pulp_file and that these tests should be moved to pulp_file. We're running the pulp_file tests against all pulpcore PRs anyway so moving them wouldn't hurt.
The simplest option however would be to fix these tests and then run the pulpcore tests against pulp_file PRs. That feels kind of wrong but it's quick and easy.
The third and final option I can think of (and I'm not totally sure how this would work) is to create a bare/mock plugin inside the test framework and have the pulpcore smash tests use it for tests that require a plugin and content units.
[0] https://github.com/pulp/pulp_file/pull/115
[1] https://github.com/pulp/pulp/tree/master/pulpcore/tests/functional/api/using_plugin
This is causing all PRs against the Pulp master branch to fail so I'm setting the severity to high.
- Description updated (diff)
- Description updated (diff)
- Subject changed from Tests in master are failing to Tests in master are failing due to a change in pulp_file
Long-term, I'm neutral on a mock plugin. Short-term, we should keep the tests in pulpcore, and we should run the "using_plugin" tests in pulpcore along w/ pulp_file.
- Related to Story #3912: As a user, I can specify the file manifest name on the remote when syncing and publishing a repository added
- Related to Story #3913: As a user I can specify the manifest filename when publishing a repo version added
- Status changed from NEW to POST
- Assignee set to daviddavis
Short term, I agree with fixing the tests.
Long term, I think having core tests rely on the file plugin is undesirable as demonstrated by this incident. I don't think having a test (mock) plugin in core code tree is a good idea. However, including a TestPlugin in the pulpcore/tests/functional code tree seems reasonable.
Cool, thanks for the feedback dalley and @jortel. I will use this bug to fix the tests.
I've opened a separate issue to continue discussions around using a test plugin: https://pulp.plan.io/issues/4003.
Based on the previous comments, I think that if certain core feature requires a plugin in order to be tested this test should live inside the plugin repository, and not be part of the core repository.
Besides that, if possible we should use one plugin to test all the core features that require a plugin. Or at least, most of the features.
- Status changed from POST to MODIFIED
- Sprint/Milestone set to 3.0.0
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Also available in: Atom
PDF
Fixing tests after change in pulp_file and sphinx options
re #4000 https://pulp.plan.io/issues/4000
fixes #4005 https://pulp.plan.io/issues/4005