[issue21264] test_compileall fails to build in the installed location

Terry J. Reedy report at bugs.python.org
Sat Sep 19 01:04:41 CEST 2015


Terry J. Reedy added the comment:

David, I am nosying you because this issue proposes to modify two test functions you added to test_compileall. See my prior message.
--
For me, the test failed at every first occurrence of 'PYTHONPATH=' in the 3 functions.  With one occurrence removed, the next in the same function failed. With all 6 removed, I get 1 error:

FAIL: test_no_args_compiles_path (test.test_compileall.CommandLineTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Programs\Python34\lib\test\test_compileall.py", line 179, in test_no_args_compiles_path
    self.assertNotCompiled(self.initfn)
  File "C:\Programs\Python34\lib\test\test_compileall.py", line 159, in assertNotCompiled
    self.assertFalse(os.path.exists(path))
AssertionError: True is not false

The tests all pass in current uninstalled 3.4.3+ repository. If I remove all 6, I get the error above. Changing how the directory is passed apparently changes what get compiled. From the title of the test ad the comment "# Note that -l is implied for the no args case.", this is expected and is the point of the test.  So deleting 'PYTHONPATH=' must be wrong.  I believe we should detect that modifying the environment will not work before calling assertRunOK and skip the latter if it cannot work.

The other two functions were added in #19532 by RDM. I think we need to know why they were written as they are before changing them. Perhaps they pass with 'PYTHONPATH=' removed because they are incomplete.

----------
nosy: +r.david.murray

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue21264>
_______________________________________


More information about the Python-bugs-list mailing list