-
Notifications
You must be signed in to change notification settings - Fork 23
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
Add test setup for alias analysis #178
base: develop
Are you sure you want to change the base?
Conversation
Build doesn't work for several reasons, please fix |
building issues are fixed, but it fails because the AliasTests don't pass, despite them being annotated with @ignored. Is it not supported or is something else required to make the tests not being executed? |
PS: AliasEntity and AliasSourceElement need to be in the tac package (and not br) because they rely on the DefinitionSite class |
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/properties/alias/Alias.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
...PING_OPAL/validate/src/test/scala/org/opalj/fpcf/properties/alias/AliasPropertyMatcher.scala
Outdated
Show resolved
Hide resolved
...PING_OPAL/validate/src/test/scala/org/opalj/fpcf/properties/alias/AliasPropertyMatcher.scala
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ShapeTest.java
Outdated
Show resolved
Hide resolved
This may hint at potential to improve. In many cases, we map TAC use sites to bytecode program counters and values (search for |
All previous issues have been addressed, but most of the classes have been completely reworked |
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/ParameterAlias.java
Outdated
Show resolved
Hide resolved
DEVELOPING_OPAL/validate/src/test/java/org/opalj/fpcf/fixtures/alias/StaticFieldAlias.java
Outdated
Show resolved
Hide resolved
* | ||
* @see [[org.opalj.tac.fpcf.analyses.cg.persistentUVar]] | ||
*/ | ||
case class PersistentUVar(valueInformation: ValueInformation, defSites: IntTrieSet) |
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.
This should not be part of this file, but be in a generic place. You might want to take the code from here:
https://github.com/opalj/opal/pull/1/files#diff-62df04527a62216c2330e018931c309e5a1b88dac0e66e6a11e451a89dcf0517
and the following files
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.
How should i handle that the other PR is not merged yet? Just copy&paste the relevant code and add it to this PR?
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.
Yes, that's probably the only practical solution for now. Unless that part of the code is in isolated commits (I didn't check that), then you could cherry-pick them.
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.
Cherry-picking this commit (c3b9715) should be sufficient. However, the class has been created in the tac package, therefore i can't use it as it is. I could move it to the br package but i don't know if this is intended and that should be done in the other PR as well to avoid duplicates after merging both.
This PR adds a setup for testing alias analyses, including some (simple) test cases.
More (complex) test cases alongside analyses that pass them will be added in future PR's.
This is a continuation of #171