Merged revisions 76661 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r76661 | r.david.murray | 2009-12-03 19:09:14 -0500 (Thu, 03 Dec 2009) | 11 lines

  Merged revisions 76659 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r76659 | r.david.murray | 2009-12-03 18:57:59 -0500 (Thu, 03 Dec 2009) | 4 lines

    Issue 7431: use TESTFN in test_linecache instead of trying to create a
    file in the Lib/test directory, which might be read-only for the
    user running the tests.
  ........
................
This commit is contained in:
R. David Murray 2009-12-04 00:13:33 +00:00
parent 8ab31014bf
commit 8054a5d36e
2 changed files with 31 additions and 31 deletions

View file

@ -83,44 +83,40 @@ def test_checkcache(self):
getline = linecache.getline
try:
# Create a source file and cache its contents
source_name = os.path.join(TEST_PATH, 'linecache_test.py')
source = open(source_name, 'w')
source.write(SOURCE_1)
source.close()
getline(source_name, 1)
source_name = support.TESTFN + '.py'
with open(source_name, 'w') as source:
source.write(SOURCE_1)
source.close()
getline(source_name, 1)
# Keep a copy of the old contents
source_list = []
source = open(source_name)
for index, line in enumerate(source):
self.assertEquals(line, getline(source_name, index + 1))
source_list.append(line)
source.close()
# Keep a copy of the old contents
source_list = []
source = open(source_name)
for index, line in enumerate(source):
self.assertEquals(line, getline(source_name, index + 1))
source_list.append(line)
source.close()
source = open(source_name, 'w')
source.write(SOURCE_2)
source.close()
source = open(source_name, 'w')
source.write(SOURCE_2)
source.close()
# Try to update a bogus cache entry
linecache.checkcache('dummy')
# Try to update a bogus cache entry
linecache.checkcache('dummy')
# Check that the cache matches the old contents
for index, line in enumerate(source_list):
self.assertEquals(line, getline(source_name, index + 1))
# Check that the cache matches the old contents
for index, line in enumerate(source_list):
self.assertEquals(line, getline(source_name, index + 1))
# Update the cache and check whether it matches the new source file
linecache.checkcache(source_name)
source = open(source_name)
for index, line in enumerate(source):
self.assertEquals(line, getline(source_name, index + 1))
source_list.append(line)
source.close()
# Update the cache and check whether it matches the new source file
linecache.checkcache(source_name)
source = open(source_name)
for index, line in enumerate(source):
self.assertEquals(line, getline(source_name, index + 1))
source_list.append(line)
finally:
try:
source.close()
finally:
support.unlink(source_name)
support.unlink(source_name)
def test_main():
support.run_unittest(LineCacheTests)

View file

@ -192,6 +192,10 @@ Extension Modules
Tests
-----
- Issue #7431: use TESTFN in test_linecache instead of trying to create a
file in the Lib/test directory, which might be read-only for the
user running the tests.
- Issue #7324: add a sanity check to regrtest argument parsing to
catch the case of an option with no handler.