-
Notifications
You must be signed in to change notification settings - Fork 45
Introduce utbot taint analysis #1966
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
Conversation
8b446b0
to
a2a9c32
Compare
ef50dba
to
90ecb92
Compare
90ecb92
to
501bb1c
Compare
3a9612b
to
9a52264
Compare
d82460c
to
0bccb4f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Discussed verbally
b364e6c
to
0698fb3
Compare
utbot-framework/src/main/kotlin/org/utbot/taint/model/SymbolicMethodData.kt
Outdated
Show resolved
Hide resolved
utbot-framework/src/main/kotlin/org/utbot/taint/TaintMarkManager.kt
Outdated
Show resolved
Hide resolved
utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/settings/SettingsWindow.kt
Outdated
Show resolved
Hide resolved
utbot-framework/src/main/kotlin/org/utbot/taint/parser/yaml/TaintYamlParser.kt
Show resolved
Hide resolved
As an enhancement suggestion: |
0698fb3
to
9f2d100
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, add documentation for the added options
fbc5d4e
to
a142d8d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Description
All changes are under
UtSettings.useTaintAnalysis
flag which isfalse
by default (the user can change it in idea settings by checking the box "Use taint analysis")Taint analysis configuration are provided from resources
utbot-framework/src/main/resources/taint/config.yaml
and from custom user's file<path-to-user-project>/.idea/utbot-taint-config.yaml
. To reduce parsing time, the first config is cached to the%TEMP%/UTBot/
directoryThe generated test which leads to
TaintAnalysisError
looks likeThe problems view tab with taint error
How to test
Automated tests
Manual tests
.idea/utbot-taint-config.yaml
Sample code:
Sample config:
Self-check list