[New-bugs-announce] [issue2609] Tests fail if ./@test is not writeable

Alexander Belopolsky report at bugs.python.org
Thu Apr 10 19:01:10 CEST 2008

New submission from Alexander Belopolsky <belopolsky at users.sourceforge.net>:

If @test file is not writable in the current directory,
test_support.TESTFN is changed to '/tmp/@test', but several tests fail
if TESTFN is an absolute path:

$ mkdir @test
$ make test
4 tests failed:
    test_import test_site test_urllib test_zipfile

For example,

$ ./python -E -tt ./Lib/test/regrtest.py -l test_urllib
test test_urllib failed -- Traceback (most recent call last):
  File "Lib/test/test_urllib.py", line 84, in test_geturl
    self.assertEqual(self.returned_obj.geturl(), self.pathname)
AssertionError: 'file:///tmp/@test' != '/tmp/@test'

Note that I discovered this problem after (probably killed) test_os left
 @test/ directory behind. It took me a while to realize what happened.

I think the simplest fix is to os.chdir to '/tmp' if @test is not
writable instead of changing TESTFN. Other solutions may include
deleting or renaming @test with a warning when it exists, using
tempnam() instead of @test and bailing out if cwd is not writeable etc.

components: Tests
messages: 65301
nosy: belopolsky
severity: normal
status: open
title: Tests fail if ./@test is not writeable
type: behavior
versions: Python 2.6

Tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list