1999-02-03 13:21:21 -04:00
|
|
|
import ntpath
|
2000-08-14 03:21:26 -03:00
|
|
|
import os
|
2008-05-20 18:35:26 -03:00
|
|
|
from test.support import verbose, TestFailed
|
|
|
|
import test.support as support
|
Merged revisions 61913,61915-61916,61918-61919,61922-61926,61928-61929,61931,61935,61938,61943 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r61913 | benjamin.peterson | 2008-03-25 22:14:42 +0100 (Tue, 25 Mar 2008) | 2 lines
Merged the ACKS from py3k
........
r61915 | thomas.heller | 2008-03-25 22:18:39 +0100 (Tue, 25 Mar 2008) | 1 line
Make _ctypes.c PY_SSIZE_T_CLEAN.
........
r61916 | benjamin.peterson | 2008-03-25 22:55:50 +0100 (Tue, 25 Mar 2008) | 3 lines
Opps! I merged the revisions, but forgot to add
the header to ACKS
........
r61918 | andrew.kuchling | 2008-03-26 01:16:50 +0100 (Wed, 26 Mar 2008) | 1 line
Minor docstring typos
........
r61919 | andrew.kuchling | 2008-03-26 01:30:02 +0100 (Wed, 26 Mar 2008) | 1 line
Add various items
........
r61922 | neal.norwitz | 2008-03-26 05:55:51 +0100 (Wed, 26 Mar 2008) | 6 lines
Try to get this test to be less flaky. It was failing sometimes because
the connect would succeed before the timeout occurred. Try using an
address and port that hopefully doesn't exist to ensure we get no response.
If this doesn't work, we can use a public address close to python.org
and hopefully that address never gets taken.
........
r61923 | jerry.seutter | 2008-03-26 06:03:03 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61924 | neal.norwitz | 2008-03-26 06:19:41 +0100 (Wed, 26 Mar 2008) | 5 lines
Ensure that the mailbox is closed to prevent problems on Windows with removing
an open file. This doesn't seem to be a problem in 2.6, but that appears
to be somewhat accidental (specific to reference counting). When this
gets merged to 3.0, it will make the 3.0 code simpler.
........
r61925 | jerry.seutter | 2008-03-26 06:32:51 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61926 | jerry.seutter | 2008-03-26 06:58:14 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61928 | georg.brandl | 2008-03-26 10:04:36 +0100 (Wed, 26 Mar 2008) | 2 lines
Add Josiah.
........
r61929 | georg.brandl | 2008-03-26 10:32:46 +0100 (Wed, 26 Mar 2008) | 2 lines
Add an example for an RFC 822 continuation.
........
r61931 | benjamin.peterson | 2008-03-26 12:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Added help options to PDB
........
r61935 | christian.heimes | 2008-03-26 13:32:49 +0100 (Wed, 26 Mar 2008) | 1 line
Prepare integration of bytearray backport branch
........
r61938 | christian.heimes | 2008-03-26 13:50:43 +0100 (Wed, 26 Mar 2008) | 3 lines
Removed merge tracking for "svnmerge" for
svn+ssh://pythondev@svn.python.org/python/branches/trunk-bytearray
........
r61943 | georg.brandl | 2008-03-26 13:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Fix and simplify error handling, silencing a compiler warning.
........
2008-03-26 10:45:42 -03:00
|
|
|
import unittest
|
1999-02-03 13:21:21 -04:00
|
|
|
|
|
|
|
|
|
|
|
def tester(fn, wantResult):
|
2001-02-09 07:51:27 -04:00
|
|
|
fn = fn.replace("\\", "\\\\")
|
2000-10-23 14:22:08 -03:00
|
|
|
gotResult = eval(fn)
|
|
|
|
if wantResult != gotResult:
|
Merged revisions 61913,61915-61916,61918-61919,61922-61926,61928-61929,61931,61935,61938,61943 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r61913 | benjamin.peterson | 2008-03-25 22:14:42 +0100 (Tue, 25 Mar 2008) | 2 lines
Merged the ACKS from py3k
........
r61915 | thomas.heller | 2008-03-25 22:18:39 +0100 (Tue, 25 Mar 2008) | 1 line
Make _ctypes.c PY_SSIZE_T_CLEAN.
........
r61916 | benjamin.peterson | 2008-03-25 22:55:50 +0100 (Tue, 25 Mar 2008) | 3 lines
Opps! I merged the revisions, but forgot to add
the header to ACKS
........
r61918 | andrew.kuchling | 2008-03-26 01:16:50 +0100 (Wed, 26 Mar 2008) | 1 line
Minor docstring typos
........
r61919 | andrew.kuchling | 2008-03-26 01:30:02 +0100 (Wed, 26 Mar 2008) | 1 line
Add various items
........
r61922 | neal.norwitz | 2008-03-26 05:55:51 +0100 (Wed, 26 Mar 2008) | 6 lines
Try to get this test to be less flaky. It was failing sometimes because
the connect would succeed before the timeout occurred. Try using an
address and port that hopefully doesn't exist to ensure we get no response.
If this doesn't work, we can use a public address close to python.org
and hopefully that address never gets taken.
........
r61923 | jerry.seutter | 2008-03-26 06:03:03 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61924 | neal.norwitz | 2008-03-26 06:19:41 +0100 (Wed, 26 Mar 2008) | 5 lines
Ensure that the mailbox is closed to prevent problems on Windows with removing
an open file. This doesn't seem to be a problem in 2.6, but that appears
to be somewhat accidental (specific to reference counting). When this
gets merged to 3.0, it will make the 3.0 code simpler.
........
r61925 | jerry.seutter | 2008-03-26 06:32:51 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61926 | jerry.seutter | 2008-03-26 06:58:14 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61928 | georg.brandl | 2008-03-26 10:04:36 +0100 (Wed, 26 Mar 2008) | 2 lines
Add Josiah.
........
r61929 | georg.brandl | 2008-03-26 10:32:46 +0100 (Wed, 26 Mar 2008) | 2 lines
Add an example for an RFC 822 continuation.
........
r61931 | benjamin.peterson | 2008-03-26 12:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Added help options to PDB
........
r61935 | christian.heimes | 2008-03-26 13:32:49 +0100 (Wed, 26 Mar 2008) | 1 line
Prepare integration of bytearray backport branch
........
r61938 | christian.heimes | 2008-03-26 13:50:43 +0100 (Wed, 26 Mar 2008) | 3 lines
Removed merge tracking for "svnmerge" for
svn+ssh://pythondev@svn.python.org/python/branches/trunk-bytearray
........
r61943 | georg.brandl | 2008-03-26 13:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Fix and simplify error handling, silencing a compiler warning.
........
2008-03-26 10:45:42 -03:00
|
|
|
raise TestFailed("%s should return: %s but returned: %s" \
|
|
|
|
%(str(fn), str(wantResult), str(gotResult)))
|
|
|
|
|
2008-10-03 15:38:26 -03:00
|
|
|
# then with bytes
|
|
|
|
fn = fn.replace("('", "(b'")
|
|
|
|
fn = fn.replace('("', '(b"')
|
|
|
|
fn = fn.replace("['", "[b'")
|
|
|
|
fn = fn.replace('["', '[b"')
|
|
|
|
fn = fn.replace(", '", ", b'")
|
|
|
|
fn = fn.replace(', "', ', b"')
|
|
|
|
gotResult = eval(fn)
|
|
|
|
if isinstance(wantResult, str):
|
|
|
|
wantResult = wantResult.encode('ascii')
|
|
|
|
elif isinstance(wantResult, tuple):
|
|
|
|
wantResult = tuple(r.encode('ascii') for r in wantResult)
|
|
|
|
|
|
|
|
gotResult = eval(fn)
|
|
|
|
if wantResult != gotResult:
|
|
|
|
raise TestFailed("%s should return: %s but returned: %s" \
|
|
|
|
%(str(fn), str(wantResult), repr(gotResult)))
|
Merged revisions 61913,61915-61916,61918-61919,61922-61926,61928-61929,61931,61935,61938,61943 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r61913 | benjamin.peterson | 2008-03-25 22:14:42 +0100 (Tue, 25 Mar 2008) | 2 lines
Merged the ACKS from py3k
........
r61915 | thomas.heller | 2008-03-25 22:18:39 +0100 (Tue, 25 Mar 2008) | 1 line
Make _ctypes.c PY_SSIZE_T_CLEAN.
........
r61916 | benjamin.peterson | 2008-03-25 22:55:50 +0100 (Tue, 25 Mar 2008) | 3 lines
Opps! I merged the revisions, but forgot to add
the header to ACKS
........
r61918 | andrew.kuchling | 2008-03-26 01:16:50 +0100 (Wed, 26 Mar 2008) | 1 line
Minor docstring typos
........
r61919 | andrew.kuchling | 2008-03-26 01:30:02 +0100 (Wed, 26 Mar 2008) | 1 line
Add various items
........
r61922 | neal.norwitz | 2008-03-26 05:55:51 +0100 (Wed, 26 Mar 2008) | 6 lines
Try to get this test to be less flaky. It was failing sometimes because
the connect would succeed before the timeout occurred. Try using an
address and port that hopefully doesn't exist to ensure we get no response.
If this doesn't work, we can use a public address close to python.org
and hopefully that address never gets taken.
........
r61923 | jerry.seutter | 2008-03-26 06:03:03 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61924 | neal.norwitz | 2008-03-26 06:19:41 +0100 (Wed, 26 Mar 2008) | 5 lines
Ensure that the mailbox is closed to prevent problems on Windows with removing
an open file. This doesn't seem to be a problem in 2.6, but that appears
to be somewhat accidental (specific to reference counting). When this
gets merged to 3.0, it will make the 3.0 code simpler.
........
r61925 | jerry.seutter | 2008-03-26 06:32:51 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61926 | jerry.seutter | 2008-03-26 06:58:14 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61928 | georg.brandl | 2008-03-26 10:04:36 +0100 (Wed, 26 Mar 2008) | 2 lines
Add Josiah.
........
r61929 | georg.brandl | 2008-03-26 10:32:46 +0100 (Wed, 26 Mar 2008) | 2 lines
Add an example for an RFC 822 continuation.
........
r61931 | benjamin.peterson | 2008-03-26 12:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Added help options to PDB
........
r61935 | christian.heimes | 2008-03-26 13:32:49 +0100 (Wed, 26 Mar 2008) | 1 line
Prepare integration of bytearray backport branch
........
r61938 | christian.heimes | 2008-03-26 13:50:43 +0100 (Wed, 26 Mar 2008) | 3 lines
Removed merge tracking for "svnmerge" for
svn+ssh://pythondev@svn.python.org/python/branches/trunk-bytearray
........
r61943 | georg.brandl | 2008-03-26 13:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Fix and simplify error handling, silencing a compiler warning.
........
2008-03-26 10:45:42 -03:00
|
|
|
|
|
|
|
class TestNtpath(unittest.TestCase):
|
|
|
|
def test_splitext(self):
|
|
|
|
tester('ntpath.splitext("foo.ext")', ('foo', '.ext'))
|
|
|
|
tester('ntpath.splitext("/foo/foo.ext")', ('/foo/foo', '.ext'))
|
|
|
|
tester('ntpath.splitext(".ext")', ('.ext', ''))
|
|
|
|
tester('ntpath.splitext("\\foo.ext\\foo")', ('\\foo.ext\\foo', ''))
|
|
|
|
tester('ntpath.splitext("foo.ext\\")', ('foo.ext\\', ''))
|
|
|
|
tester('ntpath.splitext("")', ('', ''))
|
|
|
|
tester('ntpath.splitext("foo.bar.ext")', ('foo.bar', '.ext'))
|
|
|
|
tester('ntpath.splitext("xx/foo.bar.ext")', ('xx/foo.bar', '.ext'))
|
|
|
|
tester('ntpath.splitext("xx\\foo.bar.ext")', ('xx\\foo.bar', '.ext'))
|
|
|
|
tester('ntpath.splitext("c:a/b\\c.d")', ('c:a/b\\c', '.d'))
|
|
|
|
|
|
|
|
def test_splitdrive(self):
|
|
|
|
tester('ntpath.splitdrive("c:\\foo\\bar")',
|
|
|
|
('c:', '\\foo\\bar'))
|
|
|
|
tester('ntpath.splitdrive("c:/foo/bar")',
|
|
|
|
('c:', '/foo/bar'))
|
|
|
|
|
|
|
|
def test_splitunc(self):
|
|
|
|
tester('ntpath.splitunc("\\\\conky\\mountpoint\\foo\\bar")',
|
|
|
|
('\\\\conky\\mountpoint', '\\foo\\bar'))
|
|
|
|
tester('ntpath.splitunc("//conky/mountpoint/foo/bar")',
|
|
|
|
('//conky/mountpoint', '/foo/bar'))
|
|
|
|
|
|
|
|
def test_split(self):
|
|
|
|
tester('ntpath.split("c:\\foo\\bar")', ('c:\\foo', 'bar'))
|
|
|
|
tester('ntpath.split("\\\\conky\\mountpoint\\foo\\bar")',
|
|
|
|
('\\\\conky\\mountpoint\\foo', 'bar'))
|
|
|
|
|
|
|
|
tester('ntpath.split("c:\\")', ('c:\\', ''))
|
|
|
|
tester('ntpath.split("\\\\conky\\mountpoint\\")',
|
|
|
|
('\\\\conky\\mountpoint', ''))
|
|
|
|
|
|
|
|
tester('ntpath.split("c:/")', ('c:/', ''))
|
|
|
|
tester('ntpath.split("//conky/mountpoint/")', ('//conky/mountpoint', ''))
|
|
|
|
|
|
|
|
def test_isabs(self):
|
|
|
|
tester('ntpath.isabs("c:\\")', 1)
|
|
|
|
tester('ntpath.isabs("\\\\conky\\mountpoint\\")', 1)
|
|
|
|
tester('ntpath.isabs("\\foo")', 1)
|
|
|
|
tester('ntpath.isabs("\\foo\\bar")', 1)
|
|
|
|
|
|
|
|
def test_commonprefix(self):
|
|
|
|
tester('ntpath.commonprefix(["/home/swenson/spam", "/home/swen/spam"])',
|
|
|
|
"/home/swen")
|
|
|
|
tester('ntpath.commonprefix(["\\home\\swen\\spam", "\\home\\swen\\eggs"])',
|
|
|
|
"\\home\\swen\\")
|
|
|
|
tester('ntpath.commonprefix(["/home/swen/spam", "/home/swen/spam"])',
|
|
|
|
"/home/swen/spam")
|
|
|
|
|
|
|
|
def test_join(self):
|
|
|
|
tester('ntpath.join("")', '')
|
|
|
|
tester('ntpath.join("", "", "")', '')
|
|
|
|
tester('ntpath.join("a")', 'a')
|
|
|
|
tester('ntpath.join("/a")', '/a')
|
|
|
|
tester('ntpath.join("\\a")', '\\a')
|
|
|
|
tester('ntpath.join("a:")', 'a:')
|
|
|
|
tester('ntpath.join("a:", "b")', 'a:b')
|
|
|
|
tester('ntpath.join("a:", "/b")', 'a:/b')
|
|
|
|
tester('ntpath.join("a:", "\\b")', 'a:\\b')
|
|
|
|
tester('ntpath.join("a", "/b")', '/b')
|
|
|
|
tester('ntpath.join("a", "\\b")', '\\b')
|
|
|
|
tester('ntpath.join("a", "b", "c")', 'a\\b\\c')
|
|
|
|
tester('ntpath.join("a\\", "b", "c")', 'a\\b\\c')
|
|
|
|
tester('ntpath.join("a", "b\\", "c")', 'a\\b\\c')
|
|
|
|
tester('ntpath.join("a", "b", "\\c")', '\\c')
|
|
|
|
tester('ntpath.join("d:\\", "\\pleep")', 'd:\\pleep')
|
|
|
|
tester('ntpath.join("d:\\", "a", "b")', 'd:\\a\\b')
|
|
|
|
tester("ntpath.join('c:', '/a')", 'c:/a')
|
|
|
|
tester("ntpath.join('c:/', '/a')", 'c:/a')
|
|
|
|
tester("ntpath.join('c:/a', '/b')", '/b')
|
|
|
|
tester("ntpath.join('c:', 'd:/')", 'd:/')
|
|
|
|
tester("ntpath.join('c:/', 'd:/')", 'd:/')
|
|
|
|
tester("ntpath.join('c:/', 'd:/a/b')", 'd:/a/b')
|
|
|
|
|
|
|
|
tester("ntpath.join('')", '')
|
|
|
|
tester("ntpath.join('', '', '', '', '')", '')
|
|
|
|
tester("ntpath.join('a')", 'a')
|
|
|
|
tester("ntpath.join('', 'a')", 'a')
|
|
|
|
tester("ntpath.join('', '', '', '', 'a')", 'a')
|
|
|
|
tester("ntpath.join('a', '')", 'a\\')
|
|
|
|
tester("ntpath.join('a', '', '', '', '')", 'a\\')
|
|
|
|
tester("ntpath.join('a\\', '')", 'a\\')
|
|
|
|
tester("ntpath.join('a\\', '', '', '', '')", 'a\\')
|
|
|
|
|
|
|
|
def test_normpath(self):
|
|
|
|
tester("ntpath.normpath('A//////././//.//B')", r'A\B')
|
|
|
|
tester("ntpath.normpath('A/./B')", r'A\B')
|
|
|
|
tester("ntpath.normpath('A/foo/../B')", r'A\B')
|
|
|
|
tester("ntpath.normpath('C:A//B')", r'C:A\B')
|
|
|
|
tester("ntpath.normpath('D:A/./B')", r'D:A\B')
|
|
|
|
tester("ntpath.normpath('e:A/foo/../B')", r'e:A\B')
|
|
|
|
|
|
|
|
tester("ntpath.normpath('C:///A//B')", r'C:\A\B')
|
|
|
|
tester("ntpath.normpath('D:///A/./B')", r'D:\A\B')
|
|
|
|
tester("ntpath.normpath('e:///A/foo/../B')", r'e:\A\B')
|
|
|
|
|
|
|
|
tester("ntpath.normpath('..')", r'..')
|
|
|
|
tester("ntpath.normpath('.')", r'.')
|
|
|
|
tester("ntpath.normpath('')", r'.')
|
|
|
|
tester("ntpath.normpath('/')", '\\')
|
|
|
|
tester("ntpath.normpath('c:/')", 'c:\\')
|
|
|
|
tester("ntpath.normpath('/../.././..')", '\\')
|
|
|
|
tester("ntpath.normpath('c:/../../..')", 'c:\\')
|
|
|
|
tester("ntpath.normpath('../.././..')", r'..\..\..')
|
|
|
|
tester("ntpath.normpath('K:../.././..')", r'K:..\..\..')
|
|
|
|
tester("ntpath.normpath('C:////a/b')", r'C:\a\b')
|
|
|
|
tester("ntpath.normpath('//machine/share//a/b')", r'\\machine\share\a\b')
|
|
|
|
|
|
|
|
def test_expandvars(self):
|
2009-05-01 16:58:58 -03:00
|
|
|
with support.EnvironmentVarGuard() as env:
|
|
|
|
env.clear()
|
|
|
|
env["foo"] = "bar"
|
|
|
|
env["{foo"] = "baz1"
|
|
|
|
env["{foo}"] = "baz2"
|
Merged revisions 61913,61915-61916,61918-61919,61922-61926,61928-61929,61931,61935,61938,61943 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r61913 | benjamin.peterson | 2008-03-25 22:14:42 +0100 (Tue, 25 Mar 2008) | 2 lines
Merged the ACKS from py3k
........
r61915 | thomas.heller | 2008-03-25 22:18:39 +0100 (Tue, 25 Mar 2008) | 1 line
Make _ctypes.c PY_SSIZE_T_CLEAN.
........
r61916 | benjamin.peterson | 2008-03-25 22:55:50 +0100 (Tue, 25 Mar 2008) | 3 lines
Opps! I merged the revisions, but forgot to add
the header to ACKS
........
r61918 | andrew.kuchling | 2008-03-26 01:16:50 +0100 (Wed, 26 Mar 2008) | 1 line
Minor docstring typos
........
r61919 | andrew.kuchling | 2008-03-26 01:30:02 +0100 (Wed, 26 Mar 2008) | 1 line
Add various items
........
r61922 | neal.norwitz | 2008-03-26 05:55:51 +0100 (Wed, 26 Mar 2008) | 6 lines
Try to get this test to be less flaky. It was failing sometimes because
the connect would succeed before the timeout occurred. Try using an
address and port that hopefully doesn't exist to ensure we get no response.
If this doesn't work, we can use a public address close to python.org
and hopefully that address never gets taken.
........
r61923 | jerry.seutter | 2008-03-26 06:03:03 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61924 | neal.norwitz | 2008-03-26 06:19:41 +0100 (Wed, 26 Mar 2008) | 5 lines
Ensure that the mailbox is closed to prevent problems on Windows with removing
an open file. This doesn't seem to be a problem in 2.6, but that appears
to be somewhat accidental (specific to reference counting). When this
gets merged to 3.0, it will make the 3.0 code simpler.
........
r61925 | jerry.seutter | 2008-03-26 06:32:51 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61926 | jerry.seutter | 2008-03-26 06:58:14 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61928 | georg.brandl | 2008-03-26 10:04:36 +0100 (Wed, 26 Mar 2008) | 2 lines
Add Josiah.
........
r61929 | georg.brandl | 2008-03-26 10:32:46 +0100 (Wed, 26 Mar 2008) | 2 lines
Add an example for an RFC 822 continuation.
........
r61931 | benjamin.peterson | 2008-03-26 12:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Added help options to PDB
........
r61935 | christian.heimes | 2008-03-26 13:32:49 +0100 (Wed, 26 Mar 2008) | 1 line
Prepare integration of bytearray backport branch
........
r61938 | christian.heimes | 2008-03-26 13:50:43 +0100 (Wed, 26 Mar 2008) | 3 lines
Removed merge tracking for "svnmerge" for
svn+ssh://pythondev@svn.python.org/python/branches/trunk-bytearray
........
r61943 | georg.brandl | 2008-03-26 13:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Fix and simplify error handling, silencing a compiler warning.
........
2008-03-26 10:45:42 -03:00
|
|
|
tester('ntpath.expandvars("foo")', "foo")
|
|
|
|
tester('ntpath.expandvars("$foo bar")', "bar bar")
|
|
|
|
tester('ntpath.expandvars("${foo}bar")', "barbar")
|
|
|
|
tester('ntpath.expandvars("$[foo]bar")', "$[foo]bar")
|
|
|
|
tester('ntpath.expandvars("$bar bar")', "$bar bar")
|
|
|
|
tester('ntpath.expandvars("$?bar")', "$?bar")
|
|
|
|
tester('ntpath.expandvars("${foo}bar")', "barbar")
|
|
|
|
tester('ntpath.expandvars("$foo}bar")', "bar}bar")
|
|
|
|
tester('ntpath.expandvars("${foo")', "${foo")
|
|
|
|
tester('ntpath.expandvars("${{foo}}")', "baz1}")
|
|
|
|
tester('ntpath.expandvars("$foo$foo")', "barbar")
|
|
|
|
tester('ntpath.expandvars("$bar$bar")', "$bar$bar")
|
|
|
|
tester('ntpath.expandvars("%foo% bar")', "bar bar")
|
|
|
|
tester('ntpath.expandvars("%foo%bar")', "barbar")
|
|
|
|
tester('ntpath.expandvars("%foo%%foo%")', "barbar")
|
|
|
|
tester('ntpath.expandvars("%%foo%%foo%foo%")', "%foo%foobar")
|
|
|
|
tester('ntpath.expandvars("%?bar%")', "%?bar%")
|
|
|
|
tester('ntpath.expandvars("%foo%%bar")', "bar%bar")
|
|
|
|
tester('ntpath.expandvars("\'%foo%\'%bar")', "\'%foo%\'%bar")
|
|
|
|
|
|
|
|
def test_abspath(self):
|
|
|
|
# ntpath.abspath() can only be used on a system with the "nt" module
|
|
|
|
# (reasonably), so we protect this test with "import nt". This allows
|
|
|
|
# the rest of the tests for the ntpath module to be run to completion
|
|
|
|
# on any platform, since most of the module is intended to be usable
|
|
|
|
# from any platform.
|
|
|
|
try:
|
|
|
|
import nt
|
|
|
|
except ImportError:
|
|
|
|
pass
|
|
|
|
else:
|
|
|
|
tester('ntpath.abspath("C:\\")', "C:\\")
|
|
|
|
|
|
|
|
def test_relpath(self):
|
|
|
|
currentdir = os.path.split(os.getcwd())[-1]
|
|
|
|
tester('ntpath.relpath("a")', 'a')
|
|
|
|
tester('ntpath.relpath(os.path.abspath("a"))', 'a')
|
|
|
|
tester('ntpath.relpath("a/b")', 'a\\b')
|
|
|
|
tester('ntpath.relpath("../a/b")', '..\\a\\b')
|
|
|
|
tester('ntpath.relpath("a", "../b")', '..\\'+currentdir+'\\a')
|
|
|
|
tester('ntpath.relpath("a/b", "../c")', '..\\'+currentdir+'\\a\\b')
|
|
|
|
tester('ntpath.relpath("a", "b/c")', '..\\..\\a')
|
|
|
|
tester('ntpath.relpath("//conky/mountpoint/a", "//conky/mountpoint/b/c")', '..\\..\\a')
|
|
|
|
tester('ntpath.relpath("a", "a")', '.')
|
|
|
|
|
|
|
|
|
|
|
|
def test_main():
|
2008-05-20 18:35:26 -03:00
|
|
|
support.run_unittest(TestNtpath)
|
Merged revisions 61913,61915-61916,61918-61919,61922-61926,61928-61929,61931,61935,61938,61943 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r61913 | benjamin.peterson | 2008-03-25 22:14:42 +0100 (Tue, 25 Mar 2008) | 2 lines
Merged the ACKS from py3k
........
r61915 | thomas.heller | 2008-03-25 22:18:39 +0100 (Tue, 25 Mar 2008) | 1 line
Make _ctypes.c PY_SSIZE_T_CLEAN.
........
r61916 | benjamin.peterson | 2008-03-25 22:55:50 +0100 (Tue, 25 Mar 2008) | 3 lines
Opps! I merged the revisions, but forgot to add
the header to ACKS
........
r61918 | andrew.kuchling | 2008-03-26 01:16:50 +0100 (Wed, 26 Mar 2008) | 1 line
Minor docstring typos
........
r61919 | andrew.kuchling | 2008-03-26 01:30:02 +0100 (Wed, 26 Mar 2008) | 1 line
Add various items
........
r61922 | neal.norwitz | 2008-03-26 05:55:51 +0100 (Wed, 26 Mar 2008) | 6 lines
Try to get this test to be less flaky. It was failing sometimes because
the connect would succeed before the timeout occurred. Try using an
address and port that hopefully doesn't exist to ensure we get no response.
If this doesn't work, we can use a public address close to python.org
and hopefully that address never gets taken.
........
r61923 | jerry.seutter | 2008-03-26 06:03:03 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61924 | neal.norwitz | 2008-03-26 06:19:41 +0100 (Wed, 26 Mar 2008) | 5 lines
Ensure that the mailbox is closed to prevent problems on Windows with removing
an open file. This doesn't seem to be a problem in 2.6, but that appears
to be somewhat accidental (specific to reference counting). When this
gets merged to 3.0, it will make the 3.0 code simpler.
........
r61925 | jerry.seutter | 2008-03-26 06:32:51 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61926 | jerry.seutter | 2008-03-26 06:58:14 +0100 (Wed, 26 Mar 2008) | 1 line
Changed test so it no longer runs as a side effect of importing.
........
r61928 | georg.brandl | 2008-03-26 10:04:36 +0100 (Wed, 26 Mar 2008) | 2 lines
Add Josiah.
........
r61929 | georg.brandl | 2008-03-26 10:32:46 +0100 (Wed, 26 Mar 2008) | 2 lines
Add an example for an RFC 822 continuation.
........
r61931 | benjamin.peterson | 2008-03-26 12:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Added help options to PDB
........
r61935 | christian.heimes | 2008-03-26 13:32:49 +0100 (Wed, 26 Mar 2008) | 1 line
Prepare integration of bytearray backport branch
........
r61938 | christian.heimes | 2008-03-26 13:50:43 +0100 (Wed, 26 Mar 2008) | 3 lines
Removed merge tracking for "svnmerge" for
svn+ssh://pythondev@svn.python.org/python/branches/trunk-bytearray
........
r61943 | georg.brandl | 2008-03-26 13:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines
Fix and simplify error handling, silencing a compiler warning.
........
2008-03-26 10:45:42 -03:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
unittest.main()
|