]> git.madduck.net Git - etc/vim.git/commitdiff

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Check for broken symlinks before checking file data (#202)
authorMiguel Gaiowski <miggaiowskI@gmail.com>
Tue, 15 May 2018 05:13:48 +0000 (22:13 -0700)
committerŁukasz Langa <lukasz@langa.pl>
Tue, 15 May 2018 05:13:48 +0000 (01:13 -0400)
black.py
tests/test_black.py

index 913fe8dfefaf496e57373e94d96b272caebf486d..a1131693cb9b2b9ab17b1cd53e283c5169b7b3e1 100644 (file)
--- a/black.py
+++ b/black.py
@@ -2494,7 +2494,7 @@ def gen_python_files_in_dir(path: Path) -> Iterator[Path]:
 
             yield from gen_python_files_in_dir(child)
 
-        elif child.suffix in PYTHON_EXTENSIONS:
+        elif child.is_file() and child.suffix in PYTHON_EXTENSIONS:
             yield child
 
 
index cf209455e4aceb38b0429a071491287f82a7b342..bc133cab4aca84f69de1a6eab504134cd7ed1065 100644 (file)
@@ -695,6 +695,13 @@ class BlackTestCase(unittest.TestCase):
             result = CliRunner().invoke(black.main, [])
             self.assertEqual(result.exit_code, 0)
 
+    def test_broken_symlink(self) -> None:
+        with cache_dir() as workspace:
+            symlink = workspace / "broken_link.py"
+            symlink.symlink_to("nonexistent.py")
+            result = CliRunner().invoke(black.main, [str(workspace.resolve())])
+            self.assertEqual(result.exit_code, 0)
+
     def test_read_cache_line_lengths(self) -> None:
         with cache_dir() as workspace:
             path = (workspace / "file.py").resolve()