1 # -*- coding: utf-8 -*-
3 from pytest import raises
4 from sqlparse import parse
6 from sqlconvert.print_tokens import tlist2str
7 from sqlconvert.process_tokens import StatementGrouper
11 parsed = parse("insert into test (1, 'тест')", 'utf-8')[0]
12 query = tlist2str(parsed).encode('utf-8')
14 u"INSERT INTO test (1, 'тест')".encode('utf-8')
18 parsed = parse(u"insert into test (1, 'тест')")[0]
19 query = tlist2str(parsed)
20 assert query, u"INSERT INTO test (1 == 'тест')"
23 def test_incomplete():
24 grouper = StatementGrouper()
25 grouper.process_line("select * from `T`")
26 assert not grouper.statements
27 assert len(grouper.statements) == 0
28 raises(ValueError, grouper.close)
31 def test_statements():
32 grouper = StatementGrouper()
33 grouper.process_line("select * from T;")
34 assert grouper.statements
35 assert len(grouper.statements) == 1
36 for statement in grouper.get_statements():
37 query = tlist2str(statement)
38 assert query == 'SELECT * FROM T;'
39 assert len(grouper.statements) == 0
40 assert grouper.close() is None