summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_tools/test_pdeps.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_tools/test_pdeps.py')
-rw-r--r--Lib/test/test_tools/test_pdeps.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/Lib/test/test_tools/test_pdeps.py b/Lib/test/test_tools/test_pdeps.py
new file mode 100644
index 0000000..091fa6a
--- /dev/null
+++ b/Lib/test/test_tools/test_pdeps.py
@@ -0,0 +1,34 @@
+"""Tests for the pdeps script in the Tools directory."""
+
+import os
+import sys
+import unittest
+import tempfile
+from test import support
+
+from test.test_tools import scriptsdir, skip_if_missing, import_tool
+
+skip_if_missing()
+
+
+class PdepsTests(unittest.TestCase):
+
+ @classmethod
+ def setUpClass(self):
+ self.pdeps = import_tool('pdeps')
+
+ def test_process_errors(self):
+ # Issue #14492: m_import.match(line) can be None.
+ with tempfile.TemporaryDirectory() as tmpdir:
+ fn = os.path.join(tmpdir, 'foo')
+ with open(fn, 'w') as stream:
+ stream.write("#!/this/will/fail")
+ self.pdeps.process(fn, {})
+
+ def test_inverse_attribute_error(self):
+ # Issue #14492: this used to fail with an AttributeError.
+ self.pdeps.inverse({'a': []})
+
+
+if __name__ == '__main__':
+ unittest.main()