test: re-enable and fix LinuxNetworkUtilTest #5626
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.
In #5602 we disabled some tests that were failing due to the Java 17 change. This PR re-enables one of them.
Here I refactored the
LinuxNetworkUtil
class so that it exposes a few methods allowing for specifying the search path of the tool. This allows the unit test to not rely on reflection anymore.Originally this tests were leveraging a behaviour that is no longer supported in Java 17, see: https://stackoverflow.com/questions/56039341/get-declared-fields-of-java-lang-reflect-fields-in-jdk12. This was causing the tests to fail.
One of the tests still fails since I cannot inject a mock
BuildProcess
into the static class. In our offline discussion we decided that this was acceptable for now. A bigger rework of theLinuxNetworkUtil
class is needed (1200 LOC, static class with state... you name it)