2 from pytest import raises
3 from sqlconvert.print_tokens import tlist2str
4 from sqlconvert.process_mysql import requote_names
5 from sqlconvert.process_tokens import StatementGrouper
8 class TestStGrouper(object):
9 def test_incomplete(self):
10 grouper = StatementGrouper()
11 grouper.process_line("select * from `T`")
12 assert not grouper.statements
13 assert len(grouper.statements) == 0
14 raises(ValueError, grouper.close)
16 def test_statements(self):
17 grouper = StatementGrouper()
18 grouper.process_line("select * from `T`;")
19 assert grouper.statements
20 assert len(grouper.statements) == 1
21 for statement in grouper.get_statements():
22 requote_names(statement)
23 query = tlist2str(statement)
24 assert query == 'SELECT * FROM "T";'
25 assert len(grouper.statements) == 0
26 assert grouper.close() is None