@@ -1492,10 +1492,10 @@ def test_resolve_common(self):
1492
1492
os .path .join (BASE , 'foo' ))
1493
1493
p = P (BASE , 'foo' , 'in' , 'spam' )
1494
1494
self .assertEqual (str (p .resolve (strict = False )),
1495
- os .path .join (BASE , 'foo' ))
1495
+ os .path .join (BASE , 'foo' , 'in' , 'spam' ))
1496
1496
p = P (BASE , '..' , 'foo' , 'in' , 'spam' )
1497
1497
self .assertEqual (str (p .resolve (strict = False )),
1498
- os .path .abspath (os .path .join ('foo' )))
1498
+ os .path .abspath (os .path .join ('foo' , 'in' , 'spam' )))
1499
1499
# These are all relative symlinks
1500
1500
p = P (BASE , 'dirB' , 'fileB' )
1501
1501
self ._check_resolve_relative (p , p )
@@ -1507,16 +1507,18 @@ def test_resolve_common(self):
1507
1507
self ._check_resolve_relative (p , P (BASE , 'dirB' , 'fileB' ))
1508
1508
# Non-strict
1509
1509
p = P (BASE , 'dirA' , 'linkC' , 'fileB' , 'foo' , 'in' , 'spam' )
1510
- self ._check_resolve_relative (p , P (BASE , 'dirB' , 'fileB' , 'foo' ), False )
1510
+ self ._check_resolve_relative (p , P (BASE , 'dirB' , 'fileB' , 'foo' , 'in' ,
1511
+ 'spam' ), False )
1511
1512
p = P (BASE , 'dirA' , 'linkC' , '..' , 'foo' , 'in' , 'spam' )
1512
1513
if os .name == 'nt' :
1513
1514
# In Windows, if linkY points to dirB, 'dirA\linkY\..'
1514
1515
# resolves to 'dirA' without resolving linkY first.
1515
- self ._check_resolve_relative (p , P (BASE , 'dirA' , 'foo' ), False )
1516
+ self ._check_resolve_relative (p , P (BASE , 'dirA' , 'foo' , 'in' ,
1517
+ 'spam' ), False )
1516
1518
else :
1517
1519
# In Posix, if linkY points to dirB, 'dirA/linkY/..'
1518
1520
# resolves to 'dirB/..' first before resolving to parent of dirB.
1519
- self ._check_resolve_relative (p , P (BASE , 'foo' ), False )
1521
+ self ._check_resolve_relative (p , P (BASE , 'foo' , 'in' , 'spam' ), False )
1520
1522
# Now create absolute symlinks
1521
1523
d = tempfile .mkdtemp (suffix = '-dirD' )
1522
1524
self .addCleanup (support .rmtree , d )
@@ -1526,16 +1528,17 @@ def test_resolve_common(self):
1526
1528
self ._check_resolve_absolute (p , P (BASE , 'dirB' , 'fileB' ))
1527
1529
# Non-strict
1528
1530
p = P (BASE , 'dirA' , 'linkX' , 'linkY' , 'foo' , 'in' , 'spam' )
1529
- self ._check_resolve_relative (p , P (BASE , 'dirB' , 'foo' ), False )
1531
+ self ._check_resolve_relative (p , P (BASE , 'dirB' , 'foo' , 'in' , 'spam' ),
1532
+ False )
1530
1533
p = P (BASE , 'dirA' , 'linkX' , 'linkY' , '..' , 'foo' , 'in' , 'spam' )
1531
1534
if os .name == 'nt' :
1532
1535
# In Windows, if linkY points to dirB, 'dirA\linkY\..'
1533
1536
# resolves to 'dirA' without resolving linkY first.
1534
- self ._check_resolve_relative (p , P (d , 'foo' ), False )
1537
+ self ._check_resolve_relative (p , P (d , 'foo' , 'in' , 'spam' ), False )
1535
1538
else :
1536
1539
# In Posix, if linkY points to dirB, 'dirA/linkY/..'
1537
1540
# resolves to 'dirB/..' first before resolving to parent of dirB.
1538
- self ._check_resolve_relative (p , P (BASE , 'foo' ), False )
1541
+ self ._check_resolve_relative (p , P (BASE , 'foo' , 'in' , 'spam' ), False )
1539
1542
1540
1543
@support .skip_unless_symlink
1541
1544
def test_resolve_dot (self ):
@@ -1549,7 +1552,7 @@ def test_resolve_dot(self):
1549
1552
r = q / '3' / '4'
1550
1553
self .assertRaises (FileNotFoundError , r .resolve , strict = True )
1551
1554
# Non-strict
1552
- self .assertEqual (r .resolve (strict = False ), p / '3' )
1555
+ self .assertEqual (r .resolve (strict = False ), p / '3' / '4' )
1553
1556
1554
1557
def test_with (self ):
1555
1558
p = self .cls (BASE )
0 commit comments