(self)
| 820 | @unittest.skipIf(os.chmod not in os.supports_follow_symlinks, "Can't set symlink permissions") |
| 821 | @unittest.skipIf(sys.platform != "darwin", "only macOS requires read permission to readlink()") |
| 822 | def test_realpath_unreadable_symlink(self): |
| 823 | try: |
| 824 | os.symlink(ABSTFN+"1", ABSTFN) |
| 825 | os.chmod(ABSTFN, 0o000, follow_symlinks=False) |
| 826 | self.assertEqual(realpath(ABSTFN), ABSTFN) |
| 827 | self.assertEqual(realpath(ABSTFN + '/foo'), ABSTFN + '/foo') |
| 828 | self.assertEqual(realpath(ABSTFN + '/../foo'), dirname(ABSTFN) + '/foo') |
| 829 | self.assertEqual(realpath(ABSTFN + '/foo/..'), ABSTFN) |
| 830 | finally: |
| 831 | os.chmod(ABSTFN, 0o755, follow_symlinks=False) |
| 832 | os_helper.unlink(ABSTFN) |
| 833 | |
| 834 | @os_helper.skip_unless_symlink |
| 835 | @skip_if_ABSTFN_contains_backslash |
nothing calls this directly
no test coverage detected