wala / ML

Eclipse Public License 2.0
25 stars 17 forks source link

For classes, add a field to the script object just like functions #149

Closed khatchad closed 7 months ago

khatchad commented 7 months ago

Then, (external) classes can be found by the PA when they are imported. Otherwise, they cannot be found.

We can't a test for this because we found that com.ibm.wala.cast.python.test is run twice during the Maven build. And, the behavior of the code differs between the builds. Thus, on one run, the assertions pass, and on the other, the assertions fail. The only difference I can see is that the first test uses Python files from target/, while the second passes uses the ones from the repo. Other than that, I have no idea what the difference is and why it's run twice in the first place.

Still, this fix works in our client application. Thus, I feel that the fix would be beneficial for someone as it solves a significant bug in our client.

msridhar commented 7 months ago

It would be good at some point to dig into why tests are running twice and to fix that.

khatchad commented 7 months ago

It would be good at some point to dig into why tests are running twice and to fix that.

I think I can see why the tests are run twice, but the troubling part is why the results differ between the runs. My guess is that the multiple runs is due to surefire being included in both the parent and children pom.xml files.