Also, just use `pd.eval` here. There's no need to construct a `DataFrame`. Just something like 

```python
def check_many_exprs(parser, engine):
    a = 1
    expr = ' * '.join('a' * 33)
    expected = 1
    res = pd.eval(expr, parser=parser, engine=engine)
    tm.assert_equal(res, expected)

def test_many_exprs():
    for parser, engine in PARSERS_ENGINES:
        yield check_many_exprs, parser, engine
```

We generally frown upon `yield` style nose tests but they are useful to avoid repetition of test functions only differing in their arguments.