def test_visitors(value, visit_name, visit_args): """Checks that for each value type, the correct visitor is called.""" visitor = _ValueVisitorArgs() result = value.apply(visitor) name = result[0] args = result[1:] assert visit_name == name assert visit_args == args
def test_visitors(value, visit_name, visit_args): """Checks that for each value type, the correct visitor is called.""" class MockVisitor(ValueVisitor): pass visitor = MockVisitor() def visit(*args): assert args == visit_args return 'hello' setattr(visitor, visit_name, visit) assert 'hello' == value.apply(visitor)