Add missed mock generator for static fields #1621
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.
Description
This request adds two missed generators for mocks that led to unexpected unsat results.
It happened because when a static variable was on a right side of an assignment, it was created with the corresponding mock generator. Then, if some other variable related to the same class would be encountered on the left side of the assignment, it was created without such a generator, which led to a contradiction between
isMockvalues in these two scenarios.There was one more missed generated related to final statics: when we reset statics, we should provide a corresponding mock generator.
Type of Change
How Has This Been Tested?
Regression and integration tests
The same as automatic tests.
Automated Testing
org.utbot.examples.mock.MockStaticFieldExampleTest#testCheckMocksInLeftAndRightAssignPartFinalFieldorg.utbot.examples.mock.MockStaticFieldExampleTest#testCheckMocksInLeftAndRightAssignPartManual Scenario
There is no specific manual scenario.
Checklist: