diff options
author | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2017-01-01 08:37:41 +0100 |
---|---|---|
committer | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2017-01-01 08:39:02 +0100 |
commit | cf40bff2e2eef6f9224e46a20f34b7dbd301763a (patch) | |
tree | 3500d095f835a96ede7d3289d8b4f054edd63d06 /tests/test_sql.py | |
parent | 4a55b8018aab468d80dd926f46ee4c131e64654b (diff) | |
download | psycopg2-cf40bff2e2eef6f9224e46a20f34b7dbd301763a.tar.gz |
Dropped sql.compose
Use a SQL % operator instead.
Diffstat (limited to 'tests/test_sql.py')
-rwxr-xr-x | tests/test_sql.py | 41 |
1 files changed, 20 insertions, 21 deletions
diff --git a/tests/test_sql.py b/tests/test_sql.py index 7fe201a..5482ccb 100755 --- a/tests/test_sql.py +++ b/tests/test_sql.py @@ -30,61 +30,60 @@ from psycopg2 import sql class ComposeTests(ConnectingTestCase): def test_pos(self): - s = sql.compose("select %s from %s", - (sql.Identifier('field'), sql.Identifier('table'))) + s = sql.SQL("select %s from %s") \ + % (sql.Identifier('field'), sql.Identifier('table')) s1 = s.as_string(self.conn) self.assert_(isinstance(s1, str)) self.assertEqual(s1, 'select "field" from "table"') def test_dict(self): - s = sql.compose("select %(f)s from %(t)s", - {'f': sql.Identifier('field'), 't': sql.Identifier('table')}) + s = sql.SQL("select %(f)s from %(t)s") \ + % {'f': sql.Identifier('field'), 't': sql.Identifier('table')} s1 = s.as_string(self.conn) self.assert_(isinstance(s1, str)) self.assertEqual(s1, 'select "field" from "table"') def test_unicode(self): - s = sql.compose(u"select %s from %s", - (sql.Identifier(u'field'), sql.Identifier('table'))) + s = sql.SQL(u"select %s from %s") \ + % (sql.Identifier(u'field'), sql.Identifier('table')) s1 = s.as_string(self.conn) self.assert_(isinstance(s1, unicode)) self.assertEqual(s1, u'select "field" from "table"') def test_compose_literal(self): - s = sql.compose("select %s;", [sql.Literal(dt.date(2016, 12, 31))]) + s = sql.SQL("select %s;") % [sql.Literal(dt.date(2016, 12, 31))] s1 = s.as_string(self.conn) self.assertEqual(s1, "select '2016-12-31'::date;") def test_compose_empty(self): - s = sql.compose("select foo;") + s = sql.SQL("select foo;") % () s1 = s.as_string(self.conn) self.assertEqual(s1, "select foo;") def test_percent_escape(self): - s = sql.compose("42 %% %s", [sql.Literal(7)]) + s = sql.SQL("42 %% %s") % [sql.Literal(7)] s1 = s.as_string(self.conn) self.assertEqual(s1, "42 % 7") - s = sql.compose("42 %% 7") + s = sql.SQL("42 %% 7") % [] s1 = s.as_string(self.conn) self.assertEqual(s1, "42 % 7") def test_compose_badnargs(self): - self.assertRaises(ValueError, sql.compose, "select foo;", [10]) - self.assertRaises(ValueError, sql.compose, "select %s;") - self.assertRaises(ValueError, sql.compose, "select %s;", []) - self.assertRaises(ValueError, sql.compose, "select %s;", [10, 20]) + self.assertRaises(ValueError, sql.SQL("select foo;").__mod__, [10]) + self.assertRaises(ValueError, sql.SQL("select %s;").__mod__, []) + self.assertRaises(ValueError, sql.SQL("select %s;").__mod__, [10, 20]) def test_compose_bad_args_type(self): - self.assertRaises(TypeError, sql.compose, "select %s;", {'a': 10}) - self.assertRaises(TypeError, sql.compose, "select %(x)s;", [10]) + self.assertRaises(TypeError, sql.SQL("select %s;").__mod__, {'a': 10}) + self.assertRaises(TypeError, sql.SQL("select %(x)s;").__mod__, [10]) def test_must_be_adaptable(self): class Foo(object): pass self.assertRaises(TypeError, - sql.compose, "select %s;", [Foo()]) + sql.SQL("select %s;").__mod__, [Foo()]) def test_execute(self): cur = self.conn.cursor() @@ -94,11 +93,11 @@ class ComposeTests(ConnectingTestCase): foo text, bar text, "ba'z" text) """) cur.execute( - sql.compose("insert into %s (id, %s) values (%%s, %s)", [ + sql.SQL("insert into %s (id, %s) values (%%s, %s)") % [ sql.Identifier('test_compose'), sql.SQL(', ').join(map(sql.Identifier, ['foo', 'bar', "ba'z"])), (sql.PH() * 3).join(', '), - ]), + ], (10, 'a', 'b', 'c')) cur.execute("select * from test_compose") @@ -112,11 +111,11 @@ class ComposeTests(ConnectingTestCase): foo text, bar text, "ba'z" text) """) cur.executemany( - sql.compose("insert into %s (id, %s) values (%%s, %s)", [ + sql.SQL("insert into %s (id, %s) values (%%s, %s)") % [ sql.Identifier('test_compose'), sql.SQL(', ').join(map(sql.Identifier, ['foo', 'bar', "ba'z"])), (sql.PH() * 3).join(', '), - ]), + ], [(10, 'a', 'b', 'c'), (20, 'd', 'e', 'f')]) cur.execute("select * from test_compose") |