summaryrefslogtreecommitdiffstats
path: root/lib/greenlet/tests/test_stack_saved.py
blob: 6c7353b898ba8815ea3079f2d9cecbf992fa1e33 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import greenlet
import unittest


class Test(unittest.TestCase):

    def test_stack_saved(self):
        main = greenlet.getcurrent()
        self.assertEqual(main._stack_saved, 0)

        def func():
            main.switch(main._stack_saved)

        g = greenlet.greenlet(func)
        x = g.switch()
        assert x > 0, x
        assert g._stack_saved > 0, g._stack_saved
        g.switch()
        assert g._stack_saved == 0, g._stack_saved