(self)
| 350 | self.assertRaises(ValueError, P('a/b').with_stem, 'c/d') |
| 351 | |
| 352 | def test_with_suffix(self): |
| 353 | P = self.cls |
| 354 | self.assertEqual(P('a/b').with_suffix('.gz'), P('a/b.gz')) |
| 355 | self.assertEqual(P('/a/b').with_suffix('.gz'), P('/a/b.gz')) |
| 356 | self.assertEqual(P('a/b.py').with_suffix('.gz'), P('a/b.gz')) |
| 357 | self.assertEqual(P('/a/b.py').with_suffix('.gz'), P('/a/b.gz')) |
| 358 | # Stripping suffix. |
| 359 | self.assertEqual(P('a/b.py').with_suffix(''), P('a/b')) |
| 360 | self.assertEqual(P('/a/b').with_suffix(''), P('/a/b')) |
| 361 | # Single dot |
| 362 | self.assertEqual(P('a/b').with_suffix('.'), P('a/b.')) |
| 363 | self.assertEqual(P('/a/b').with_suffix('.'), P('/a/b.')) |
| 364 | self.assertEqual(P('a/b.py').with_suffix('.'), P('a/b.')) |
| 365 | self.assertEqual(P('/a/b.py').with_suffix('.'), P('/a/b.')) |
| 366 | # Path doesn't have a "filename" component. |
| 367 | self.assertRaises(ValueError, P('').with_suffix, '.gz') |
| 368 | self.assertRaises(ValueError, P('/').with_suffix, '.gz') |
| 369 | # Invalid suffix. |
| 370 | self.assertRaises(ValueError, P('a/b').with_suffix, 'gz') |
| 371 | self.assertRaises(ValueError, P('a/b').with_suffix, '/') |
| 372 | self.assertRaises(ValueError, P('a/b').with_suffix, '/.gz') |
| 373 | self.assertRaises(ValueError, P('a/b').with_suffix, 'c/d') |
| 374 | self.assertRaises(ValueError, P('a/b').with_suffix, '.c/.d') |
| 375 | self.assertRaises(ValueError, P('a/b').with_suffix, './.d') |
| 376 | self.assertRaises(ValueError, P('a/b').with_suffix, '.d/.') |
| 377 | self.assertRaises(TypeError, P('a/b').with_suffix, None) |
| 378 | |
| 379 | def test_relative_to(self): |
| 380 | P = self.cls |
nothing calls this directly
no test coverage detected