Refactor kernel interface to remove mock and global var #997
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.
When a unit testing scheme was originally designed for the kernel interface module in 2017 it was turned into a stateful struct to accomodate a mock test environment that allowed the tests to call the real functions and specify what exact commands they expected to be run.
This structure has not been maintained, new tests are not written in that style and instead use separate testing functions. But the original tests have not been modified much since that time. Leaving Rita with a KI global variable that in production doesn't actually do anything all to support mocking during tests.
This commit removes the mock structure and turns kernel interface into just a grab bag of utility functions where tests functions are all split out internally rather than relying on mock.
While we are touching all of these files it will also be renamed to system_interface rather than kernel interface as we now interface with a lot more than just linux kernel functions from this module.