diff options
Diffstat (limited to 'lib/sqlalchemy/testing')
| -rw-r--r-- | lib/sqlalchemy/testing/engines.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/testing/profiling.py | 14 | ||||
| -rw-r--r-- | lib/sqlalchemy/testing/requirements.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/testing/suite/test_insert.py | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/testing/util.py | 22 |
5 files changed, 13 insertions, 31 deletions
diff --git a/lib/sqlalchemy/testing/engines.py b/lib/sqlalchemy/testing/engines.py index 4aa5560bf..ff4f89606 100644 --- a/lib/sqlalchemy/testing/engines.py +++ b/lib/sqlalchemy/testing/engines.py @@ -58,7 +58,7 @@ class ConnectionKiller(object): # this can cause a deadlock with pg8000 - pg8000 acquires # prepared statement lock inside of rollback() - if async gc # is collecting in finalize_fairy, deadlock. - # not sure if this should be if pypy/jython only. + # not sure if this should be for non-cpython only. # note that firebird/fdb definitely needs this though for conn, rec in list(self.conns): if rec.connection is None: diff --git a/lib/sqlalchemy/testing/profiling.py b/lib/sqlalchemy/testing/profiling.py index 14a6fc4ac..cc6557018 100644 --- a/lib/sqlalchemy/testing/profiling.py +++ b/lib/sqlalchemy/testing/profiling.py @@ -15,13 +15,13 @@ in a more fine-grained way than nose's profiling plugin. import collections import contextlib import os +import platform import pstats import sys from . import config from .util import gc_collect -from ..util import jython -from ..util import pypy +from ..util import cpython from ..util import win32 @@ -91,12 +91,12 @@ class ProfileStatsFile(object): # keep it at 2.7, 3.1, 3.2, etc. for now. py_version = ".".join([str(v) for v in sys.version_info[0:2]]) - platform_tokens = [py_version] + if not cpython: + platform_tokens = [platform.python_implementation(), py_version] + else: + platform_tokens = [py_version] platform_tokens.append(dbapi_key) - if jython: - platform_tokens.append("jython") - if pypy: - platform_tokens.append("pypy") + if win32: platform_tokens.append("win") platform_tokens.append( diff --git a/lib/sqlalchemy/testing/requirements.py b/lib/sqlalchemy/testing/requirements.py index 4088c0cb1..b3375f6d5 100644 --- a/lib/sqlalchemy/testing/requirements.py +++ b/lib/sqlalchemy/testing/requirements.py @@ -1034,7 +1034,7 @@ class SuiteRequirements(Requirements): from sqlalchemy.util import pickle return exclusions.only_if( - lambda: not util.pypy + lambda: util.cpython and pickle.__name__ == "cPickle" or sys.version_info >= (3, 2), "Needs cPickle+cPython or newer Python 3 pickle", diff --git a/lib/sqlalchemy/testing/suite/test_insert.py b/lib/sqlalchemy/testing/suite/test_insert.py index fc535aa23..2cc8761b8 100644 --- a/lib/sqlalchemy/testing/suite/test_insert.py +++ b/lib/sqlalchemy/testing/suite/test_insert.py @@ -56,10 +56,6 @@ class LastrowidTest(fixtures.TablesTest): pk = config.db.scalar(select([self.tables.autoinc_pk.c.id])) eq_(r.inserted_primary_key, [pk]) - # failed on pypy1.9 but seems to be OK on pypy 2.1 - # @exclusions.fails_if(lambda: util.pypy, - # "lastrowid not maintained after " - # "connection close") @requirements.dbapi_lastrowid def test_native_lastrowid_autoinc(self): r = config.db.execute( diff --git a/lib/sqlalchemy/testing/util.py b/lib/sqlalchemy/testing/util.py index de20bb794..c52dc4a19 100644 --- a/lib/sqlalchemy/testing/util.py +++ b/lib/sqlalchemy/testing/util.py @@ -9,36 +9,22 @@ import decimal import gc import random import sys -import time import types from . import mock from ..util import decorator from ..util import defaultdict +from ..util import has_refcount_gc from ..util import inspect_getfullargspec -from ..util import jython from ..util import py2k -from ..util import pypy -if jython: +if not has_refcount_gc: - def jython_gc_collect(*args): - """aggressive gc.collect for tests.""" - gc.collect() - time.sleep(0.1) - gc.collect() - gc.collect() - return 0 - - # "lazy" gc, for VM's that don't GC on refcount == 0 - gc_collect = lazy_gc = jython_gc_collect -elif pypy: - - def pypy_gc_collect(*args): + def non_refcount_gc_collect(*args): gc.collect() gc.collect() - gc_collect = lazy_gc = pypy_gc_collect + gc_collect = lazy_gc = non_refcount_gc_collect else: # assume CPython - straight gc.collect, lazy_gc() is a pass gc_collect = gc.collect |
