-
-
Notifications
You must be signed in to change notification settings - Fork 358
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
Execute Release-Tests last on CI #13349
base: Pharo13
Are you sure you want to change the base?
Conversation
We have a lot of tests in Pharo and it might happen that some of them do not respect the principle of letting the system clean with their tearDown. To help to spot those impacts, I propose to run the releases tests last. Like this, if some bad generated code/or modifications of system entities happens, we might catch it with the verifications of release tests. I expect this commit to break the tests in the CI but it'll help me find the culprits and fix them.
Nice. Since tests force the coverage (of) some code, thus performs code transformation because of deprecation, is there a release test that check that the code is pristine/unmodified? |
There is none yet, but I would love to have that :) |
But we will need some work to get it because in Pharo 12 it comes with dirty packages, so this test would fail currently |
More than 10 tests failures because the tests are dirtying the image D: |
Here is a first fix: pharo-spec/NewTools#504 |
ClassRenameFixTest is way too complicated for what it does. This aim to simplify it and make it cleaner. Currently running this test was leaving the system in a dirty state leaving an empty package. (cf. pharo-project#13349) Now, instead of saving all the changes and trying to revert it, the code generated is all in a specific package that we remove in the tear down. I removed a double initialization. And finally I inlined #renameClassUsing: because this method was doing almost everything and the test nothing
We have a lot of tests in Pharo and it might happen that some of them do not respect the principle of letting the system clean with their tearDown. To help to spot those impacts, I propose to run the releases tests last. Like this, if some bad generated code/or modifications of system entities happens, we might catch it with the verifications of release tests.
I expect this commit to break the tests in the CI but it'll help me find the culprits and fix them.