summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJon Dufresne <jon.dufresne@gmail.com>2017-12-03 18:47:19 -0800
committerJon Dufresne <jon.dufresne@gmail.com>2017-12-10 10:55:58 -0800
commit389f6c08d9536060184bfd5c8ea2491a4a91c2fb (patch)
treef85e494ab9c681494616ec6bb9b9d01852c62f90 /tests
parentc86e682153f4cb8d99e490b2af964f3f11e3489f (diff)
downloadpsycopg2-389f6c08d9536060184bfd5c8ea2491a4a91c2fb.tar.gz
Avoid installing tests to site-packages
For library end users, there is no need to install tests alongside the package itself. This keeps the tests available for development without adding extra packages to user's site-packages directory. Reduces the size of the installed package. Avoids accidental execution of test code by an installed package.
Diffstat (limited to 'tests')
-rwxr-xr-xtests/test_async.py5
-rwxr-xr-xtests/test_copy.py5
-rwxr-xr-xtests/test_cursor.py2
-rwxr-xr-xtests/test_errcodes.py4
-rwxr-xr-xtests/test_extras_dictcursor.py2
-rwxr-xr-xtests/test_module.py3
-rwxr-xr-xtests/test_quote.py2
-rwxr-xr-xtests/test_sql.py4
-rwxr-xr-xtests/test_types_basic.py6
-rwxr-xr-xtests/test_types_extras.py16
-rw-r--r--tests/testutils.py17
11 files changed, 40 insertions, 26 deletions
diff --git a/tests/test_async.py b/tests/test_async.py
index 6469a25..ce5e9b1 100755
--- a/tests/test_async.py
+++ b/tests/test_async.py
@@ -30,9 +30,8 @@ import psycopg2
from psycopg2 import extensions as ext
import time
-import StringIO
-from .testutils import ConnectingTestCase
+from .testutils import ConnectingTestCase, StringIO
class PollableStub(object):
@@ -241,7 +240,7 @@ class AsyncTests(ConnectingTestCase):
# copy should fail
self.assertRaises(psycopg2.ProgrammingError,
cur.copy_from,
- StringIO.StringIO("1\n3\n5\n\\.\n"), "table1")
+ StringIO("1\n3\n5\n\\.\n"), "table1")
def test_lobject_while_async(self):
# large objects should be prohibited
diff --git a/tests/test_copy.py b/tests/test_copy.py
index d8eba08..b16e1dd 100755
--- a/tests/test_copy.py
+++ b/tests/test_copy.py
@@ -26,9 +26,8 @@ import sys
import string
import unittest
from .testutils import (ConnectingTestCase, decorate_all_tests,
- skip_before_postgres, slow)
-from cStringIO import StringIO
-from itertools import cycle, izip
+ skip_before_postgres, slow, StringIO)
+from itertools import cycle
from subprocess import Popen, PIPE
import psycopg2
diff --git a/tests/test_cursor.py b/tests/test_cursor.py
index 840819a..ec76918 100755
--- a/tests/test_cursor.py
+++ b/tests/test_cursor.py
@@ -29,7 +29,7 @@ import psycopg2.extensions
import unittest
from .testutils import (ConnectingTestCase, skip_before_postgres,
skip_if_no_getrefcount, slow, skip_if_no_superuser,
- skip_if_windows)
+ skip_if_windows, unicode)
import psycopg2.extras
diff --git a/tests/test_errcodes.py b/tests/test_errcodes.py
index 6775d83..5ce2cef 100755
--- a/tests/test_errcodes.py
+++ b/tests/test_errcodes.py
@@ -23,7 +23,7 @@
# License for more details.
import unittest
-from .testutils import ConnectingTestCase, slow
+from .testutils import ConnectingTestCase, slow, reload
try:
reload
@@ -52,7 +52,7 @@ class ErrocodeTests(ConnectingTestCase):
except Exception as e:
errs.append(e)
- for __ in xrange(MAX_CYCLES):
+ for __ in range(MAX_CYCLES):
reload(errorcodes)
(t1, t2) = (Thread(target=f), Thread(target=f))
(t1.start(), t2.start())
diff --git a/tests/test_extras_dictcursor.py b/tests/test_extras_dictcursor.py
index 5a726ec..75c2277 100755
--- a/tests/test_extras_dictcursor.py
+++ b/tests/test_extras_dictcursor.py
@@ -390,7 +390,7 @@ class NamedTupleCursorTest(ConnectingTestCase):
recs.extend(curs.fetchmany(5))
recs.append(curs.fetchone())
recs.extend(curs.fetchall())
- self.assertEqual(range(10), [t.i for t in recs])
+ self.assertEqual(list(range(10)), [t.i for t in recs])
def test_named_fetchone(self):
curs = self.conn.cursor('tmp')
diff --git a/tests/test_module.py b/tests/test_module.py
index e1c065d..ddd6b02 100755
--- a/tests/test_module.py
+++ b/tests/test_module.py
@@ -28,7 +28,7 @@ from subprocess import Popen
import unittest
from .testutils import (skip_before_postgres,
- ConnectingTestCase, skip_copy_if_green, slow)
+ ConnectingTestCase, skip_copy_if_green, slow, StringIO)
import psycopg2
@@ -217,7 +217,6 @@ class ExceptionsTestCase(ConnectingTestCase):
@skip_copy_if_green
def test_diagnostics_copy(self):
- from StringIO import StringIO
f = StringIO()
cur = self.conn.cursor()
try:
diff --git a/tests/test_quote.py b/tests/test_quote.py
index a79bb56..fad6cee 100755
--- a/tests/test_quote.py
+++ b/tests/test_quote.py
@@ -25,7 +25,7 @@
import sys
from . import testutils
import unittest
-from .testutils import ConnectingTestCase
+from .testutils import ConnectingTestCase, unichr
import psycopg2
import psycopg2.extensions
diff --git a/tests/test_sql.py b/tests/test_sql.py
index 6cb978f..1c20997 100755
--- a/tests/test_sql.py
+++ b/tests/test_sql.py
@@ -23,10 +23,10 @@
# License for more details.
import datetime as dt
-from cStringIO import StringIO
import unittest
from .testutils import (ConnectingTestCase,
- skip_before_postgres, skip_before_python, skip_copy_if_green)
+ skip_before_postgres, skip_before_python, skip_copy_if_green,
+ unicode, StringIO)
import psycopg2
from psycopg2 import sql
diff --git a/tests/test_types_basic.py b/tests/test_types_basic.py
index 6e34a47..a93265d 100755
--- a/tests/test_types_basic.py
+++ b/tests/test_types_basic.py
@@ -28,7 +28,7 @@ import sys
from functools import wraps
from . import testutils
import unittest
-from .testutils import ConnectingTestCase, decorate_all_tests
+from .testutils import ConnectingTestCase, decorate_all_tests, long
import psycopg2
@@ -54,8 +54,8 @@ class TypesBasicTests(ConnectingTestCase):
def testNumber(self):
s = self.execute("SELECT %s AS foo", (1971,))
self.failUnless(s == 1971, "wrong integer quoting: " + str(s))
- s = self.execute("SELECT %s AS foo", (1971L,))
- self.failUnless(s == 1971L, "wrong integer quoting: " + str(s))
+ s = self.execute("SELECT %s AS foo", (long(1971),))
+ self.failUnless(s == long(1971), "wrong integer quoting: " + str(s))
def testBoolean(self):
x = self.execute("SELECT %s as foo", (False,))
diff --git a/tests/test_types_extras.py b/tests/test_types_extras.py
index abe0610..5cb1353 100755
--- a/tests/test_types_extras.py
+++ b/tests/test_types_extras.py
@@ -181,7 +181,7 @@ class HstoreTestCase(ConnectingTestCase):
kk = m.group(1).split(b", ")
vv = m.group(2).split(b", ")
- ii = zip(kk, vv)
+ ii = list(zip(kk, vv))
ii.sort()
self.assertEqual(len(ii), len(o))
@@ -306,7 +306,7 @@ class HstoreTestCase(ConnectingTestCase):
ok({})
ok({'a': 'b', 'c': None})
- ab = map(chr, range(32, 128))
+ ab = list(map(chr, range(32, 128)))
ok(dict(zip(ab, ab)))
ok({''.join(ab): ''.join(ab)})
@@ -314,7 +314,7 @@ class HstoreTestCase(ConnectingTestCase):
if sys.version_info[0] < 3:
ab = map(chr, range(32, 127) + range(160, 255))
else:
- ab = bytes(range(32, 127) + range(160, 255)).decode('latin1')
+ ab = bytes(list(range(32, 127)) + list(range(160, 255))).decode('latin1')
ok({''.join(ab): ''.join(ab)})
ok(dict(zip(ab, ab)))
@@ -371,7 +371,7 @@ class HstoreTestCase(ConnectingTestCase):
ds = [{}, {'a': 'b', 'c': None}]
- ab = map(chr, range(32, 128))
+ ab = list(map(chr, range(32, 128)))
ds.append(dict(zip(ab, ab)))
ds.append({''.join(ab): ''.join(ab)})
@@ -379,7 +379,7 @@ class HstoreTestCase(ConnectingTestCase):
if sys.version_info[0] < 3:
ab = map(chr, range(32, 127) + range(160, 255))
else:
- ab = bytes(range(32, 127) + range(160, 255)).decode('latin1')
+ ab = bytes(list(range(32, 127)) + list(range(160, 255))).decode('latin1')
ds.append({''.join(ab): ''.join(ab)})
ds.append(dict(zip(ab, ab)))
@@ -514,7 +514,7 @@ class AdaptTypeTestCase(ConnectingTestCase):
'@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,"\\\\",],'
'^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},'
'~,\x7f)',
- map(chr, range(1, 128)))
+ list(map(chr, range(1, 128))))
ok('(,"\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f'
'\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !'
'""#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]'
@@ -1641,8 +1641,8 @@ class RangeCasterTestCase(ConnectingTestCase):
bounds = ['[)', '(]', '()', '[]']
ranges = [TextRange(low, up, bounds[i % 4])
for i, (low, up) in enumerate(zip(
- [None] + map(chr, range(1, 128)),
- map(chr, range(1, 128)) + [None],
+ [None] + list(map(chr, range(1, 128))),
+ list(map(chr, range(1, 128))) + [None],
))]
ranges.append(TextRange())
ranges.append(TextRange(empty=True))
diff --git a/tests/testutils.py b/tests/testutils.py
index e1744c8..d70e091 100644
--- a/tests/testutils.py
+++ b/tests/testutils.py
@@ -31,6 +31,23 @@ import unittest
from functools import wraps
from .testconfig import dsn, repl_dsn
+# Python 2/3 compatibility
+
+if sys.version_info[0] == 2:
+ # Python 2
+ from StringIO import StringIO
+ long = long
+ reload = reload
+ unichr = unichr
+ unicode = unicode
+else:
+ # Python 3
+ from io import StringIO
+ from importlib import reload
+ long = int
+ unichr = chr
+ unicode = str
+
# Silence warnings caused by the stubbornness of the Python unittest
# maintainers