#1405: Fix integration test order dependency #1657
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes #1405
This PR addresses the issue where integration tests were failing when executed in alphabetical order due to environment interference between tests.
Root Cause
The original issue occurred when
verify-longpaths.shwas renamed toensure-longpaths.sh, causing it to run first alphabetically. The test used$IDE -f installwhich performs a forced full IDEasy installation that modifies the global environment and interferes with subsequent tests. Theinstall-intellij.shtest expected a clean environment for tool-specific installation.Implemented changes:
doGetOsType()function to detect OS type based on$OSTYPEinstead of relying on GitHub workflow matrix variables (MATRIX_OS). This makes tests more portable and runnable outside GitHub Actions.doDownloadSnapshot(),doIsMacOs(), anddoIsWindows()functions to use the new OS detection method.all-tests.sh:IDE_ROOTandPATHenvironment variables.bashrc,.zshrc) to prevent user configuration corruptiondoResetVariables()force-install.shtest to reproduce and validate the environment interference issueThese changes ensure that all integration tests succeed regardless of execution order, maintaining proper test independence.
Checklist for this PR
Make sure everything is checked before merging this PR. For further info please also see
our DoD.
mvn clean testlocally all tests pass and build is successful#«issue-id»: «brief summary»(e.g.#921: fixed setup.bat). If no issue ID exists, title only.In Progressand assigned to you or there is no issue (might happen for very small PRs)with
internalNote: This PR replaces #1417 which was created by copilot-swe-agent. Due to CLA assistant issues with copilot-authored commits, the changes have been manually recreated with proper authorship attribution.