def test_name_is_hidden(): c = argument_stack() c.define_name('a', 'dude1') c.push_stack_frame() c.define_name('a', 'dude2') assert 'dude2' == c.lookup_name('a') c.pop_stack_frame() assert 'dude1' == c.lookup_name('a')
def __init__(self): r''' Initialize the visitor. ''' # Tracks the output of the code. self._gc = generated_code() self._arg_stack = argument_stack() self._result = None
def __init__(self): self._arg_stack = argument_stack()
def test_name_found(): c = argument_stack() c.define_name('a', 'dude') assert 'dude' == c.lookup_name('a')
def test_default_return(): c = argument_stack() assert 'dude' == c.lookup_name('a', default='dude')
def test_with_class(): c = argument_stack() with stack_frame(c): c.define_name('a', 'dude') assert 'dude' == c.lookup_name('a') assert 'a' == c.lookup_name('a')
def test_name_not_found(): c = argument_stack() assert 'a' == c.lookup_name('a')
def test_name_in_level_gone(): c = argument_stack() c.push_stack_frame() c.define_name('a', 'dude') c.pop_stack_frame() assert 'a' == c.lookup_name('a')