summaryrefslogtreecommitdiff
path: root/Lib/test/test_generators.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_generators.py')
-rw-r--r--Lib/test/test_generators.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Lib/test/test_generators.py b/Lib/test/test_generators.py
index 5c455cdd81..604e12d92e 100644
--- a/Lib/test/test_generators.py
+++ b/Lib/test/test_generators.py
@@ -1,4 +1,6 @@
+import copy
import gc
+import pickle
import sys
import unittest
import weakref
@@ -70,6 +72,24 @@ class FinalizationTest(unittest.TestCase):
self.assertEqual(cm.exception.value, 2)
+class GeneratorTest(unittest.TestCase):
+
+ def test_copy(self):
+ def f():
+ yield 1
+ g = f()
+ with self.assertRaises(TypeError):
+ copy.copy(g)
+
+ def test_pickle(self):
+ def f():
+ yield 1
+ g = f()
+ for proto in range(pickle.HIGHEST_PROTOCOL + 1):
+ with self.assertRaises((TypeError, pickle.PicklingError)):
+ pickle.dumps(g, proto)
+
+
class ExceptionTest(unittest.TestCase):
# Tests for the issue #23353: check that the currently handled exception
# is correctly saved/restored in PyEval_EvalFrameEx().