|
13 | 13 | import os |
14 | 14 | import dis |
15 | 15 | from os.path import normcase |
16 | | -import _pickle |
17 | 16 | import pickle |
18 | 17 | import shutil |
19 | 18 | import stat |
|
29 | 28 | import warnings |
30 | 29 | import weakref |
31 | 30 |
|
| 31 | +try: |
| 32 | + import _pickle |
| 33 | + MISSING_C_PICKLE = False |
| 34 | +except ImportError: |
| 35 | + MISSING_C_PICKLE = True |
| 36 | + |
32 | 37 |
|
33 | 38 | try: |
34 | 39 | from concurrent.futures import ThreadPoolExecutor |
@@ -1410,6 +1415,7 @@ def test(): pass |
1410 | 1415 |
|
1411 | 1416 | @unittest.skipIf(MISSING_C_DOCSTRINGS, |
1412 | 1417 | "Signature information for builtins requires docstrings") |
| 1418 | + @unittest.skipIf(MISSING_C_PICKLE, "requires _pickle") |
1413 | 1419 | def test_getfullargspec_builtin_methods(self): |
1414 | 1420 | self.assertFullArgSpecEquals(_pickle.Pickler.dump, ['self', 'obj']) |
1415 | 1421 |
|
@@ -4635,6 +4641,7 @@ class D(C): pass |
4635 | 4641 |
|
4636 | 4642 | @unittest.skipIf(MISSING_C_DOCSTRINGS, |
4637 | 4643 | "Signature information for builtins requires docstrings") |
| 4644 | + @unittest.skipIf(MISSING_C_PICKLE, "requires _pickle") |
4638 | 4645 | def test_signature_on_builtin_class(self): |
4639 | 4646 | expected = ('(file, protocol=None, fix_imports=True, ' |
4640 | 4647 | 'buffer_callback=None)') |
@@ -5176,6 +5183,7 @@ class foo: pass |
5176 | 5183 |
|
5177 | 5184 | @unittest.skipIf(MISSING_C_DOCSTRINGS, |
5178 | 5185 | "Signature information for builtins requires docstrings") |
| 5186 | + @unittest.skipIf(MISSING_C_PICKLE, "requires _pickle") |
5179 | 5187 | def test_signature_from_callable_builtin_obj(self): |
5180 | 5188 | class MySignature(inspect.Signature): pass |
5181 | 5189 | sig = MySignature.from_callable(_pickle.Pickler) |
|
0 commit comments