-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue 3082 - Separate test code from lib389 #5212
base: main
Are you sure you want to change the base?
Conversation
Bug Description: `topologies` module is used only in tests. But because it's part of lib389, it pulls in pytest and its dependencies. Additionally, lib389 contains tests that are installed, but not needed for lib389 to function. `perftools` module is also used only for tests and depends on `topologies`. Fix Description: `topologies` and `perftools` modules have been converted into Python packages. Fixes: 389ds#3082 Reviewed by: Signed-off-by: Stanislav Levin <[email protected]>
Avoiding pytest dependency from lib389 is a good idea but I do not like the idea of delivering only parts of src/lib389/lib389/* |
+1 Also, the PR can affect our QE and CI significantly. @sgouvern could you please check if it's what you want? I recall we had some plans regards the topologies/tests code moving... |
We already have a ticket for it: Looks like @stanislavlevin already did PR for it that strips out the tests, but I think we want to "move" the tests outside the lib389 source. We are not running them from where they are now anyway. |
The goal of this PR is getting rid of Pytest as dependency of [someuser somedir]$ git grep 'from lib389.topologies' dirsrvtests/ | wc -l
343 That's why I chose the lesser evil. If everyone is Ok with fixing |
We'll need a little more time to look more deeply to what it means for QE and CIs |
ofc, no reason to rush, please let me know when and if you want my help here, thank you. |
This is a somewhat complicated topic.
lib389 has 2 types of tests: unit and integration. Integration tests use
The
In this case I'd separate @bsimonova |
With this change
So that's why we either need to use PYTHONPATH, or move |
Bug Description:
topologies
module is used only in tests. But because it's part oflib389, it pulls in pytest and its dependencies. Additionally, lib389
contains tests that are installed, but not needed for lib389 to
function.
perftools
module is also used only for tests and depends ontopologies
.Fix Description:
topologies
andperftools
modules have been converted into Pythonpackages.
Fixes: #3082
Reviewed by: