X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=tests%2Ftest_tokens.py;h=8201e74523fb588b6c9a0c41e781ff2cd742697d;hb=d6d2d76d2b29e8384169c5b86e19e494fab1a464;hp=2c930f77e07593eafb835dcf4264d3cce3e14520;hpb=ad12dfd9c03a4f6bbd03d22238b6399ab09962ed;p=sqlconvert.git diff --git a/tests/test_tokens.py b/tests/test_tokens.py old mode 100755 new mode 100644 index 2c930f7..8201e74 --- a/tests/test_tokens.py +++ b/tests/test_tokens.py @@ -1,51 +1,51 @@ -#! /usr/bin/env python # -*- coding: utf-8 -*- -import unittest from sqlparse import parse from sqlconvert.print_tokens import tlist2str -from sqlconvert.process_mysql import remove_directives, requote_names, \ - is_directive_statement, process_statement -from tests import main +from sqlconvert.process_mysql import remove_directive_tokens, \ + is_directive_statement, requote_names, unescape_strings, \ + process_statement -class TestTokens(unittest.TestCase): +class TestTokens(object): def test_encoding(self): parsed = parse("insert into test (1, 'тест')", 'utf-8')[0] query = tlist2str(parsed).encode('utf-8') - self.assertEqual(query, - u"INSERT INTO test (1, 'тест')".encode('utf-8')) + assert query == \ + u"INSERT INTO test (1, 'тест')".encode('utf-8') def test_unicode(self): parsed = parse(u"insert into test (1, 'тест')")[0] query = tlist2str(parsed) - self.assertEqual(query, u"INSERT INTO test (1, 'тест')") - - def test_requote(self): - parsed = parse("select * from `T`")[0] - requote_names(parsed) - query = tlist2str(parsed) - self.assertEqual(query, 'SELECT * FROM "T"') + assert query, u"INSERT INTO test (1 == 'тест')" def test_directive(self): parsed = parse("select /*! test */ * from /* test */ `T`")[0] - remove_directives(parsed) + remove_directive_tokens(parsed) query = tlist2str(parsed) - self.assertEqual(query, 'SELECT * FROM /* test */ `T`') + assert query == u'SELECT * FROM /* test */ `T`' def test_directive_statement(self): parsed = parse("/*! test */ test ;")[0] - self.assertFalse(is_directive_statement(parsed)) + assert not is_directive_statement(parsed) parsed = parse("/*! test */ ;")[0] - self.assertTrue(is_directive_statement(parsed)) + assert is_directive_statement(parsed) + + def test_requote(self): + parsed = parse("select * from `T`")[0] + requote_names(parsed) + query = tlist2str(parsed) + assert query == u'SELECT * FROM "T"' + + def test_string(self): + parsed = parse("insert into test values ('\"test\\\"')")[0] + unescape_strings(parsed) + query = tlist2str(parsed) + assert query == u"INSERT INTO test VALUES ('\"test\"')" def test_process(self): parsed = parse("select /*! test */ * from /* test */ `T`")[0] process_statement(parsed) query = tlist2str(parsed) - self.assertEqual(query, 'SELECT * FROM /* test */ "T"') - - -if __name__ == "__main__": - main() + assert query == u'SELECT * FROM /* test */ "T"'