@@ -1507,10 +1507,10 @@ def test_resolve_common(self):
1507
1507
os .path .join (BASE , 'foo' ))
1508
1508
p = P (BASE , 'foo' , 'in' , 'spam' )
1509
1509
self .assertEqual (str (p .resolve (strict = False )),
1510
- os .path .join (BASE , 'foo' ))
1510
+ os .path .join (BASE , 'foo' , 'in' , 'spam' ))
1511
1511
p = P (BASE , '..' , 'foo' , 'in' , 'spam' )
1512
1512
self .assertEqual (str (p .resolve (strict = False )),
1513
- os .path .abspath (os .path .join ('foo' )))
1513
+ os .path .abspath (os .path .join ('foo' , 'in' , 'spam' )))
1514
1514
# These are all relative symlinks
1515
1515
p = P (BASE , 'dirB' , 'fileB' )
1516
1516
self ._check_resolve_relative (p , p )
@@ -1522,16 +1522,18 @@ def test_resolve_common(self):
1522
1522
self ._check_resolve_relative (p , P (BASE , 'dirB' , 'fileB' ))
1523
1523
# Non-strict
1524
1524
p = P (BASE , 'dirA' , 'linkC' , 'fileB' , 'foo' , 'in' , 'spam' )
1525
- self ._check_resolve_relative (p , P (BASE , 'dirB' , 'fileB' , 'foo' ), False )
1525
+ self ._check_resolve_relative (p , P (BASE , 'dirB' , 'fileB' , 'foo' , 'in' ,
1526
+ 'spam' ), False )
1526
1527
p = P (BASE , 'dirA' , 'linkC' , '..' , 'foo' , 'in' , 'spam' )
1527
1528
if os .name == 'nt' :
1528
1529
# In Windows, if linkY points to dirB, 'dirA\linkY\..'
1529
1530
# resolves to 'dirA' without resolving linkY first.
1530
- self ._check_resolve_relative (p , P (BASE , 'dirA' , 'foo' ), False )
1531
+ self ._check_resolve_relative (p , P (BASE , 'dirA' , 'foo' , 'in' ,
1532
+ 'spam' ), False )
1531
1533
else :
1532
1534
# In Posix, if linkY points to dirB, 'dirA/linkY/..'
1533
1535
# resolves to 'dirB/..' first before resolving to parent of dirB.
1534
- self ._check_resolve_relative (p , P (BASE , 'foo' ), False )
1536
+ self ._check_resolve_relative (p , P (BASE , 'foo' , 'in' , 'spam' ), False )
1535
1537
# Now create absolute symlinks
1536
1538
d = tempfile .mkdtemp (suffix = '-dirD' )
1537
1539
self .addCleanup (support .rmtree , d )
@@ -1541,16 +1543,17 @@ def test_resolve_common(self):
1541
1543
self ._check_resolve_absolute (p , P (BASE , 'dirB' , 'fileB' ))
1542
1544
# Non-strict
1543
1545
p = P (BASE , 'dirA' , 'linkX' , 'linkY' , 'foo' , 'in' , 'spam' )
1544
- self ._check_resolve_relative (p , P (BASE , 'dirB' , 'foo' ), False )
1546
+ self ._check_resolve_relative (p , P (BASE , 'dirB' , 'foo' , 'in' , 'spam' ),
1547
+ False )
1545
1548
p = P (BASE , 'dirA' , 'linkX' , 'linkY' , '..' , 'foo' , 'in' , 'spam' )
1546
1549
if os .name == 'nt' :
1547
1550
# In Windows, if linkY points to dirB, 'dirA\linkY\..'
1548
1551
# resolves to 'dirA' without resolving linkY first.
1549
- self ._check_resolve_relative (p , P (d , 'foo' ), False )
1552
+ self ._check_resolve_relative (p , P (d , 'foo' , 'in' , 'spam' ), False )
1550
1553
else :
1551
1554
# In Posix, if linkY points to dirB, 'dirA/linkY/..'
1552
1555
# resolves to 'dirB/..' first before resolving to parent of dirB.
1553
- self ._check_resolve_relative (p , P (BASE , 'foo' ), False )
1556
+ self ._check_resolve_relative (p , P (BASE , 'foo' , 'in' , 'spam' ), False )
1554
1557
1555
1558
@with_symlinks
1556
1559
def test_resolve_dot (self ):
@@ -1564,7 +1567,7 @@ def test_resolve_dot(self):
1564
1567
r = q / '3' / '4'
1565
1568
self .assertRaises (FileNotFoundError , r .resolve , strict = True )
1566
1569
# Non-strict
1567
- self .assertEqual (r .resolve (strict = False ), p / '3' )
1570
+ self .assertEqual (r .resolve (strict = False ), p / '3' / '4' )
1568
1571
1569
1572
def test_with (self ):
1570
1573
p = self .cls (BASE )
0 commit comments