ReliaSolve / Molprobity2

0 stars 0 forks source link

SuiteName Python 2.7 regression tests fail to run #158

Open russell-taylor opened 3 years ago

russell-taylor commented 3 years ago

The program fails when we run compare.sh because it cannot handle the command-line parsing. It works with Python 3.6. It looks like it has never worked for 2.7, but apparently this is not caught in the FullTest.py program?

taylorr@reliasolve-3:~/src/suitename_regression$ phenix.suitename -report 19387.cif Sorry: The following arguments are not recognized: etatheta=False nosequence=False nowannabe=False report=True causes=False anglefields=9 version=False test=False infile=19387.cif suitein=False string=False altid=A chart=False noinc=False satellites=False pointidfields=7 altidfield=6 residuein=False kinemage=False oneline=False

russell-taylor commented 3 years ago

Once this is fixed, add a true regression test somewhere that actually tries running the program. See how CCTBX does this for other programs.

russell-taylor commented 3 years ago

The problem is that unicode literals was turned on, which caused problems with the parser that was expecting strings.

When we remove the unicode future import, we get problems with the UnitTest code, which tries to pass a StringIO object to be filled in, but it gets filled in with strings on Python 2 and that doesn't work because it only wants unicode. Casting to unicode will presumably fail in Python 3 because it is already unicode.

If we use unicode_literals only in suitenout.py, it looks like we get the best of both worlds...

russell-taylor commented 3 years ago

Figure out how to add a regression test to that we know you can run the program.

Joymaker commented 3 years ago

This landed in my inbox. Is that because you want my involvement, or is that just Zenhub running on autopilot?

Ken On 8/24/2021 2:42:18 PM, Russell Taylor @.***> wrote: Figure out how to add a regression test to that we know you can run the program. — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub [https://github.com/ReliaSolve/Molprobity2/issues/158#issuecomment-904884203], or unsubscribe [https://github.com/notifications/unsubscribe-auth/ABNEMR2IRV2WV25AJHPBKD3T6PRYNANCNFSM5CXDFX7Q]. Triage notifications on the go with GitHub Mobile for iOS [https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675] or Android [https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email].

russell-taylor commented 3 years ago

This is Github running on autopilot. You can turn off notifications for issues that you are not named on in Github and it will stop sending them to you unless I assign you or "at" you. This can be done on a per-repository basis.

russell-taylor commented 3 years ago

phenix_regression/validation/tst_suitename.py does this. We can copy it and add the different input and output formats to snippets as tests.