@@ -559,6 +559,23 @@ def test_with_name_common(self):
559559 self .assertRaises (ValueError , P ('a/b' ).with_name , 'c/' )
560560 self .assertRaises (ValueError , P ('a/b' ).with_name , 'c/d' )
561561
562+ def test_with_stem_common (self ):
563+ P = self .cls
564+ self .assertEqual (P ('a/b' ).with_stem ('d' ), P ('a/d' ))
565+ self .assertEqual (P ('/a/b' ).with_stem ('d' ), P ('/a/d' ))
566+ self .assertEqual (P ('a/b.py' ).with_stem ('d' ), P ('a/d.py' ))
567+ self .assertEqual (P ('/a/b.py' ).with_stem ('d' ), P ('/a/d.py' ))
568+ self .assertEqual (P ('/a/b.tar.gz' ).with_stem ('d' ), P ('/a/d.gz' ))
569+ self .assertEqual (P ('a/Dot ending.' ).with_stem ('d' ), P ('a/d' ))
570+ self .assertEqual (P ('/a/Dot ending.' ).with_stem ('d' ), P ('/a/d' ))
571+ self .assertRaises (ValueError , P ('' ).with_stem , 'd' )
572+ self .assertRaises (ValueError , P ('.' ).with_stem , 'd' )
573+ self .assertRaises (ValueError , P ('/' ).with_stem , 'd' )
574+ self .assertRaises (ValueError , P ('a/b' ).with_stem , '' )
575+ self .assertRaises (ValueError , P ('a/b' ).with_stem , '/c' )
576+ self .assertRaises (ValueError , P ('a/b' ).with_stem , 'c/' )
577+ self .assertRaises (ValueError , P ('a/b' ).with_stem , 'c/d' )
578+
562579 def test_with_suffix_common (self ):
563580 P = self .cls
564581 self .assertEqual (P ('a/b' ).with_suffix ('.gz' ), P ('a/b.gz' ))
@@ -1014,6 +1031,20 @@ def test_with_name(self):
10141031 self .assertRaises (ValueError , P ('c:a/b' ).with_name , 'd:/e' )
10151032 self .assertRaises (ValueError , P ('c:a/b' ).with_name , '//My/Share' )
10161033
1034+ def test_with_stem (self ):
1035+ P = self .cls
1036+ self .assertEqual (P ('c:a/b' ).with_stem ('d' ), P ('c:a/d' ))
1037+ self .assertEqual (P ('c:/a/b' ).with_stem ('d' ), P ('c:/a/d' ))
1038+ self .assertEqual (P ('c:a/Dot ending.' ).with_stem ('d' ), P ('c:a/d' ))
1039+ self .assertEqual (P ('c:/a/Dot ending.' ).with_stem ('d' ), P ('c:/a/d' ))
1040+ self .assertRaises (ValueError , P ('c:' ).with_stem , 'd' )
1041+ self .assertRaises (ValueError , P ('c:/' ).with_stem , 'd' )
1042+ self .assertRaises (ValueError , P ('//My/Share' ).with_stem , 'd' )
1043+ self .assertRaises (ValueError , P ('c:a/b' ).with_stem , 'd:' )
1044+ self .assertRaises (ValueError , P ('c:a/b' ).with_stem , 'd:e' )
1045+ self .assertRaises (ValueError , P ('c:a/b' ).with_stem , 'd:/e' )
1046+ self .assertRaises (ValueError , P ('c:a/b' ).with_stem , '//My/Share' )
1047+
10171048 def test_with_suffix (self ):
10181049 P = self .cls
10191050 self .assertEqual (P ('c:a/b' ).with_suffix ('.gz' ), P ('c:a/b.gz' ))
0 commit comments