From: Mike Bayer Date: Thu, 27 Sep 2012 06:37:33 +0000 (-0400) Subject: trying different approaches to test layout. in this one, the testing modules X-Git-Tag: rel_0_8_0b1~123 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=20cdc64588b0f6ae52f8380c11d0ed848005377b;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git trying different approaches to test layout. in this one, the testing modules become an externally usable package but still remains within the main sqlalchemy parent package. in this system, we use kind of an ugly hack to get the noseplugin imported outside of the "sqlalchemy" package, while still making it available within sqlalchemy for usage by third party libraries. --- diff --git a/test/lib/testing.py b/lib/sqlalchemy/testing/__init__.py similarity index 77% rename from test/lib/testing.py rename to lib/sqlalchemy/testing/__init__.py index f244dfecc3..415705e93a 100644 --- a/test/lib/testing.py +++ b/lib/sqlalchemy/testing/__init__.py @@ -2,9 +2,7 @@ from __future__ import absolute_import from .warnings import testing_warn, assert_warnings, resetwarnings -from ..bootstrap import config -from . import assertsql, util as testutil -from sqlalchemy.util import decorator +from . import config from .exclusions import db_spec, _is_excluded, fails_if, skip_if, future,\ fails_on, fails_on_everything_except, skip, only_on, exclude, against,\ @@ -18,8 +16,6 @@ from .util import run_as_contextmanager, rowset, fail, provide_metadata, adict crashes = skip -# various sugar installed by config.py -db = None -requires = None +from .config import db, requirements as requires diff --git a/test/lib/assertions.py b/lib/sqlalchemy/testing/assertions.py similarity index 99% rename from test/lib/assertions.py rename to lib/sqlalchemy/testing/assertions.py index 70284799c1..1e8559c1aa 100644 --- a/test/lib/assertions.py +++ b/lib/sqlalchemy/testing/assertions.py @@ -11,7 +11,7 @@ import re from .warnings import resetwarnings from .exclusions import db_spec, _is_excluded from . import assertsql -from ..bootstrap import config +from . import config import itertools from .util import fail diff --git a/test/lib/assertsql.py b/lib/sqlalchemy/testing/assertsql.py similarity index 100% rename from test/lib/assertsql.py rename to lib/sqlalchemy/testing/assertsql.py diff --git a/lib/sqlalchemy/testing/config.py b/lib/sqlalchemy/testing/config.py new file mode 100644 index 0000000000..2945bd456e --- /dev/null +++ b/lib/sqlalchemy/testing/config.py @@ -0,0 +1,3 @@ +requirements = None +db = None + diff --git a/test/lib/engines.py b/lib/sqlalchemy/testing/engines.py similarity index 98% rename from test/lib/engines.py rename to lib/sqlalchemy/testing/engines.py index 1431d5a860..f7401550ec 100644 --- a/test/lib/engines.py +++ b/lib/sqlalchemy/testing/engines.py @@ -3,7 +3,7 @@ from __future__ import absolute_import import types import weakref from collections import deque -from ..bootstrap import config +from . import config from .util import decorator from sqlalchemy import event, pool import re @@ -60,13 +60,12 @@ class ConnectionKiller(object): self._stop_test_ctx_aggressive() def _stop_test_ctx_minimal(self): - from test.lib import testing self.close_all() self.conns = set() for rec in self.testing_engines.keys(): - if rec is not testing.db: + if rec is not config.db: rec.dispose() def _stop_test_ctx_aggressive(self): @@ -185,7 +184,7 @@ def testing_engine(url=None, options=None): """Produce an engine configured by --options with optional overrides.""" from sqlalchemy import create_engine - from test.lib.assertsql import asserter + from .assertsql import asserter if not options: use_reaper = True @@ -193,7 +192,8 @@ def testing_engine(url=None, options=None): use_reaper = options.pop('use_reaper', True) url = url or config.db_url - options = options or config.db_opts + if options is None: + options = config.db_opts engine = create_engine(url, **options) if isinstance(engine.pool, pool.QueuePool): diff --git a/test/lib/entities.py b/lib/sqlalchemy/testing/entities.py similarity index 100% rename from test/lib/entities.py rename to lib/sqlalchemy/testing/entities.py diff --git a/test/lib/exclusions.py b/lib/sqlalchemy/testing/exclusions.py similarity index 96% rename from test/lib/exclusions.py rename to lib/sqlalchemy/testing/exclusions.py index b3f5e0f738..ba2eebe4f7 100644 --- a/test/lib/exclusions.py +++ b/lib/sqlalchemy/testing/exclusions.py @@ -1,7 +1,7 @@ import operator from nose import SkipTest from sqlalchemy.util import decorator -from ..bootstrap import config +from . import config from sqlalchemy import util @@ -104,7 +104,7 @@ class SpecPredicate(Predicate): if self.op is not None: assert driver is None, "DBAPI version specs not supported yet" - version = _server_version() + version = _server_version(engine) oper = hasattr(self.op, '__call__') and self.op \ or self._ops[self.op] return oper(version, self.spec) @@ -218,15 +218,12 @@ _as_predicate = Predicate.as_predicate def _is_excluded(db, op, spec): return SpecPredicate(db, op, spec)() -def _server_version(bind=None): +def _server_version(engine): """Return a server_version_info tuple.""" - if bind is None: - bind = config.db - # force metadata to be retrieved - conn = bind.connect() - version = getattr(bind.dialect, 'server_version_info', ()) + conn = engine.connect() + version = getattr(engine.dialect, 'server_version_info', ()) conn.close() return version @@ -235,6 +232,9 @@ def db_spec(*dbs): Predicate.as_predicate(db) for db in dbs ) +def open(fn): + return fn + @decorator def future(fn, *args, **kw): return fails_if(LambdaPredicate(fn, *args, **kw), "Future feature") diff --git a/test/lib/fixtures.py b/lib/sqlalchemy/testing/fixtures.py similarity index 99% rename from test/lib/fixtures.py rename to lib/sqlalchemy/testing/fixtures.py index 722b64cfc9..018276d4d7 100644 --- a/test/lib/fixtures.py +++ b/lib/sqlalchemy/testing/fixtures.py @@ -1,4 +1,4 @@ -from ..bootstrap import config +from . import config from . import assertions, schema from .util import adict from .engines import drop_all_tables diff --git a/test/lib/pickleable.py b/lib/sqlalchemy/testing/pickleable.py similarity index 100% rename from test/lib/pickleable.py rename to lib/sqlalchemy/testing/pickleable.py diff --git a/test/bootstrap/__init__.py b/lib/sqlalchemy/testing/plugin/__init__.py similarity index 100% rename from test/bootstrap/__init__.py rename to lib/sqlalchemy/testing/plugin/__init__.py diff --git a/test/bootstrap/config.py b/lib/sqlalchemy/testing/plugin/config.py similarity index 88% rename from test/bootstrap/config.py rename to lib/sqlalchemy/testing/plugin/config.py index b0e92d630d..08b9753dc1 100644 --- a/test/bootstrap/config.py +++ b/lib/sqlalchemy/testing/plugin/config.py @@ -47,7 +47,8 @@ post_configure = [] def _setup_options(opt, file_config): global options - options = opt + from sqlalchemy.testing import config + config.options = options = opt pre_configure.append(_setup_options) def _monkeypatch_cdecimal(options, file_config): @@ -107,14 +108,17 @@ def _engine_pool(options, file_config): post_configure.append(_engine_pool) def _create_testing_engine(options, file_config): - from test.lib import engines, testing + from sqlalchemy.testing import engines, config + from sqlalchemy import testing global db - db = engines.testing_engine(db_url, db_opts) - testing.db = db + config.db = testing.db = db = engines.testing_engine(db_url, db_opts) + config.db_opts = db_opts + config.db_url = db_url + post_configure.append(_create_testing_engine) def _prep_testing_database(options, file_config): - from test.lib import engines + from sqlalchemy.testing import engines from sqlalchemy import schema # also create alt schemas etc. here? @@ -136,7 +140,7 @@ def _prep_testing_database(options, file_config): post_configure.append(_prep_testing_database) def _set_table_options(options, file_config): - from test.lib import schema + from sqlalchemy.testing import schema table_options = schema.table_options for spec in options.tableopts: @@ -151,13 +155,14 @@ def _reverse_topological(options, file_config): if options.reversetop: from sqlalchemy.orm import unitofwork, session, mapper, dependency from sqlalchemy.util import topological - from test.lib.util import RandomSet + from sqlalchemy.testing.util import RandomSet topological.set = unitofwork.set = session.set = mapper.set = \ dependency.set = RandomSet post_configure.append(_reverse_topological) def _requirements(options, file_config): - from ..lib import testing + from sqlalchemy.testing import config + from sqlalchemy import testing requirement_cls = file_config.get('sqla_testing', "requirement_cls") modname, clsname = requirement_cls.split(":") @@ -167,18 +172,15 @@ def _requirements(options, file_config): mod = __import__(modname) for component in modname.split(".")[1:]: mod = getattr(mod, component) - req_cls = getattr(mod, clsname) - global requirements - requirements = req_cls(db, sys.modules[__name__]) - testing.requires = requirements + config.requirements = testing.requires = req_cls(db, config) post_configure.append(_requirements) - def _setup_profiling(options, file_config): - from ..lib import profiling + from sqlalchemy.testing import profiling profiling._profile_stats = profiling.ProfileStatsFile( file_config.get('sqla_testing', 'profile_file')) -post_configure.append(_setup_profiling) \ No newline at end of file +post_configure.append(_setup_profiling) + diff --git a/test/bootstrap/noseplugin.py b/lib/sqlalchemy/testing/plugin/noseplugin.py similarity index 90% rename from test/bootstrap/noseplugin.py rename to lib/sqlalchemy/testing/plugin/noseplugin.py index 5608a06a4f..c9e12c3051 100644 --- a/test/bootstrap/noseplugin.py +++ b/lib/sqlalchemy/testing/plugin/noseplugin.py @@ -1,3 +1,14 @@ +"""Enhance nose with extra options and behaviors for running SQLAlchemy tests. + +This module is imported relative to the "plugins" package as a top level +package by the sqla_nose.py runner, so that the plugin can be loaded with +the rest of nose including the coverage plugin before any of SQLAlchemy itself +is imported, so that coverage works. + +When third party libraries use this library, it can be imported +normally as "from sqlalchemy.testing.plugin import noseplugin". + +""" import os import ConfigParser @@ -10,14 +21,13 @@ from .config import _log, _list_dbs, _zero_timeout, \ post_configure # late imports -testing = None fixtures = None engines = None exclusions = None warnings = None profiling = None assertions = None -requires = None +requirements = None util = None file_config = None @@ -27,9 +37,7 @@ class NoseSQLAlchemy(Plugin): """ enabled = True - # nose 1.0 will allow us to replace the old "sqlalchemy" plugin, - # if installed, using the same name, but nose 1.0 isn't released yet... - name = 'sqlalchemy' + name = 'sqla_testing' score = 100 def options(self, parser, env=os.environ): @@ -97,9 +105,9 @@ class NoseSQLAlchemy(Plugin): # late imports, has to happen after config as well # as nose plugins like coverage - global testing, requires, util, fixtures, engines, exclusions, \ + global util, fixtures, engines, exclusions, \ assertions, warnings, profiling - from test.lib import testing, requires, fixtures, engines, exclusions, \ + from sqlalchemy.testing import fixtures, engines, exclusions, \ assertions, warnings, profiling from sqlalchemy import util @@ -130,6 +138,7 @@ class NoseSQLAlchemy(Plugin): return True def _do_skips(self, cls): + from sqlalchemy.testing import config if hasattr(cls, '__requires__'): def test_suite(): return 'ok' @@ -165,7 +174,7 @@ class NoseSQLAlchemy(Plugin): exclusions.exclude(db, op, spec, "'%s' unsupported on DB %s version %s" % ( cls.__name__, config.db.name, - exclusions._server_version())) + exclusions._server_version(config.db))) def beforeTest(self, test): warnings.resetwarnings() diff --git a/test/lib/profiling.py b/lib/sqlalchemy/testing/profiling.py similarity index 98% rename from test/lib/profiling.py rename to lib/sqlalchemy/testing/profiling.py index ab0bc3f2b9..be32b1d1da 100644 --- a/test/lib/profiling.py +++ b/lib/sqlalchemy/testing/profiling.py @@ -8,7 +8,7 @@ in a more fine-grained way than nose's profiling plugin. import os import sys from .util import gc_collect, decorator -from ..bootstrap import config +from . import config from nose import SkipTest import pstats import time @@ -172,7 +172,10 @@ class ProfileStatsFile(object): "" % (self.fname) def _read(self): - profile_f = open(self.fname) + try: + profile_f = open(self.fname) + except IOError: + return for lineno, line in enumerate(profile_f): line = line.strip() if not line or line.startswith("#"): diff --git a/lib/sqlalchemy/testing/requirements.py b/lib/sqlalchemy/testing/requirements.py new file mode 100644 index 0000000000..eca883d4e1 --- /dev/null +++ b/lib/sqlalchemy/testing/requirements.py @@ -0,0 +1,38 @@ +"""Global database feature support policy. + +Provides decorators to mark tests requiring specific feature support from the +target database. + +""" + +from .exclusions import \ + skip, \ + skip_if,\ + only_if,\ + only_on,\ + fails_on,\ + fails_on_everything_except,\ + fails_if,\ + SpecPredicate,\ + against + +def no_support(db, reason): + return SpecPredicate(db, description=reason) + +def exclude(db, op, spec, description=None): + return SpecPredicate(db, op, spec, description=description) + + +def _chain_decorators_on(*decorators): + def decorate(fn): + for decorator in reversed(decorators): + fn = decorator(fn) + return fn + return decorate + +class Requirements(object): + def __init__(self, db, config): + self.db = db + self.config = config + + diff --git a/test/lib/schema.py b/lib/sqlalchemy/testing/schema.py similarity index 98% rename from test/lib/schema.py rename to lib/sqlalchemy/testing/schema.py index 6c7a684e2f..03da78c646 100644 --- a/test/lib/schema.py +++ b/lib/sqlalchemy/testing/schema.py @@ -4,7 +4,7 @@ desired state for different backends. from . import exclusions from sqlalchemy import schema, event -from ..bootstrap import config +from . import config __all__ = 'Table', 'Column', diff --git a/lib/sqlalchemy/testing/suite/__init__.py b/lib/sqlalchemy/testing/suite/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/lib/sqlalchemy/testing/suite/requirements.py b/lib/sqlalchemy/testing/suite/requirements.py new file mode 100644 index 0000000000..5eda39b2b9 --- /dev/null +++ b/lib/sqlalchemy/testing/suite/requirements.py @@ -0,0 +1,24 @@ +from ..requirements import Requirements +from .. import exclusions + + +class SuiteRequirements(Requirements): + + @property + def create_table(self): + """target platform can emit basic CreateTable DDL.""" + + return exclusions.open + + @property + def drop_table(self): + """target platform can emit basic DropTable DDL.""" + + return exclusions.open + + @property + def autoincrement_insert(self): + """target platform generates new surrogate integer primary key values + when insert() is executed, excluding the pk column.""" + + return exclusions.open diff --git a/lib/sqlalchemy/testing/suite/test_ddl.py b/lib/sqlalchemy/testing/suite/test_ddl.py new file mode 100644 index 0000000000..1285c41963 --- /dev/null +++ b/lib/sqlalchemy/testing/suite/test_ddl.py @@ -0,0 +1,48 @@ +from .. import fixtures, config, util +from ..config import requirements +from ..assertions import eq_ + +from sqlalchemy import Table, Column, Integer, String + + +class TableDDLTest(fixtures.TestBase): + + def _simple_fixture(self): + return Table('test_table', self.metadata, + Column('id', Integer, primary_key=True), + Column('data', String(50)) + ) + + def _simple_roundtrip(self): + with config.db.begin() as conn: + conn.execute("insert into test_table(id, data) values " + "(1, 'some data')") + result = conn.execute("select id, data from test_table") + eq_( + result.first(), + (1, 'some data') + ) + + + @requirements.create_table + @util.provide_metadata + def test_create_table(self): + table = self._simple_fixture() + table.create( + config.db, checkfirst=False + ) + self._simple_roundtrip() + + + @requirements.drop_table + @util.provide_metadata + def test_drop_table(self): + table = self._simple_fixture() + table.create( + config.db, checkfirst=False + ) + table.drop( + config.db, checkfirst=False + ) + +__all__ = ('TableDDLTest',) \ No newline at end of file diff --git a/lib/sqlalchemy/testing/suite/test_reflection.py b/lib/sqlalchemy/testing/suite/test_reflection.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/lib/sqlalchemy/testing/suite/test_sequencing.py b/lib/sqlalchemy/testing/suite/test_sequencing.py new file mode 100644 index 0000000000..7b09ecb761 --- /dev/null +++ b/lib/sqlalchemy/testing/suite/test_sequencing.py @@ -0,0 +1,36 @@ +from .. import fixtures, config, util +from ..config import requirements +from ..assertions import eq_ + +from sqlalchemy import Table, Column, Integer, String + + +class InsertSequencingTest(fixtures.TablesTest): + run_deletes = 'each' + + @classmethod + def define_tables(cls, metadata): + Table('plain_pk', metadata, + Column('id', Integer, primary_key=True), + Column('data', String(50)) + ) + + def _assert_round_trip(self, table): + row = config.db.execute(table.select()).first() + eq_( + row, + (1, "some data") + ) + + @requirements.autoincrement_insert + def test_autoincrement_on_insert(self): + + config.db.execute( + self.tables.plain_pk.insert(), + data="some data" + ) + self._assert_round_trip(self.tables.plain_pk) + + + +__all__ = ('InsertSequencingTest',) \ No newline at end of file diff --git a/test/lib/util.py b/lib/sqlalchemy/testing/util.py similarity index 98% rename from test/lib/util.py rename to lib/sqlalchemy/testing/util.py index c2144f6bde..625b9e6a5f 100644 --- a/test/lib/util.py +++ b/lib/sqlalchemy/testing/util.py @@ -169,10 +169,10 @@ def fail(msg): def provide_metadata(fn, *args, **kw): """Provide bound MetaData for a single test, dropping afterwards.""" - from ..bootstrap.config import db + from . import config from sqlalchemy import schema - metadata = schema.MetaData(db) + metadata = schema.MetaData(config.db) self = args[0] prev_meta = getattr(self, 'metadata', None) self.metadata = metadata diff --git a/test/lib/warnings.py b/lib/sqlalchemy/testing/warnings.py similarity index 96% rename from test/lib/warnings.py rename to lib/sqlalchemy/testing/warnings.py index d17d9f465c..799fca128d 100644 --- a/test/lib/warnings.py +++ b/lib/sqlalchemy/testing/warnings.py @@ -7,7 +7,7 @@ from sqlalchemy import util def testing_warn(msg, stacklevel=3): """Replaces sqlalchemy.util.warn during tests.""" - filename = "test.lib.testing" + filename = "sqlalchemy.testing.warnings" lineno = 1 if isinstance(msg, basestring): warnings.warn_explicit(msg, sa_exc.SAWarning, filename, lineno) diff --git a/setup.cfg b/setup.cfg index 01e4149c9c..ef1b8dbcc0 100644 --- a/setup.cfg +++ b/setup.cfg @@ -2,14 +2,14 @@ tag_build = dev [nosetests] -with-sqlalchemy = true +with-sqla_testing = true exclude = ^examples first-package-wins = true where = test [sqla_testing] -requirement_cls=test.lib.requires:DefaultRequirements -profile_file=test/lib/profiles.txt +requirement_cls=test.requirements:DefaultRequirements +profile_file=test/profiles.txt [db] sqlite=sqlite:///:memory: diff --git a/sqla_nose.py b/sqla_nose.py index 09481410c2..290fc760e8 100755 --- a/sqla_nose.py +++ b/sqla_nose.py @@ -9,10 +9,11 @@ installs SQLAlchemy's testing plugin into the local environment. import sys from os import path -for pth in ['.', './lib']: +for pth in ['.', './lib', './lib/sqlalchemy/testing']: sys.path.insert(0, path.join(path.dirname(path.abspath(__file__)), pth)) -from test.bootstrap.noseplugin import NoseSQLAlchemy + +from plugin.noseplugin import NoseSQLAlchemy import nose diff --git a/test/aaa_profiling/test_compiler.py b/test/aaa_profiling/test_compiler.py index deff49f0fc..2776f05ab6 100644 --- a/test/aaa_profiling/test_compiler.py +++ b/test/aaa_profiling/test_compiler.py @@ -1,5 +1,5 @@ from sqlalchemy import * -from test.lib import * +from sqlalchemy.testing import * from sqlalchemy.engine import default class CompileTest(fixtures.TestBase, AssertsExecutionResults): diff --git a/test/aaa_profiling/test_memusage.py b/test/aaa_profiling/test_memusage.py index 9e58a10aae..fca0635d24 100644 --- a/test/aaa_profiling/test_memusage.py +++ b/test/aaa_profiling/test_memusage.py @@ -1,23 +1,24 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy.orm import mapper, relationship, create_session, \ clear_mappers, sessionmaker, class_mapper, aliased,\ Session, subqueryload from sqlalchemy.orm.mapper import _mapper_registry from sqlalchemy.orm.session import _sessions import operator -from test.lib import testing, engines +from sqlalchemy import testing +from sqlalchemy.testing import engines from sqlalchemy import MetaData, Integer, String, ForeignKey, \ PickleType, create_engine, Unicode -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column import sqlalchemy as sa from sqlalchemy.sql import column from sqlalchemy.processors import to_decimal_processor_factory, \ to_unicode_processor_factory -from test.lib.util import gc_collect +from sqlalchemy.testing.util import gc_collect from sqlalchemy.util.compat import decimal import gc import weakref -from test.lib import fixtures +from sqlalchemy.testing import fixtures class A(fixtures.ComparableEntity): pass diff --git a/test/aaa_profiling/test_orm.py b/test/aaa_profiling/test_orm.py index 12b43b2298..b9eeb83610 100644 --- a/test/aaa_profiling/test_orm.py +++ b/test/aaa_profiling/test_orm.py @@ -1,11 +1,12 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message from sqlalchemy import exc as sa_exc, util, Integer, String, ForeignKey from sqlalchemy.orm import exc as orm_exc, mapper, relationship, \ sessionmaker, Session -from test.lib import testing, profiling -from test.lib import fixtures -from test.lib.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing import profiling +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.schema import Table, Column import sys class MergeTest(fixtures.MappedTest): diff --git a/test/aaa_profiling/test_pool.py b/test/aaa_profiling/test_pool.py index 6a3d932301..cf41d2684e 100644 --- a/test/aaa_profiling/test_pool.py +++ b/test/aaa_profiling/test_pool.py @@ -1,5 +1,5 @@ from sqlalchemy import * -from test.lib import * +from sqlalchemy.testing import * from sqlalchemy.pool import QueuePool from sqlalchemy import pool as pool_module diff --git a/test/aaa_profiling/test_resultset.py b/test/aaa_profiling/test_resultset.py index 1b519c3f87..cf3a12fe13 100644 --- a/test/aaa_profiling/test_resultset.py +++ b/test/aaa_profiling/test_resultset.py @@ -1,6 +1,6 @@ from sqlalchemy import * -from test.lib import * -from test.lib.testing import eq_ +from sqlalchemy.testing import * +from sqlalchemy.testing import eq_ NUM_FIELDS = 10 NUM_RECORDS = 1000 diff --git a/test/aaa_profiling/test_zoomark.py b/test/aaa_profiling/test_zoomark.py index 97d9f1243b..7a9a0e11d3 100644 --- a/test/aaa_profiling/test_zoomark.py +++ b/test/aaa_profiling/test_zoomark.py @@ -7,7 +7,7 @@ import datetime import sys import time from sqlalchemy import * -from test.lib import * +from sqlalchemy.testing import * ITERATIONS = 1 dbapi_session = engines.ReplayableSession() metadata = None diff --git a/test/aaa_profiling/test_zoomark_orm.py b/test/aaa_profiling/test_zoomark_orm.py index 64ceb46ff6..ef60960220 100644 --- a/test/aaa_profiling/test_zoomark_orm.py +++ b/test/aaa_profiling/test_zoomark_orm.py @@ -8,7 +8,7 @@ import sys import time from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import * +from sqlalchemy.testing import * ITERATIONS = 1 dbapi_session = engines.ReplayableSession() metadata = None diff --git a/test/base/test_dependency.py b/test/base/test_dependency.py index f3e19982b0..f4a0a4c8b1 100644 --- a/test/base/test_dependency.py +++ b/test/base/test_dependency.py @@ -1,8 +1,8 @@ from sqlalchemy.util import topological -from test.lib.testing import assert_raises, eq_ -from test.lib.util import conforms_partial_ordering +from sqlalchemy.testing import assert_raises, eq_ +from sqlalchemy.testing.util import conforms_partial_ordering from sqlalchemy import exc -from test.lib import fixtures +from sqlalchemy.testing import fixtures class DependencySortTest(fixtures.TestBase): diff --git a/test/base/test_events.py b/test/base/test_events.py index 657ddc1be0..eb58f51838 100644 --- a/test/base/test_events.py +++ b/test/base/test_events.py @@ -1,9 +1,9 @@ """Test event registration and listening.""" -from test.lib.testing import eq_, assert_raises, assert_raises_message, \ +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message, \ is_, is_not_ from sqlalchemy import event, exc, util -from test.lib import fixtures +from sqlalchemy.testing import fixtures class EventsTest(fixtures.TestBase): """Test class- and instance-level event registration.""" diff --git a/test/base/test_except.py b/test/base/test_except.py index 597f1132bd..a8c7de201e 100644 --- a/test/base/test_except.py +++ b/test/base/test_except.py @@ -2,8 +2,8 @@ from sqlalchemy import exc as sa_exceptions -from test.lib import fixtures -from test.lib.testing import eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import eq_ # Py3K #StandardError = BaseException diff --git a/test/base/test_inspect.py b/test/base/test_inspect.py index c5a60481be..011e2d09fc 100644 --- a/test/base/test_inspect.py +++ b/test/base/test_inspect.py @@ -1,9 +1,9 @@ """test the inspection registry system.""" -from test.lib.testing import eq_, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises_message from sqlalchemy import exc, util from sqlalchemy import inspection, inspect -from test.lib import fixtures +from sqlalchemy.testing import fixtures class TestFixture(object): pass diff --git a/test/base/test_utils.py b/test/base/test_utils.py index a9ff7da988..ab92d8c94f 100644 --- a/test/base/test_utils.py +++ b/test/base/test_utils.py @@ -1,10 +1,10 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import copy, threading from sqlalchemy import util, sql, exc -from test.lib.testing import eq_, is_, ne_, fails_if -from test.lib.util import gc_collect, picklers +from sqlalchemy.testing import eq_, is_, ne_, fails_if +from sqlalchemy.testing.util import gc_collect, picklers from sqlalchemy.util import classproperty -from test.lib import fixtures +from sqlalchemy.testing import fixtures class OrderedDictTest(fixtures.TestBase): def test_odict(self): diff --git a/test/dialect/test_access.py b/test/dialect/test_access.py index e2c20804f0..951d43e1a6 100644 --- a/test/dialect/test_access.py +++ b/test/dialect/test_access.py @@ -1,7 +1,7 @@ from sqlalchemy import * from sqlalchemy import sql from sqlalchemy.databases import access -from test.lib import * +from sqlalchemy.testing import * class CompileTest(fixtures.TestBase, AssertsCompiledSQL): diff --git a/test/dialect/test_firebird.py b/test/dialect/test_firebird.py index aa57711e4f..5a80a37764 100644 --- a/test/dialect/test_firebird.py +++ b/test/dialect/test_firebird.py @@ -1,11 +1,12 @@ -from test.lib.testing import eq_, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises_message from sqlalchemy import exc from sqlalchemy.databases import firebird from sqlalchemy.exc import ProgrammingError from sqlalchemy.sql import table, column from sqlalchemy import types as sqltypes -from test.lib import fixtures, AssertsExecutionResults, AssertsCompiledSQL -from test.lib import testing, engines +from sqlalchemy.testing import fixtures, AssertsExecutionResults, AssertsCompiledSQL +from sqlalchemy import testing +from sqlalchemy.testing import engines from sqlalchemy import String, VARCHAR, NVARCHAR, Unicode, Integer,\ func, insert, update, MetaData, select, Table, Column, text,\ Sequence, Float diff --git a/test/dialect/test_informix.py b/test/dialect/test_informix.py index 3fa2f04700..332edd24e2 100644 --- a/test/dialect/test_informix.py +++ b/test/dialect/test_informix.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.databases import informix -from test.lib import * +from sqlalchemy.testing import * class CompileTest(fixtures.TestBase, AssertsCompiledSQL): diff --git a/test/dialect/test_maxdb.py b/test/dialect/test_maxdb.py index e0c3eafbe9..237d6c9ff3 100644 --- a/test/dialect/test_maxdb.py +++ b/test/dialect/test_maxdb.py @@ -1,12 +1,12 @@ """MaxDB-specific tests.""" -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import StringIO, sys from sqlalchemy import * from sqlalchemy import exc, sql from sqlalchemy.util.compat import decimal from sqlalchemy.databases import maxdb -from test.lib import * +from sqlalchemy.testing import * # TODO diff --git a/test/dialect/test_mssql.py b/test/dialect/test_mssql.py index 9a7c906653..e15324dca6 100644 --- a/test/dialect/test_mssql.py +++ b/test/dialect/test_mssql.py @@ -1,5 +1,5 @@ # -*- encoding: utf-8 -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import datetime import os import re @@ -12,8 +12,8 @@ from sqlalchemy.databases import mssql from sqlalchemy.dialects.mssql import pyodbc, mxodbc, pymssql from sqlalchemy.dialects.mssql.base import TIME from sqlalchemy.engine import url -from test.lib import * -from test.lib.testing import eq_, emits_warning_on, \ +from sqlalchemy.testing import * +from sqlalchemy.testing import eq_, emits_warning_on, \ assert_raises_message from sqlalchemy.util.compat import decimal from sqlalchemy.engine.reflection import Inspector @@ -780,7 +780,7 @@ class QueryUnicodeTest(fixtures.TestBase): finally: meta.drop_all() -from test.lib.assertsql import ExactSQL +from sqlalchemy.testing.assertsql import ExactSQL class QueryTest(testing.AssertsExecutionResults, fixtures.TestBase): __only_on__ = 'mssql' diff --git a/test/dialect/test_mxodbc.py b/test/dialect/test_mxodbc.py index 6c6a4b4235..32cad41681 100644 --- a/test/dialect/test_mxodbc.py +++ b/test/dialect/test_mxodbc.py @@ -1,7 +1,7 @@ from sqlalchemy import * -from test.lib.testing import eq_ -from test.lib import engines -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import engines +from sqlalchemy.testing import fixtures # TODO: we should probably build mock bases for # these to share with test_reconnect, test_parseconnect diff --git a/test/dialect/test_mysql.py b/test/dialect/test_mysql.py index 92eb52624a..2a3ffe7c46 100644 --- a/test/dialect/test_mysql.py +++ b/test/dialect/test_mysql.py @@ -1,15 +1,16 @@ # coding: utf-8 -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message from sqlalchemy import * from sqlalchemy import sql, exc, schema, types as sqltypes from sqlalchemy.dialects.mysql import base as mysql from sqlalchemy.engine.url import make_url -from test.lib import fixtures, AssertsCompiledSQL, AssertsExecutionResults -from test.lib import testing, engines -from test.lib.engines import utf8_engine +from sqlalchemy.testing import fixtures, AssertsCompiledSQL, AssertsExecutionResults +from sqlalchemy import testing +from sqlalchemy.testing import engines +from sqlalchemy.testing.engines import utf8_engine import datetime class CompileTest(fixtures.TestBase, AssertsCompiledSQL): diff --git a/test/dialect/test_oracle.py b/test/dialect/test_oracle.py index 55b5bb4ba8..dc39f8e8a0 100644 --- a/test/dialect/test_oracle.py +++ b/test/dialect/test_oracle.py @@ -1,12 +1,12 @@ # coding: utf-8 -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy import * from sqlalchemy import types as sqltypes, exc from sqlalchemy.sql import table, column -from test.lib import * -from test.lib.testing import eq_, assert_raises, assert_raises_message -from test.lib.engines import testing_engine +from sqlalchemy.testing import * +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing.engines import testing_engine from sqlalchemy.dialects.oracle import cx_oracle, base as oracle from sqlalchemy.engine import default from sqlalchemy.util import jython diff --git a/test/dialect/test_postgresql.py b/test/dialect/test_postgresql.py index 73633c1289..6351ce9d05 100644 --- a/test/dialect/test_postgresql.py +++ b/test/dialect/test_postgresql.py @@ -2,19 +2,24 @@ from __future__ import with_statement -from test.lib.testing import eq_, assert_raises, assert_raises_message, is_ -from test.lib import engines +from sqlalchemy.testing.assertions import eq_, assert_raises, \ + assert_raises_message, is_, AssertsExecutionResults, \ + AssertsCompiledSQL, ComparesTables +from sqlalchemy.testing import engines, fixtures +from sqlalchemy import testing import datetime -from sqlalchemy import * -from sqlalchemy.orm import * +from sqlalchemy import Table, Column, select, MetaData, text, Integer, \ + String, Sequence, ForeignKey, join, Numeric, \ + PrimaryKeyConstraint, DateTime, tuple_, Float, BigInteger, \ + func, literal_column, literal, bindparam, cast, extract, \ + SmallInteger, Enum, REAL, update, insert, Index, delete, \ + and_, Date, TypeDecorator, Time, Unicode, Interval +from sqlalchemy.orm import Session, mapper, aliased from sqlalchemy import exc, schema, types from sqlalchemy.dialects.postgresql import base as postgresql -from sqlalchemy.engine.strategies import MockEngineStrategy from sqlalchemy.util.compat import decimal -from test.lib import * -from test.lib.util import round_decimal +from sqlalchemy.testing.util import round_decimal from sqlalchemy.sql import table, column -from test.lib.testing import eq_ import logging class SequenceTest(fixtures.TestBase, AssertsCompiledSQL): diff --git a/test/dialect/test_pyodbc.py b/test/dialect/test_pyodbc.py index 52d6bc7c45..f5850fe981 100644 --- a/test/dialect/test_pyodbc.py +++ b/test/dialect/test_pyodbc.py @@ -1,6 +1,6 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy.connectors import pyodbc -from test.lib import fixtures +from sqlalchemy.testing import fixtures class PyODBCTest(fixtures.TestBase): def test_pyodbc_version(self): diff --git a/test/dialect/test_sqlite.py b/test/dialect/test_sqlite.py index 07995cdc4b..53720d26bf 100644 --- a/test/dialect/test_sqlite.py +++ b/test/dialect/test_sqlite.py @@ -1,6 +1,6 @@ """SQLite-specific tests.""" -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message import datetime from sqlalchemy import * @@ -8,7 +8,7 @@ from sqlalchemy import exc, sql, schema, pool, types as sqltypes from sqlalchemy.dialects.sqlite import base as sqlite, \ pysqlite as pysqlite_dialect from sqlalchemy.engine.url import make_url -from test.lib import * +from sqlalchemy.testing import * import os from sqlalchemy.schema import CreateTable diff --git a/test/dialect/test_suite.py b/test/dialect/test_suite.py new file mode 100644 index 0000000000..9abff42877 --- /dev/null +++ b/test/dialect/test_suite.py @@ -0,0 +1,8 @@ +from sqlalchemy.testing.suite.test_ddl import * +from sqlalchemy.testing.suite.test_sequencing import * + + + + + + diff --git a/test/dialect/test_sybase.py b/test/dialect/test_sybase.py index 0a7cbf6b6d..025d49aaeb 100644 --- a/test/dialect/test_sybase.py +++ b/test/dialect/test_sybase.py @@ -1,7 +1,7 @@ from sqlalchemy import * from sqlalchemy import sql from sqlalchemy.databases import sybase -from test.lib import * +from sqlalchemy.testing import * class CompileTest(fixtures.TestBase, AssertsCompiledSQL): diff --git a/test/engine/test_bind.py b/test/engine/test_bind.py index 0d7b7d6930..30ee43b3bb 100644 --- a/test/engine/test_bind.py +++ b/test/engine/test_bind.py @@ -1,15 +1,15 @@ """tests the "bind" attribute/argument across schema and SQL, including the deprecated versions of these arguments""" -from test.lib.testing import eq_, assert_raises +from sqlalchemy.testing import eq_, assert_raises from sqlalchemy import engine, exc from sqlalchemy import MetaData, ThreadLocalMetaData from sqlalchemy import Integer, text -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column import sqlalchemy as sa -from test.lib import testing -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import fixtures class BindTest(fixtures.TestBase): def test_create_drop_explicit(self): diff --git a/test/engine/test_ddlevents.py b/test/engine/test_ddlevents.py index b341801eb5..71379ec7e4 100644 --- a/test/engine/test_ddlevents.py +++ b/test/engine/test_ddlevents.py @@ -1,16 +1,17 @@ from __future__ import with_statement -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy.schema import DDL, CheckConstraint, AddConstraint, \ DropConstraint from sqlalchemy import create_engine from sqlalchemy import MetaData, Integer, String, event, exc, text -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column import sqlalchemy as tsa -from test.lib import testing, engines -from test.lib.testing import AssertsCompiledSQL, eq_ +from sqlalchemy import testing +from sqlalchemy.testing import engines +from sqlalchemy.testing import AssertsCompiledSQL, eq_ from nose import SkipTest -from test.lib import fixtures +from sqlalchemy.testing import fixtures class DDLEventTest(fixtures.TestBase): @@ -472,10 +473,10 @@ class DDLExecutionTest(fixtures.TestBase): # We're abusing the DDL() # construct here by pushing a SELECT through it - # so that we can verify the round trip. + # so that we can verify the round trip. # the DDL() will trigger autocommit, which prohibits # some DBAPIs from returning results (pyodbc), so we - # run in an explicit transaction. + # run in an explicit transaction. with testing.db.begin() as conn: eq_( conn.execute( diff --git a/test/engine/test_execute.py b/test/engine/test_execute.py index 156a9fc35d..ced72f276f 100644 --- a/test/engine/test_execute.py +++ b/test/engine/test_execute.py @@ -1,22 +1,23 @@ from __future__ import with_statement -from test.lib.testing import eq_, assert_raises, assert_raises_message, \ +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message, \ config, is_ import re -from test.lib.util import picklers +from sqlalchemy.testing.util import picklers from sqlalchemy.interfaces import ConnectionProxy from sqlalchemy import MetaData, Integer, String, INT, VARCHAR, func, \ bindparam, select, event, TypeDecorator, create_engine, Sequence from sqlalchemy.sql import column, literal -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column import sqlalchemy as tsa -from test.lib import testing, engines -from test.lib.engines import testing_engine +from sqlalchemy import testing +from sqlalchemy.testing import engines +from sqlalchemy.testing.engines import testing_engine import logging from sqlalchemy.dialects.oracle.zxjdbc import ReturningParam from sqlalchemy.engine import result as _result, default from sqlalchemy.engine.base import Connection, Engine -from test.lib import fixtures +from sqlalchemy.testing import fixtures import StringIO users, metadata, users_autoinc = None, None, None diff --git a/test/engine/test_parseconnect.py b/test/engine/test_parseconnect.py index a87c8d0561..a00a942cb4 100644 --- a/test/engine/test_parseconnect.py +++ b/test/engine/test_parseconnect.py @@ -1,4 +1,4 @@ -from test.lib.testing import assert_raises, assert_raises_message, eq_ +from sqlalchemy.testing import assert_raises, assert_raises_message, eq_ import ConfigParser import StringIO import sqlalchemy.engine.url as url @@ -6,7 +6,8 @@ from sqlalchemy import create_engine, engine_from_config, exc, pool from sqlalchemy.engine.util import _coerce_config from sqlalchemy.engine.default import DefaultDialect import sqlalchemy as tsa -from test.lib import fixtures, testing +from sqlalchemy.testing import fixtures +from sqlalchemy import testing class ParseConnectTest(fixtures.TestBase): def test_rfc1738(self): diff --git a/test/engine/test_pool.py b/test/engine/test_pool.py index 6f00a3c80b..d991cc7be7 100644 --- a/test/engine/test_pool.py +++ b/test/engine/test_pool.py @@ -1,11 +1,11 @@ import threading, time from sqlalchemy import pool, interfaces, select, event import sqlalchemy as tsa -from test.lib import testing -from test.lib.util import gc_collect, lazy_gc -from test.lib.testing import eq_, assert_raises -from test.lib.engines import testing_engine -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing.util import gc_collect, lazy_gc +from sqlalchemy.testing import eq_, assert_raises +from sqlalchemy.testing.engines import testing_engine +from sqlalchemy.testing import fixtures mcid = 1 class MockDBAPI(object): diff --git a/test/engine/test_processors.py b/test/engine/test_processors.py index d05de69021..bc9af7305b 100644 --- a/test/engine/test_processors.py +++ b/test/engine/test_processors.py @@ -1,5 +1,5 @@ -from test.lib import fixtures -from test.lib.testing import assert_raises_message, eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import assert_raises_message, eq_ class _DateProcessorTest(fixtures.TestBase): diff --git a/test/engine/test_reconnect.py b/test/engine/test_reconnect.py index 360a20eb23..6416ce1490 100644 --- a/test/engine/test_reconnect.py +++ b/test/engine/test_reconnect.py @@ -1,14 +1,15 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message import time import weakref from sqlalchemy import select, MetaData, Integer, String, pool, create_engine -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column import sqlalchemy as tsa -from test.lib import testing, engines -from test.lib.util import gc_collect +from sqlalchemy import testing +from sqlalchemy.testing import engines +from sqlalchemy.testing.util import gc_collect from sqlalchemy import exc -from test.lib import fixtures -from test.lib.engines import testing_engine +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.engines import testing_engine class MockDisconnect(Exception): pass diff --git a/test/engine/test_reflection.py b/test/engine/test_reflection.py index 2713bd80b0..a909803a13 100644 --- a/test/engine/test_reflection.py +++ b/test/engine/test_reflection.py @@ -5,10 +5,11 @@ from sqlalchemy import types as sql_types from sqlalchemy import schema, events, event, inspect from sqlalchemy import MetaData, Integer, String from sqlalchemy.engine.reflection import Inspector -from test.lib import ComparesTables, \ - testing, engines, AssertsCompiledSQL, fixtures -from test.lib.schema import Table, Column -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import ComparesTables, \ + engines, AssertsCompiledSQL, fixtures +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy import testing metadata, users = None, None diff --git a/test/engine/test_transaction.py b/test/engine/test_transaction.py index 709f0d2f1a..ad6813f877 100644 --- a/test/engine/test_transaction.py +++ b/test/engine/test_transaction.py @@ -1,15 +1,15 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, ne_ import sys import time import threading -from test.lib.engines import testing_engine +from sqlalchemy.testing.engines import testing_engine from sqlalchemy import create_engine, MetaData, INT, VARCHAR, Sequence, \ select, Integer, String, func, text, exc -from test.lib.schema import Table -from test.lib.schema import Column -from test.lib import testing -from test.lib import fixtures +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column +from sqlalchemy import testing +from sqlalchemy.testing import fixtures users, metadata = None, None diff --git a/test/ex/test_examples.py b/test/ex/test_examples.py index ce44067fe4..3182b5ab5a 100644 --- a/test/ex/test_examples.py +++ b/test/ex/test_examples.py @@ -1,4 +1,4 @@ -from test.lib import * +from sqlalchemy.testing import * import os import re diff --git a/test/ext/declarative/test_basic.py b/test/ext/declarative/test_basic.py index 5af2b88dc5..19141143f8 100644 --- a/test/ext/declarative/test_basic.py +++ b/test/ext/declarative/test_basic.py @@ -1,22 +1,22 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, is_ from sqlalchemy.ext import declarative as decl from sqlalchemy import exc import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import MetaData, Integer, String, ForeignKey, \ ForeignKeyConstraint, Index -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import relationship, create_session, class_mapper, \ joinedload, configure_mappers, backref, clear_mappers, \ deferred, column_property, composite,\ Session -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy.util import classproperty from sqlalchemy.ext.declarative import declared_attr, AbstractConcreteBase, ConcreteBase -from test.lib import fixtures -from test.lib.util import gc_collect +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.util import gc_collect Base = None diff --git a/test/ext/declarative/test_clsregistry.py b/test/ext/declarative/test_clsregistry.py index f657beb65f..db4b01470b 100644 --- a/test/ext/declarative/test_clsregistry.py +++ b/test/ext/declarative/test_clsregistry.py @@ -1,6 +1,6 @@ -from test.lib import fixtures -from test.lib.util import gc_collect -from test.lib.testing import assert_raises_message, is_, eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.util import gc_collect +from sqlalchemy.testing import assert_raises_message, is_, eq_ from sqlalchemy import exc, MetaData from sqlalchemy.ext.declarative import clsregistry import weakref diff --git a/test/ext/declarative/test_inheritance.py b/test/ext/declarative/test_inheritance.py index 86bd1c28e3..ab78cc3e2e 100644 --- a/test/ext/declarative/test_inheritance.py +++ b/test/ext/declarative/test_inheritance.py @@ -1,21 +1,21 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, is_ from sqlalchemy.ext import declarative as decl from sqlalchemy import exc import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import MetaData, Integer, String, ForeignKey, \ ForeignKeyConstraint, Index -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import relationship, create_session, class_mapper, \ joinedload, configure_mappers, backref, clear_mappers, \ polymorphic_union, deferred, column_property, composite,\ Session -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy.util import classproperty from sqlalchemy.ext.declarative import declared_attr, AbstractConcreteBase, ConcreteBase -from test.lib import fixtures +from sqlalchemy.testing import fixtures Base = None diff --git a/test/ext/declarative/test_mixin.py b/test/ext/declarative/test_mixin.py index bec9a659dc..fb674f27a2 100644 --- a/test/ext/declarative/test_mixin.py +++ b/test/ext/declarative/test_mixin.py @@ -1,17 +1,17 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, is_ from sqlalchemy.ext import declarative as decl import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import relationship, create_session, class_mapper, \ configure_mappers, clear_mappers, \ deferred, column_property, \ Session from sqlalchemy.util import classproperty from sqlalchemy.ext.declarative import declared_attr -from test.lib import fixtures +from sqlalchemy.testing import fixtures Base = None diff --git a/test/ext/declarative/test_reflection.py b/test/ext/declarative/test_reflection.py index d5fd8e7874..013439f930 100644 --- a/test/ext/declarative/test_reflection.py +++ b/test/ext/declarative/test_reflection.py @@ -1,12 +1,12 @@ -from test.lib.testing import eq_, assert_raises +from sqlalchemy.testing import eq_, assert_raises from sqlalchemy.ext import declarative as decl -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import MetaData, Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import relationship, create_session, \ clear_mappers, \ Session -from test.lib import fixtures +from sqlalchemy.testing import fixtures class DeclarativeReflectionBase(fixtures.TablesTest): __requires__ = 'reflectable_autoincrement', diff --git a/test/ext/test_associationproxy.py b/test/ext/test_associationproxy.py index 7ae4673635..5bec0ad1db 100644 --- a/test/ext/test_associationproxy.py +++ b/test/ext/test_associationproxy.py @@ -1,4 +1,4 @@ -from test.lib.testing import eq_, assert_raises +from sqlalchemy.testing import eq_, assert_raises import copy import pickle @@ -7,12 +7,12 @@ from sqlalchemy.orm import * from sqlalchemy.orm.collections import collection, attribute_mapped_collection from sqlalchemy.ext.associationproxy import * from sqlalchemy.ext.associationproxy import _AssociationList -from test.lib import * -from test.lib.testing import assert_raises_message -from test.lib.util import gc_collect +from sqlalchemy.testing import assert_raises_message +from sqlalchemy.testing.util import gc_collect from sqlalchemy.sql import not_ -from test.lib import fixtures - +from sqlalchemy.testing import fixtures, AssertsCompiledSQL +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column class DictCollection(dict): @collection.appender diff --git a/test/ext/test_compiler.py b/test/ext/test_compiler.py index d4931931af..c1f8b62589 100644 --- a/test/ext/test_compiler.py +++ b/test/ext/test_compiler.py @@ -8,8 +8,8 @@ from sqlalchemy.schema import DDLElement from sqlalchemy.ext.compiler import compiles, deregister from sqlalchemy import exc from sqlalchemy.sql import table, column, visitors -from test.lib.testing import assert_raises_message -from test.lib import * +from sqlalchemy.testing import assert_raises_message +from sqlalchemy.testing import fixtures, AssertsCompiledSQL class UserDefinedTest(fixtures.TestBase, AssertsCompiledSQL): __dialect__ = 'default' diff --git a/test/ext/test_extendedattr.py b/test/ext/test_extendedattr.py index 286c1905ff..a550ae4d0d 100644 --- a/test/ext/test_extendedattr.py +++ b/test/ext/test_extendedattr.py @@ -1,14 +1,14 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message, ne_ +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message, ne_ from sqlalchemy import util from sqlalchemy.orm import attributes from sqlalchemy.orm.attributes import set_attribute, get_attribute, del_attribute from sqlalchemy.orm.instrumentation import is_instrumented from sqlalchemy.orm import clear_mappers -from test.lib import * -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import fixtures from sqlalchemy.ext import instrumentation from sqlalchemy.orm.instrumentation import register_class -from test.lib.util import decorator +from sqlalchemy.testing.util import decorator from sqlalchemy.orm import events from sqlalchemy import event diff --git a/test/ext/test_horizontal_shard.py b/test/ext/test_horizontal_shard.py index 93ebae48fa..0b9b89d2b6 100644 --- a/test/ext/test_horizontal_shard.py +++ b/test/ext/test_horizontal_shard.py @@ -5,9 +5,10 @@ from sqlalchemy import sql, util from sqlalchemy.orm import * from sqlalchemy.ext.horizontal_shard import ShardedSession from sqlalchemy.sql import operators -from test.lib import * -from test.lib.engines import testing_engine -from test.lib.testing import eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy import testing +from sqlalchemy.testing.engines import testing_engine +from sqlalchemy.testing import eq_ from nose import SkipTest # TODO: ShardTest can be turned into a base for further subclasses diff --git a/test/ext/test_hybrid.py b/test/ext/test_hybrid.py index 77966e6e5f..e7f392a338 100644 --- a/test/ext/test_hybrid.py +++ b/test/ext/test_hybrid.py @@ -1,10 +1,10 @@ from sqlalchemy import func, Integer, String, ForeignKey from sqlalchemy.orm import relationship, Session, aliased -from test.lib.schema import Column +from sqlalchemy.testing.schema import Column from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.ext import hybrid -from test.lib.testing import eq_, AssertsCompiledSQL, assert_raises_message -from test.lib import fixtures +from sqlalchemy.testing import eq_, AssertsCompiledSQL, assert_raises_message +from sqlalchemy.testing import fixtures class PropertyComparatorTest(fixtures.TestBase, AssertsCompiledSQL): __dialect__ = 'default' diff --git a/test/ext/test_mutable.py b/test/ext/test_mutable.py index c345d8fe38..f56ce40378 100644 --- a/test/ext/test_mutable.py +++ b/test/ext/test_mutable.py @@ -3,11 +3,11 @@ from sqlalchemy.types import PickleType, TypeDecorator, VARCHAR from sqlalchemy.orm import mapper, Session, composite from sqlalchemy.orm.mapper import Mapper from sqlalchemy.orm.instrumentation import ClassManager -from test.lib.schema import Table, Column -from test.lib.testing import eq_, assert_raises_message -from test.lib.util import picklers -from test.lib import testing -from test.lib import fixtures +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import eq_, assert_raises_message +from sqlalchemy.testing.util import picklers +from sqlalchemy import testing +from sqlalchemy.testing import fixtures import sys import pickle diff --git a/test/ext/test_orderinglist.py b/test/ext/test_orderinglist.py index 0b7d4328ec..37b992f5b9 100644 --- a/test/ext/test_orderinglist.py +++ b/test/ext/test_orderinglist.py @@ -1,10 +1,11 @@ from sqlalchemy import Integer, ForeignKey, String, MetaData from sqlalchemy.orm import relationship, mapper, create_session from sqlalchemy.ext.orderinglist import ordering_list -from test.lib.testing import eq_ -from test.lib import fixtures, testing -from test.lib.schema import Table, Column -from test.lib.util import picklers +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing.util import picklers metadata = None diff --git a/test/ext/test_serializer.py b/test/ext/test_serializer.py index 0496479aa0..bf268fbbb6 100644 --- a/test/ext/test_serializer.py +++ b/test/ext/test_serializer.py @@ -2,16 +2,16 @@ from sqlalchemy.ext import serializer from sqlalchemy import exc import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import MetaData, Integer, String, ForeignKey, select, \ desc, func, util -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import relationship, sessionmaker, scoped_session, \ class_mapper, mapper, joinedload, configure_mappers, aliased -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import fixtures class User(fixtures.ComparableEntity): pass diff --git a/test/lib/__init__.py b/test/lib/__init__.py deleted file mode 100644 index a1b8eb6d11..0000000000 --- a/test/lib/__init__.py +++ /dev/null @@ -1,22 +0,0 @@ -"""Testing environment and utilities. - -""" - -from ..bootstrap import config -from . import testing, engines, requires, profiling, pickleable, \ - fixtures -from .schema import Column, Table -from .assertions import AssertsCompiledSQL, \ - AssertsExecutionResults, ComparesTables -from .util import rowset - - -__all__ = ('testing', - 'Column', 'Table', - 'rowset', - 'fixtures', - 'AssertsExecutionResults', - 'AssertsCompiledSQL', 'ComparesTables', - 'engines', 'profiling', 'pickleable') - - diff --git a/test/orm/_fixtures.py b/test/orm/_fixtures.py index e51924b773..c218336196 100644 --- a/test/orm/_fixtures.py +++ b/test/orm/_fixtures.py @@ -1,10 +1,10 @@ from sqlalchemy import MetaData, Integer, String, ForeignKey from sqlalchemy import util -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import attributes, mapper, relationship, \ backref, configure_mappers -from test.lib import fixtures +from sqlalchemy.testing import fixtures __all__ = () diff --git a/test/orm/inheritance/_poly_fixtures.py b/test/orm/inheritance/_poly_fixtures.py index 6c502f58dd..55783cd693 100644 --- a/test/orm/inheritance/_poly_fixtures.py +++ b/test/orm/inheritance/_poly_fixtures.py @@ -6,9 +6,9 @@ from sqlalchemy.orm import interfaces, relationship, mapper, \ from sqlalchemy import exc as sa_exc from sqlalchemy.engine import default -from test.lib import AssertsCompiledSQL, fixtures, testing -from test.lib.schema import Table, Column -from test.lib.testing import assert_raises, eq_ +from sqlalchemy.testing import AssertsCompiledSQL, fixtures, testing +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import assert_raises, eq_ class Company(fixtures.ComparableEntity): pass diff --git a/test/orm/inheritance/test_abc_inheritance.py b/test/orm/inheritance/test_abc_inheritance.py index 3a61adb18b..757f8868ed 100644 --- a/test/orm/inheritance/test_abc_inheritance.py +++ b/test/orm/inheritance/test_abc_inheritance.py @@ -2,9 +2,9 @@ from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.orm.interfaces import ONETOMANY, MANYTOONE -from test.lib import testing -from test.lib.schema import Table, Column -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import fixtures def produce_test(parent, child, direction): diff --git a/test/orm/inheritance/test_abc_polymorphic.py b/test/orm/inheritance/test_abc_polymorphic.py index 746bf0f130..f32805cc75 100644 --- a/test/orm/inheritance/test_abc_polymorphic.py +++ b/test/orm/inheritance/test_abc_polymorphic.py @@ -2,11 +2,11 @@ from sqlalchemy import * from sqlalchemy import util from sqlalchemy.orm import * -from test.lib.util import function_named -from test.lib import fixtures +from sqlalchemy.testing.util import function_named +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.testing import eq_ -from test.lib.schema import Table, Column +from sqlalchemy.testing import eq_ +from sqlalchemy.testing.schema import Table, Column class ABCTest(fixtures.MappedTest): @classmethod diff --git a/test/orm/inheritance/test_assorted_poly.py b/test/orm/inheritance/test_assorted_poly.py index fe9fb493b8..9c0ba989ee 100644 --- a/test/orm/inheritance/test_assorted_poly.py +++ b/test/orm/inheritance/test_assorted_poly.py @@ -3,17 +3,17 @@ These are generally tests derived from specific user issues. """ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy import * from sqlalchemy import util from sqlalchemy.orm import * from sqlalchemy.orm.interfaces import MANYTOONE -from test.lib import AssertsExecutionResults, testing -from test.lib.util import function_named -from test.lib import fixtures +from sqlalchemy.testing import AssertsExecutionResults, testing +from sqlalchemy.testing.util import function_named +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.testing import eq_ -from test.lib.schema import Table, Column +from sqlalchemy.testing import eq_ +from sqlalchemy.testing.schema import Table, Column class AttrSettable(object): def __init__(self, **kwargs): diff --git a/test/orm/inheritance/test_basic.py b/test/orm/inheritance/test_basic.py index ad30ab44de..66991e9228 100644 --- a/test/orm/inheritance/test_basic.py +++ b/test/orm/inheritance/test_basic.py @@ -1,18 +1,19 @@ import warnings -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message from sqlalchemy import * from sqlalchemy import exc as sa_exc, util, event from sqlalchemy.orm import * from sqlalchemy.orm import exc as orm_exc, attributes -from test.lib.assertsql import AllOf, CompiledSQL +from sqlalchemy.testing.assertsql import AllOf, CompiledSQL from sqlalchemy.sql import table, column -from test.lib import testing, engines -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import engines +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy import inspect from sqlalchemy.ext.declarative import declarative_base -from test.lib.util import gc_collect +from sqlalchemy.testing.util import gc_collect class O2MTest(fixtures.MappedTest): """deals with inheritance and one-to-many relationships""" diff --git a/test/orm/inheritance/test_concrete.py b/test/orm/inheritance/test_concrete.py index d51efa62bc..40c3ab31b2 100644 --- a/test/orm/inheritance/test_concrete.py +++ b/test/orm/inheritance/test_concrete.py @@ -1,15 +1,15 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.orm import exc as orm_exc -from test.lib import * +from sqlalchemy.testing import * import sqlalchemy as sa -from test.lib import testing -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import fixtures from sqlalchemy.orm import attributes -from test.lib.testing import eq_ -from test.lib.schema import Table, Column +from sqlalchemy.testing import eq_ +from sqlalchemy.testing.schema import Table, Column class Employee(object): diff --git a/test/orm/inheritance/test_magazine.py b/test/orm/inheritance/test_magazine.py index a1118aa86f..ae5aa8c8d6 100644 --- a/test/orm/inheritance/test_magazine.py +++ b/test/orm/inheritance/test_magazine.py @@ -1,10 +1,10 @@ from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import testing -from test.lib.util import function_named -from test.lib import fixtures -from test.lib.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing.util import function_named +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.schema import Table, Column class BaseObject(object): def __init__(self, *args, **kwargs): diff --git a/test/orm/inheritance/test_manytomany.py b/test/orm/inheritance/test_manytomany.py index 1d5d8b297e..e4df5d133c 100644 --- a/test/orm/inheritance/test_manytomany.py +++ b/test/orm/inheritance/test_manytomany.py @@ -1,9 +1,9 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import testing -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import fixtures class InheritTest(fixtures.MappedTest): diff --git a/test/orm/inheritance/test_poly_linked_list.py b/test/orm/inheritance/test_poly_linked_list.py index f876625875..1915007def 100644 --- a/test/orm/inheritance/test_poly_linked_list.py +++ b/test/orm/inheritance/test_poly_linked_list.py @@ -1,9 +1,9 @@ from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import fixtures -from test.lib import testing -from test.lib.schema import Table, Column +from sqlalchemy.testing import fixtures +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column class PolymorphicCircularTest(fixtures.MappedTest): diff --git a/test/orm/inheritance/test_poly_persistence.py b/test/orm/inheritance/test_poly_persistence.py index 5b5844b703..3450c133c1 100644 --- a/test/orm/inheritance/test_poly_persistence.py +++ b/test/orm/inheritance/test_poly_persistence.py @@ -1,14 +1,14 @@ """tests basic polymorphic mapper loading/saving, minimal relationships""" -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.orm import exc as orm_exc from sqlalchemy import exc as sa_exc -from test.lib import Column, testing -from test.lib.util import function_named +from sqlalchemy.testing import Column, testing +from sqlalchemy.testing.util import function_named from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures class Person(fixtures.ComparableEntity): pass diff --git a/test/orm/inheritance/test_polymorphic_rel.py b/test/orm/inheritance/test_polymorphic_rel.py index 6d7bcb6760..8bbde972dd 100644 --- a/test/orm/inheritance/test_polymorphic_rel.py +++ b/test/orm/inheritance/test_polymorphic_rel.py @@ -4,8 +4,8 @@ from sqlalchemy.orm import interfaces, create_session, joinedload, joinedload_al class_mapper from sqlalchemy import exc as sa_exc -from test.lib import testing -from test.lib.testing import assert_raises, eq_ +from sqlalchemy import testing +from sqlalchemy.testing import assert_raises, eq_ from _poly_fixtures import Company, Person, Engineer, Manager, Boss, \ Machine, Paperwork, _Polymorphic,\ diff --git a/test/orm/inheritance/test_productspec.py b/test/orm/inheritance/test_productspec.py index d7c7eb24a2..c1e99e3383 100644 --- a/test/orm/inheritance/test_productspec.py +++ b/test/orm/inheritance/test_productspec.py @@ -2,9 +2,9 @@ from datetime import datetime from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import testing -from test.lib import fixtures -from test.lib.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.schema import Table, Column class InheritTest(fixtures.MappedTest): """tests some various inheritance round trips involving a particular set of polymorphic inheritance relationships""" diff --git a/test/orm/inheritance/test_relationship.py b/test/orm/inheritance/test_relationship.py index a4e19b988b..5511614c80 100644 --- a/test/orm/inheritance/test_relationship.py +++ b/test/orm/inheritance/test_relationship.py @@ -5,9 +5,9 @@ from sqlalchemy.orm import create_session, relationship, mapper, \ from sqlalchemy import Integer, String, ForeignKey from sqlalchemy.engine import default -from test.lib import AssertsCompiledSQL, fixtures, testing -from test.lib.schema import Table, Column -from test.lib.testing import assert_raises, eq_ +from sqlalchemy.testing import AssertsCompiledSQL, fixtures, testing +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import assert_raises, eq_ class Company(fixtures.ComparableEntity): pass diff --git a/test/orm/inheritance/test_selects.py b/test/orm/inheritance/test_selects.py index 9758744ca2..dd9c8c8b81 100644 --- a/test/orm/inheritance/test_selects.py +++ b/test/orm/inheritance/test_selects.py @@ -1,9 +1,9 @@ from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import testing +from sqlalchemy import testing -from test.lib import fixtures +from sqlalchemy.testing import fixtures class InheritingSelectablesTest(fixtures.MappedTest): @classmethod diff --git a/test/orm/inheritance/test_single.py b/test/orm/inheritance/test_single.py index 774626c48e..08a693b92f 100644 --- a/test/orm/inheritance/test_single.py +++ b/test/orm/inheritance/test_single.py @@ -1,11 +1,11 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import testing +from sqlalchemy import testing from test.orm import _fixtures -from test.lib import fixtures -from test.lib.schema import Table, Column +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.schema import Table, Column class SingleInheritanceTest(testing.AssertsCompiledSQL, fixtures.MappedTest): diff --git a/test/orm/inheritance/test_with_poly.py b/test/orm/inheritance/test_with_poly.py index dc0035b6a8..cbf2c96513 100644 --- a/test/orm/inheritance/test_with_poly.py +++ b/test/orm/inheritance/test_with_poly.py @@ -6,9 +6,9 @@ from sqlalchemy.orm import interfaces, relationship, mapper, \ from sqlalchemy import exc as sa_exc from sqlalchemy.engine import default -from test.lib import AssertsCompiledSQL, fixtures, testing -from test.lib.schema import Table, Column -from test.lib.testing import assert_raises, eq_ +from sqlalchemy.testing import AssertsCompiledSQL, fixtures, testing +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import assert_raises, eq_ from _poly_fixtures import Company, Person, Engineer, Manager, Boss, \ Machine, Paperwork, _PolymorphicFixtureBase, _Polymorphic,\ diff --git a/test/orm/test_association.py b/test/orm/test_association.py index 47d0b1ddc2..376cfaa84f 100644 --- a/test/orm/test_association.py +++ b/test/orm/test_association.py @@ -1,10 +1,10 @@ -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session -from test.lib import fixtures -from test.lib.testing import eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import eq_ class AssociationTest(fixtures.MappedTest): diff --git a/test/orm/test_assorted_eager.py b/test/orm/test_assorted_eager.py index dded00256f..a1c96bdfa4 100644 --- a/test/orm/test_assorted_eager.py +++ b/test/orm/test_assorted_eager.py @@ -9,12 +9,12 @@ be cleaned up and modernized. import datetime import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, backref, create_session -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures class EagerTest(fixtures.MappedTest): diff --git a/test/orm/test_attributes.py b/test/orm/test_attributes.py index 7c0c9527ad..ecdfef2940 100644 --- a/test/orm/test_attributes.py +++ b/test/orm/test_attributes.py @@ -3,11 +3,11 @@ from sqlalchemy.orm import attributes, instrumentation, exc as orm_exc from sqlalchemy.orm.collections import collection from sqlalchemy.orm.interfaces import AttributeExtension from sqlalchemy import exc as sa_exc -from test.lib import * -from test.lib.testing import eq_, ne_, assert_raises, \ +from sqlalchemy.testing import * +from sqlalchemy.testing import eq_, ne_, assert_raises, \ assert_raises_message -from test.lib import fixtures -from test.lib.util import gc_collect, all_partial_orderings +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.util import gc_collect, all_partial_orderings from sqlalchemy.util import jython from sqlalchemy import event diff --git a/test/orm/test_backref_mutations.py b/test/orm/test_backref_mutations.py index 7e425a457e..925eedfa90 100644 --- a/test/orm/test_backref_mutations.py +++ b/test/orm/test_backref_mutations.py @@ -9,16 +9,16 @@ UPDATE in the database. """ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy import Integer, String, ForeignKey, Sequence, exc as sa_exc -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, create_session, \ class_mapper, backref, sessionmaker, Session from sqlalchemy.orm import attributes, exc as orm_exc -from test.lib import testing -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures class O2MCollectionTest(_fixtures.FixtureTest): diff --git a/test/orm/test_bind.py b/test/orm/test_bind.py index 00d9bb0942..0d869130bd 100644 --- a/test/orm/test_bind.py +++ b/test/orm/test_bind.py @@ -1,11 +1,11 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy import MetaData, Integer -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, create_session import sqlalchemy as sa -from test.lib import testing -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import fixtures class BindTest(fixtures.MappedTest): diff --git a/test/orm/test_cascade.py b/test/orm/test_cascade.py index ee3c7b63ee..f681fc4988 100644 --- a/test/orm/test_cascade.py +++ b/test/orm/test_cascade.py @@ -1,15 +1,15 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy import Integer, String, ForeignKey, Sequence, \ exc as sa_exc -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session, \ sessionmaker, class_mapper, backref, Session, util as orm_util,\ configure_mappers from sqlalchemy.orm import attributes, exc as orm_exc -from test.lib import testing -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures class CascadeArgTest(fixtures.MappedTest): diff --git a/test/orm/test_collection.py b/test/orm/test_collection.py index b3de03aaef..dc8aa2bc46 100644 --- a/test/orm/test_collection.py +++ b/test/orm/test_collection.py @@ -1,4 +1,4 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import sys from operator import and_ @@ -6,14 +6,14 @@ import sqlalchemy.orm.collections as collections from sqlalchemy.orm.collections import collection import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, text -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy import util, exc as sa_exc from sqlalchemy.orm import create_session, mapper, relationship, \ attributes, instrumentation -from test.lib import fixtures -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message class Canary(sa.orm.interfaces.AttributeExtension): def __init__(self): @@ -1669,7 +1669,7 @@ class ColumnMappedWSerialize(fixtures.MappedTest): ]) def _run_test(self, specs): - from test.lib.util import picklers + from sqlalchemy.testing.util import picklers for spec, obj, expected in specs: coll = collections.column_mapped_collection(spec)() eq_( diff --git a/test/orm/test_compile.py b/test/orm/test_compile.py index 1b2714d700..d5823b7a6e 100644 --- a/test/orm/test_compile.py +++ b/test/orm/test_compile.py @@ -1,9 +1,9 @@ from sqlalchemy import * from sqlalchemy import exc as sa_exc from sqlalchemy.orm import * -from test.lib import * -from test.lib.testing import assert_raises_message -from test.lib import fixtures +from sqlalchemy.testing import * +from sqlalchemy.testing import assert_raises_message +from sqlalchemy.testing import fixtures class CompileTest(fixtures.ORMTest): diff --git a/test/orm/test_composites.py b/test/orm/test_composites.py index 5e5775dc28..f9af0c702e 100644 --- a/test/orm/test_composites.py +++ b/test/orm/test_composites.py @@ -1,17 +1,17 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import MetaData, Integer, String, ForeignKey, func, \ util, select -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, backref, \ class_mapper, CompositeProperty, \ validates, aliased from sqlalchemy.orm import attributes, \ composite, relationship, \ Session -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures diff --git a/test/orm/test_cycles.py b/test/orm/test_cycles.py index dce8e04deb..1da57b050a 100644 --- a/test/orm/test_cycles.py +++ b/test/orm/test_cycles.py @@ -5,14 +5,14 @@ T1<->T2, with o2m or m2o between them, and a third T3 with o2m/m2o to one/both T1/T2. """ -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, backref, \ create_session, sessionmaker -from test.lib.testing import eq_ -from test.lib.assertsql import RegexSQL, ExactSQL, CompiledSQL, AllOf -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing.assertsql import RegexSQL, ExactSQL, CompiledSQL, AllOf +from sqlalchemy.testing import fixtures class SelfReferentialTest(fixtures.MappedTest): diff --git a/test/orm/test_default_strategies.py b/test/orm/test_default_strategies.py index 675cebda83..b986ac568e 100644 --- a/test/orm/test_default_strategies.py +++ b/test/orm/test_default_strategies.py @@ -1,10 +1,10 @@ from test.orm import _fixtures -from test.lib import testing +from sqlalchemy import testing from sqlalchemy.orm import mapper, relationship, create_session from sqlalchemy import util from sqlalchemy.util import any import sqlalchemy as sa -from test.lib.testing import eq_, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises_message class DefaultStrategyOptionsTest(_fixtures.FixtureTest): diff --git a/test/orm/test_defaults.py b/test/orm/test_defaults.py index a246cddaea..2c4656e10a 100644 --- a/test/orm/test_defaults.py +++ b/test/orm/test_defaults.py @@ -1,11 +1,10 @@ - import sqlalchemy as sa from sqlalchemy import Integer, String, ForeignKey, event -from test.lib import testing -from test.lib.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session -from test.lib import fixtures -from test.lib.testing import eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import eq_ class TriggerDefaultsTest(fixtures.MappedTest): diff --git a/test/orm/test_deprecations.py b/test/orm/test_deprecations.py index e6222d1673..95fa9dd291 100644 --- a/test/orm/test_deprecations.py +++ b/test/orm/test_deprecations.py @@ -5,12 +5,12 @@ modern (i.e. not deprecated) alternative to them. The tests snippets here can be migrated directly to the wiki, docs, etc. """ -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, func -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, relation, create_session, sessionmaker -from test.lib import fixtures +from sqlalchemy.testing import fixtures class QueryAlternativesTest(fixtures.MappedTest): diff --git a/test/orm/test_descriptor.py b/test/orm/test_descriptor.py index b8b8767947..2134d87b29 100644 --- a/test/orm/test_descriptor.py +++ b/test/orm/test_descriptor.py @@ -5,8 +5,8 @@ from sqlalchemy.sql import column from sqlalchemy import Column, Integer, func, String from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.util import partial -from test.lib import fixtures -from test.lib.testing import eq_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import eq_ class TestDescriptor(descriptor_props.DescriptorProperty): def __init__(self, cls, key, descriptor=None, doc=None, diff --git a/test/orm/test_dynamic.py b/test/orm/test_dynamic.py index fd8793778a..3c4ad4b113 100644 --- a/test/orm/test_dynamic.py +++ b/test/orm/test_dynamic.py @@ -1,13 +1,13 @@ -from test.lib.testing import eq_, ne_ +from sqlalchemy.testing import eq_, ne_ import operator from sqlalchemy.orm import dynamic_loader, backref, configure_mappers -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, desc, select, func, exc -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session, Query, attributes, exc as orm_exc from sqlalchemy.orm.dynamic import AppenderMixin -from test.lib.testing import eq_, AssertsCompiledSQL, assert_raises_message, assert_raises -from test.lib import fixtures +from sqlalchemy.testing import eq_, AssertsCompiledSQL, assert_raises_message, assert_raises +from sqlalchemy.testing import fixtures from test.orm import _fixtures diff --git a/test/orm/test_eager_relations.py b/test/orm/test_eager_relations.py index 4ef55293b3..664ddb8e30 100644 --- a/test/orm/test_eager_relations.py +++ b/test/orm/test_eager_relations.py @@ -1,20 +1,20 @@ """tests of joined-eager loaded attributes""" -from test.lib.testing import eq_, is_, is_not_ +from sqlalchemy.testing import eq_, is_, is_not_ import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy.orm import joinedload, deferred, undefer, \ joinedload_all, backref, eagerload, Session, immediateload from sqlalchemy import Integer, String, Date, ForeignKey, and_, select, \ func -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session, \ lazyload, aliased, column_property from sqlalchemy.sql import operators -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message -from test.lib.assertsql import CompiledSQL -from test.lib import fixtures +from sqlalchemy.testing.assertsql import CompiledSQL +from sqlalchemy.testing import fixtures from test.orm import _fixtures from sqlalchemy.util import OrderedDict as odict import datetime diff --git a/test/orm/test_evaluator.py b/test/orm/test_evaluator.py index f632561f1f..4678100ebd 100644 --- a/test/orm/test_evaluator.py +++ b/test/orm/test_evaluator.py @@ -1,12 +1,12 @@ """Evluating SQL expressions on ORM objects""" import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import String, Integer, select -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, create_session -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from sqlalchemy import and_, or_, not_ from sqlalchemy.orm import evaluator diff --git a/test/orm/test_events.py b/test/orm/test_events.py index e49a4a6a7a..d8bef66d3c 100644 --- a/test/orm/test_events.py +++ b/test/orm/test_events.py @@ -1,15 +1,15 @@ -from test.lib.testing import assert_raises_message, assert_raises +from sqlalchemy.testing import assert_raises_message, assert_raises import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, \ create_session, class_mapper, \ Mapper, column_property, \ Session, sessionmaker, attributes from sqlalchemy.orm.instrumentation import ClassManager -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures from sqlalchemy import event diff --git a/test/orm/test_expire.py b/test/orm/test_expire.py index 16ca8b0ba2..0b1350e0aa 100644 --- a/test/orm/test_expire.py +++ b/test/orm/test_expire.py @@ -1,16 +1,16 @@ """Attribute/instance expiration, deferral of attributes, etc.""" -from test.lib.testing import eq_, assert_raises, assert_raises_message -from test.lib.util import gc_collect +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing.util import gc_collect import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, exc as sa_exc -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, create_session, \ attributes, deferred, exc as orm_exc, defer, undefer,\ strategies, state, lazyload, backref, Session -from test.lib import fixtures +from sqlalchemy.testing import fixtures from test.orm import _fixtures diff --git a/test/orm/test_froms.py b/test/orm/test_froms.py index f70f08470b..05a017bb9b 100644 --- a/test/orm/test_froms.py +++ b/test/orm/test_froms.py @@ -1,4 +1,4 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message import operator from sqlalchemy import * from sqlalchemy import exc as sa_exc, util @@ -7,14 +7,15 @@ from sqlalchemy.engine import default from sqlalchemy.orm import * from sqlalchemy.orm import attributes -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import sqlalchemy as sa -from test.lib import testing, AssertsCompiledSQL, Column, engines +from sqlalchemy import testing +from sqlalchemy.testing import AssertsCompiledSQL, Column, engines from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures from sqlalchemy.orm.util import join, outerjoin, with_parent diff --git a/test/orm/test_generative.py b/test/orm/test_generative.py index de3de3d63d..3f5da69c33 100644 --- a/test/orm/test_generative.py +++ b/test/orm/test_generative.py @@ -1,12 +1,12 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, MetaData, func -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, create_session -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures diff --git a/test/orm/test_hasparent.py b/test/orm/test_hasparent.py index b9d1cb15af..fd246b527b 100644 --- a/test/orm/test_hasparent.py +++ b/test/orm/test_hasparent.py @@ -1,18 +1,18 @@ """test the current state of the hasparent() flag.""" -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy import Integer, String, ForeignKey, Sequence, \ exc as sa_exc -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session, \ sessionmaker, class_mapper, backref, Session from sqlalchemy.orm import attributes, exc as orm_exc -from test.lib import testing -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.util import gc_collect +from sqlalchemy.testing.util import gc_collect class ParentRemovalTest(fixtures.MappedTest): diff --git a/test/orm/test_immediate_load.py b/test/orm/test_immediate_load.py index e809ebfe63..38dec75bd0 100644 --- a/test/orm/test_immediate_load.py +++ b/test/orm/test_immediate_load.py @@ -1,8 +1,8 @@ """basic tests of lazy loaded attributes""" -from test.lib import testing +from sqlalchemy import testing from sqlalchemy.orm import mapper, relationship, create_session, immediateload -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from test.orm import _fixtures diff --git a/test/orm/test_inspect.py b/test/orm/test_inspect.py index bd43e43d6a..f504ad16e1 100644 --- a/test/orm/test_inspect.py +++ b/test/orm/test_inspect.py @@ -1,12 +1,12 @@ """test the inspection registry system.""" -from test.lib.testing import eq_, assert_raises_message, is_ +from sqlalchemy.testing import eq_, assert_raises_message, is_ from sqlalchemy import exc, util from sqlalchemy import inspect from test.orm import _fixtures from sqlalchemy.orm import class_mapper, synonym, Session, aliased from sqlalchemy.orm.attributes import instance_state, NO_VALUE -from test.lib import testing +from sqlalchemy import testing class TestORMInspection(_fixtures.FixtureTest): @classmethod diff --git a/test/orm/test_instrumentation.py b/test/orm/test_instrumentation.py index d2388856fd..01b678fac8 100644 --- a/test/orm/test_instrumentation.py +++ b/test/orm/test_instrumentation.py @@ -1,13 +1,13 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import sqlalchemy as sa from sqlalchemy import MetaData, Integer, ForeignKey, util, event from sqlalchemy.orm import mapper, relationship, create_session, \ attributes, class_mapper, clear_mappers, instrumentation, events -from test.lib.schema import Table -from test.lib.schema import Column -from test.lib.testing import eq_, ne_ -from test.lib import fixtures, testing +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column +from sqlalchemy.testing import eq_, ne_ +from sqlalchemy.testing import fixtures, testing class InitTest(fixtures.ORMTest): diff --git a/test/orm/test_joins.py b/test/orm/test_joins.py index 086897186f..358c3ae8d6 100644 --- a/test/orm/test_joins.py +++ b/test/orm/test_joins.py @@ -1,4 +1,4 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message import operator from sqlalchemy import * from sqlalchemy import exc as sa_exc, util @@ -7,14 +7,14 @@ from sqlalchemy.engine import default from sqlalchemy.orm import * from sqlalchemy.orm import attributes -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import sqlalchemy as sa -from test.lib import testing, AssertsCompiledSQL, Column, engines - +from sqlalchemy import testing +from sqlalchemy.testing import AssertsCompiledSQL, Column, engines from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures from sqlalchemy.orm.util import join, outerjoin, with_parent diff --git a/test/orm/test_lazy_relations.py b/test/orm/test_lazy_relations.py index 297d027f5d..66b1eb5e48 100644 --- a/test/orm/test_lazy_relations.py +++ b/test/orm/test_lazy_relations.py @@ -1,18 +1,18 @@ """basic tests of lazy loaded attributes""" -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import datetime from sqlalchemy import exc as sa_exc from sqlalchemy.orm import attributes, exc as orm_exc import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, SmallInteger from sqlalchemy.types import TypeDecorator -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, create_session -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures diff --git a/test/orm/test_load_on_fks.py b/test/orm/test_load_on_fks.py index 05b78ccb87..813d8d17ad 100644 --- a/test/orm/test_load_on_fks.py +++ b/test/orm/test_load_on_fks.py @@ -2,12 +2,12 @@ from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.ext.declarative import declarative_base -from test.lib.testing import eq_, AssertsExecutionResults, assert_raises -from test.lib import testing -from test.lib import fixtures +from sqlalchemy.testing import eq_, AssertsExecutionResults, assert_raises +from sqlalchemy import testing +from sqlalchemy.testing import fixtures from sqlalchemy.orm.attributes import instance_state from sqlalchemy.orm.exc import FlushError -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column engine = testing.db diff --git a/test/orm/test_lockmode.py b/test/orm/test_lockmode.py index b2bc608659..0fe82f3944 100644 --- a/test/orm/test_lockmode.py +++ b/test/orm/test_lockmode.py @@ -2,8 +2,8 @@ from sqlalchemy.engine import default from sqlalchemy.databases import * from sqlalchemy.orm import mapper from sqlalchemy.orm import Session -from test.lib import AssertsCompiledSQL -from test.lib.testing import assert_raises_message +from sqlalchemy.testing import AssertsCompiledSQL +from sqlalchemy.testing import assert_raises_message from test.orm import _fixtures diff --git a/test/orm/test_manytomany.py b/test/orm/test_manytomany.py index ed9075833b..ca9c3c0959 100644 --- a/test/orm/test_manytomany.py +++ b/test/orm/test_manytomany.py @@ -1,13 +1,13 @@ -from test.lib.testing import assert_raises, \ +from sqlalchemy.testing import assert_raises, \ assert_raises_message, eq_ import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, create_session, \ exc as orm_exc, sessionmaker -from test.lib import fixtures +from sqlalchemy.testing import fixtures class M2MTest(fixtures.MappedTest): diff --git a/test/orm/test_mapper.py b/test/orm/test_mapper.py index 487ec066f4..b2e36b2736 100644 --- a/test/orm/test_mapper.py +++ b/test/orm/test_mapper.py @@ -1,10 +1,10 @@ """General mapper operations with an emphasis on selecting/loading.""" -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import MetaData, Integer, String, ForeignKey, func, util -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.engine import default from sqlalchemy.orm import mapper, relationship, backref, \ create_session, class_mapper, configure_mappers, reconstructor, \ @@ -12,10 +12,10 @@ from sqlalchemy.orm import mapper, relationship, backref, \ column_property, composite, dynamic_loader, \ comparable_property, Session from sqlalchemy.orm.persistence import _sort_states -from test.lib.testing import eq_, AssertsCompiledSQL, is_ -from test.lib import fixtures +from sqlalchemy.testing import eq_, AssertsCompiledSQL, is_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.assertsql import CompiledSQL +from sqlalchemy.testing.assertsql import CompiledSQL import logging class MapperTest(_fixtures.FixtureTest, AssertsCompiledSQL): diff --git a/test/orm/test_merge.py b/test/orm/test_merge.py index 47203b874e..e1474f39b1 100644 --- a/test/orm/test_merge.py +++ b/test/orm/test_merge.py @@ -1,19 +1,19 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import sqlalchemy as sa from sqlalchemy import Integer, PickleType, String, ForeignKey import operator -from test.lib import testing +from sqlalchemy import testing from sqlalchemy.util import OrderedSet from sqlalchemy.orm import mapper, relationship, create_session, \ PropComparator, synonym, comparable_property, sessionmaker, \ attributes, Session, backref, configure_mappers from sqlalchemy.orm.collections import attribute_mapped_collection from sqlalchemy.orm.interfaces import MapperOption -from test.lib.testing import eq_, ne_ -from test.lib import fixtures +from sqlalchemy.testing import eq_, ne_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures from sqlalchemy import event, and_, case -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column class MergeTest(_fixtures.FixtureTest): """Session.merge() functionality""" diff --git a/test/orm/test_naturalpks.py b/test/orm/test_naturalpks.py index 0592b1e10c..9ad54fd10c 100644 --- a/test/orm/test_naturalpks.py +++ b/test/orm/test_naturalpks.py @@ -3,16 +3,16 @@ Primary key changing capabilities and passive/non-passive cascading updates. """ from __future__ import with_statement -from test.lib.testing import eq_, ne_, \ +from sqlalchemy.testing import eq_, ne_, \ assert_raises, assert_raises_message import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, Unicode -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session, backref, Session from sqlalchemy.orm.session import make_transient -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures class NaturalPKTest(fixtures.MappedTest): @@ -965,7 +965,7 @@ class CascadeToFKPKTest(fixtures.MappedTest, testing.AssertsCompiledSQL): sess.add(u2) sess.add(a2) - from test.lib.assertsql import CompiledSQL + from sqlalchemy.testing.assertsql import CompiledSQL # test that the primary key columns of addresses are not # being updated as well, since this is a row switch. diff --git a/test/orm/test_of_type.py b/test/orm/test_of_type.py index 40d553fe84..28bcc6e811 100644 --- a/test/orm/test_of_type.py +++ b/test/orm/test_of_type.py @@ -2,11 +2,12 @@ from sqlalchemy.orm import Session, aliased, with_polymorphic, \ contains_eager, joinedload, subqueryload, relationship,\ subqueryload_all, joinedload_all from sqlalchemy import and_ -from test.lib import testing, fixtures -from test.lib.testing import assert_raises, eq_ -from test.lib.schema import Column +from sqlalchemy import testing +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import assert_raises, eq_ +from sqlalchemy.testing.schema import Column from sqlalchemy.engine import default -from test.lib.entities import ComparableEntity +from sqlalchemy.testing.entities import ComparableEntity from sqlalchemy import Integer, String, ForeignKey from .inheritance._poly_fixtures import Company, Person, Engineer, Manager, Boss, \ Machine, Paperwork, _PolymorphicFixtureBase, _Polymorphic,\ diff --git a/test/orm/test_onetoone.py b/test/orm/test_onetoone.py index 09dc379b89..19b13c4ddc 100644 --- a/test/orm/test_onetoone.py +++ b/test/orm/test_onetoone.py @@ -1,9 +1,9 @@ import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session -from test.lib import fixtures +from sqlalchemy.testing import fixtures class O2OTest(fixtures.MappedTest): diff --git a/test/orm/test_pickled.py b/test/orm/test_pickled.py index 88867edcba..d70d36b59e 100644 --- a/test/orm/test_pickled.py +++ b/test/orm/test_pickled.py @@ -1,11 +1,11 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy.util import pickle import sqlalchemy as sa -from test.lib import testing -from test.lib.util import picklers -from test.lib.testing import assert_raises_message +from sqlalchemy import testing +from sqlalchemy.testing.util import picklers +from sqlalchemy.testing import assert_raises_message from sqlalchemy import Integer, String, ForeignKey, exc, MetaData -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, create_session, \ sessionmaker, attributes, interfaces,\ clear_mappers, exc as orm_exc,\ @@ -13,9 +13,9 @@ from sqlalchemy.orm import mapper, relationship, create_session, \ lazyload, aliased from sqlalchemy.orm.collections import attribute_mapped_collection, \ column_mapped_collection -from test.lib import fixtures +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.pickleable import User, Address, Dingaling, Order, \ +from sqlalchemy.testing.pickleable import User, Address, Dingaling, Order, \ Child1, Child2, Parent, Screen, EmailUser @@ -87,7 +87,7 @@ class PickleTest(fixtures.MappedTest): assert_raises_message( orm_exc.UnmappedInstanceError, - "Cannot deserialize object of type - no mapper()", + "Cannot deserialize object of type - no mapper()", pickle.loads, u1_pickled) def test_no_instrumentation(self): diff --git a/test/orm/test_query.py b/test/orm/test_query.py index 38739afffd..56275a7351 100644 --- a/test/orm/test_query.py +++ b/test/orm/test_query.py @@ -1,4 +1,3 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message import operator from sqlalchemy import MetaData, null, exists, text, union, literal, \ literal_column, func, between, Unicode, desc, and_, bindparam, \ @@ -11,14 +10,14 @@ from sqlalchemy.orm import attributes, mapper, relationship, backref, \ configure_mappers, create_session, synonym, Session, class_mapper, \ aliased, column_property, joinedload_all, joinedload, Query,\ util as orm_util -from test.lib.assertsql import CompiledSQL -from test.lib.testing import eq_ -from test.lib.schema import Table, Column - +from sqlalchemy.testing.assertsql import CompiledSQL +from sqlalchemy.testing.schema import Table, Column import sqlalchemy as sa -from test.lib import testing, AssertsCompiledSQL, engines +from sqlalchemy import testing +from sqlalchemy.testing.assertions import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import AssertsCompiledSQL from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures, engines from sqlalchemy.orm.util import join, outerjoin, with_parent diff --git a/test/orm/test_rel_fn.py b/test/orm/test_rel_fn.py index f5fa1d4c97..f23d40be76 100644 --- a/test/orm/test_rel_fn.py +++ b/test/orm/test_rel_fn.py @@ -1,6 +1,6 @@ -from test.lib.testing import assert_raises, assert_raises_message, eq_, \ +from sqlalchemy.testing import assert_raises, assert_raises_message, eq_, \ AssertsCompiledSQL, is_ -from test.lib import fixtures +from sqlalchemy.testing import fixtures from sqlalchemy.orm import relationships, foreign, remote, remote_foreign from sqlalchemy import MetaData, Table, Column, ForeignKey, Integer, \ select, ForeignKeyConstraint, exc, func, and_ diff --git a/test/orm/test_relationships.py b/test/orm/test_relationships.py index 394a1fe7ac..a2a81d0eed 100644 --- a/test/orm/test_relationships.py +++ b/test/orm/test_relationships.py @@ -1,17 +1,17 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import datetime import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import Integer, String, ForeignKey, MetaData, and_ -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, relation, \ backref, create_session, configure_mappers, \ clear_mappers, sessionmaker, attributes,\ Session, composite, column_property, foreign,\ remote from sqlalchemy.orm.interfaces import ONETOMANY, MANYTOONE, MANYTOMANY -from test.lib.testing import eq_, startswith_, AssertsCompiledSQL, is_ -from test.lib import fixtures +from sqlalchemy.testing import eq_, startswith_, AssertsCompiledSQL, is_ +from sqlalchemy.testing import fixtures from test.orm import _fixtures from sqlalchemy import exc diff --git a/test/orm/test_scoping.py b/test/orm/test_scoping.py index 978a8bc1da..87557a162c 100644 --- a/test/orm/test_scoping.py +++ b/test/orm/test_scoping.py @@ -1,12 +1,12 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy.orm import scoped_session from sqlalchemy import Integer, String, ForeignKey -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, query -from test.lib.testing import eq_ -from test.lib import fixtures +from sqlalchemy.testing import eq_ +from sqlalchemy.testing import fixtures diff --git a/test/orm/test_selectable.py b/test/orm/test_selectable.py index 1a46e3b6d7..42347213e1 100644 --- a/test/orm/test_selectable.py +++ b/test/orm/test_selectable.py @@ -1,12 +1,12 @@ """Generic mapping to Select statements""" -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message import sqlalchemy as sa -from test.lib import testing +from sqlalchemy import testing from sqlalchemy import String, Integer, select -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, Session -from test.lib.testing import eq_, AssertsCompiledSQL -from test.lib import fixtures +from sqlalchemy.testing import eq_, AssertsCompiledSQL +from sqlalchemy.testing import fixtures diff --git a/test/orm/test_session.py b/test/orm/test_session.py index 28293675df..61fed6d18d 100644 --- a/test/orm/test_session.py +++ b/test/orm/test_session.py @@ -1,20 +1,20 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, assert_warnings -from test.lib.util import gc_collect -from test.lib import pickleable +from sqlalchemy.testing.util import gc_collect +from sqlalchemy.testing import pickleable from sqlalchemy.util import pickle import inspect from sqlalchemy.orm import create_session, sessionmaker, attributes, \ make_transient, Session import sqlalchemy as sa -from test.lib import engines, testing, config +from sqlalchemy.testing import engines, testing, config from sqlalchemy import Integer, String, Sequence -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, backref, joinedload, \ exc as orm_exc, object_session from sqlalchemy.util import pypy -from test.lib import fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import fixtures from test.orm import _fixtures class SessionTest(_fixtures.FixtureTest): diff --git a/test/orm/test_subquery_relations.py b/test/orm/test_subquery_relations.py index 8d7c89044e..f6e2299b42 100644 --- a/test/orm/test_subquery_relations.py +++ b/test/orm/test_subquery_relations.py @@ -1,15 +1,15 @@ -from test.lib.testing import eq_, is_, is_not_ -from test.lib import testing -from test.lib.schema import Table, Column +from sqlalchemy.testing import eq_, is_, is_not_ +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column from sqlalchemy import Integer, String, ForeignKey, bindparam, inspect from sqlalchemy.orm import backref, subqueryload, subqueryload_all, \ mapper, relationship, clear_mappers, create_session, lazyload, \ aliased, joinedload, deferred, undefer, eagerload_all,\ Session -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message -from test.lib.assertsql import CompiledSQL -from test.lib import fixtures +from sqlalchemy.testing.assertsql import CompiledSQL +from sqlalchemy.testing import fixtures from test.orm import _fixtures import sqlalchemy as sa diff --git a/test/orm/test_sync.py b/test/orm/test_sync.py index 9134e47ce4..a2c894725c 100644 --- a/test/orm/test_sync.py +++ b/test/orm/test_sync.py @@ -1,8 +1,8 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message -from test.lib import testing -from test.lib.schema import Table, Column +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures from sqlalchemy import Integer, String, ForeignKey, func from sqlalchemy.orm import mapper, relationship, backref, \ create_session, unitofwork, attributes,\ diff --git a/test/orm/test_transaction.py b/test/orm/test_transaction.py index fdbf6ae1f2..d2b8b8b859 100644 --- a/test/orm/test_transaction.py +++ b/test/orm/test_transaction.py @@ -1,15 +1,15 @@ -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, assert_warnings from sqlalchemy import * from sqlalchemy.orm import attributes from sqlalchemy import exc as sa_exc, event from sqlalchemy.orm import exc as orm_exc from sqlalchemy.orm import * -from test.lib.util import gc_collect -from test.lib import testing -from test.lib import fixtures -from test.lib import engines +from sqlalchemy.testing.util import gc_collect +from sqlalchemy import testing +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import engines from test.orm._fixtures import FixtureTest diff --git a/test/orm/test_unitofwork.py b/test/orm/test_unitofwork.py index 9691c38a6d..8f354b083c 100644 --- a/test/orm/test_unitofwork.py +++ b/test/orm/test_unitofwork.py @@ -1,25 +1,25 @@ # coding: utf-8 """Tests unitofwork operations.""" -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message import datetime import operator from sqlalchemy.orm import mapper as orm_mapper import sqlalchemy as sa from sqlalchemy import Integer, String, ForeignKey, literal_column, event -from test.lib import engines, testing, pickleable -from test.lib.schema import Table -from test.lib.schema import Column +from sqlalchemy.testing import engines, testing, pickleable +from sqlalchemy.testing.schema import Table +from sqlalchemy.testing.schema import Column from sqlalchemy.orm import mapper, relationship, create_session, \ column_property, attributes, Session, reconstructor, object_session,\ exc as orm_exc -from test.lib.testing import eq_, ne_ -from test.lib.util import gc_collect -from test.lib import fixtures +from sqlalchemy.testing import eq_, ne_ +from sqlalchemy.testing.util import gc_collect +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib import fixtures -from test.lib.assertsql import AllOf, CompiledSQL +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.assertsql import AllOf, CompiledSQL import gc class UnitOfWorkTest(object): diff --git a/test/orm/test_unitofworkv2.py b/test/orm/test_unitofworkv2.py index 860fffdf50..7c7337c628 100644 --- a/test/orm/test_unitofworkv2.py +++ b/test/orm/test_unitofworkv2.py @@ -1,14 +1,15 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message -from test.lib import testing, engines -from test.lib.schema import Table, Column +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy import testing +from sqlalchemy.testing import engines +from sqlalchemy.testing.schema import Table, Column from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures from sqlalchemy import Integer, String, ForeignKey, func from sqlalchemy.orm import mapper, relationship, backref, \ create_session, unitofwork, attributes,\ Session, class_mapper, sync, exc as orm_exc -from test.lib.assertsql import AllOf, CompiledSQL +from sqlalchemy.testing.assertsql import AllOf, CompiledSQL class AssertsUOW(object): def _get_test_uow(self, session): diff --git a/test/orm/test_update_delete.py b/test/orm/test_update_delete.py index e259c52295..85b880710c 100644 --- a/test/orm/test_update_delete.py +++ b/test/orm/test_update_delete.py @@ -1,9 +1,9 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message -from test.lib import fixtures, testing +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import fixtures, testing from sqlalchemy import Integer, String, ForeignKey, or_, and_, exc, select, func from sqlalchemy.orm import mapper, relationship, backref, Session, joinedload -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column diff --git a/test/orm/test_utils.py b/test/orm/test_utils.py index 617f1d5384..00fbe77715 100644 --- a/test/orm/test_utils.py +++ b/test/orm/test_utils.py @@ -1,4 +1,4 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy.orm import interfaces, util from sqlalchemy import Column from sqlalchemy import Integer @@ -6,10 +6,10 @@ from sqlalchemy import MetaData from sqlalchemy import Table from sqlalchemy.orm import aliased from sqlalchemy.orm import mapper, create_session -from test.lib import testing -from test.lib import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ class AliasedClassTest(fixtures.TestBase): diff --git a/test/orm/test_versioning.py b/test/orm/test_versioning.py index 0faeb133de..aa1e996028 100644 --- a/test/orm/test_versioning.py +++ b/test/orm/test_versioning.py @@ -1,16 +1,16 @@ import datetime import sqlalchemy as sa -from test.lib import engines, testing +from sqlalchemy.testing import engines, testing from sqlalchemy import Integer, String, Date, ForeignKey, literal_column, \ orm, exc, select, TypeDecorator -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.orm import mapper, relationship, Session, \ create_session, column_property, sessionmaker,\ exc as orm_exc -from test.lib.testing import eq_, ne_, assert_raises, assert_raises_message -from test.lib import fixtures +from sqlalchemy.testing import eq_, ne_, assert_raises, assert_raises_message +from sqlalchemy.testing import fixtures from test.orm import _fixtures -from test.lib import fixtures +from sqlalchemy.testing import fixtures _uuids = [ diff --git a/test/perf/insertspeed.py b/test/perf/insertspeed.py index 9b397771dd..03d2c41442 100644 --- a/test/perf/insertspeed.py +++ b/test/perf/insertspeed.py @@ -1,7 +1,7 @@ import sys, time from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import profiling +from sqlalchemy.testing import profiling db = create_engine('sqlite://') metadata = MetaData(db) diff --git a/test/perf/large_flush.py b/test/perf/large_flush.py index b23de080ce..b1ecce8525 100644 --- a/test/perf/large_flush.py +++ b/test/perf/large_flush.py @@ -3,7 +3,7 @@ from sqlalchemy import create_engine, MetaData, orm from sqlalchemy import Column, ForeignKey from sqlalchemy import Integer, String from sqlalchemy.orm import mapper -from test.lib import profiling +from sqlalchemy.testing import profiling class Object(object): pass diff --git a/test/perf/objselectspeed.py b/test/perf/objselectspeed.py index f64c73c690..c0ed884442 100644 --- a/test/perf/objselectspeed.py +++ b/test/perf/objselectspeed.py @@ -1,8 +1,8 @@ import time, resource from sqlalchemy import * from sqlalchemy.orm import * -from test.lib.util import gc_collect -from test.lib import profiling +from sqlalchemy.testing.util import gc_collect +from sqlalchemy.testing import profiling db = create_engine('sqlite://') metadata = MetaData(db) diff --git a/test/perf/objupdatespeed.py b/test/perf/objupdatespeed.py index 078d95fa3b..98d10180e8 100644 --- a/test/perf/objupdatespeed.py +++ b/test/perf/objupdatespeed.py @@ -1,8 +1,8 @@ import time, resource from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import * -from test.lib.util import gc_collect +from sqlalchemy.testing import * +from sqlalchemy.testing.util import gc_collect NUM = 100 diff --git a/test/perf/ormsession.py b/test/perf/ormsession.py index aff265ff19..5e38d6e802 100644 --- a/test/perf/ormsession.py +++ b/test/perf/ormsession.py @@ -3,8 +3,8 @@ from datetime import datetime from sqlalchemy import * from sqlalchemy.orm import * -from test.lib import * -from test.lib.profiling import profiled +from sqlalchemy.testing import * +from sqlalchemy.testing.profiling import profiled class Item(object): def __repr__(self): diff --git a/test/perf/sessions.py b/test/perf/sessions.py index 75106f6ca2..80553fe48a 100644 --- a/test/perf/sessions.py +++ b/test/perf/sessions.py @@ -1,8 +1,8 @@ from sqlalchemy import * from sqlalchemy.orm import * -from test.lib.compat import gc_collect -from test.lib import AssertsExecutionResults, profiling, testing +from sqlalchemy.testing.compat import gc_collect +from sqlalchemy.testing import AssertsExecutionResults, profiling, testing from test.orm import _fixtures # in this test we are specifically looking for time spent in the attributes.InstanceState.__cleanup() method. diff --git a/test/lib/profiles.txt b/test/profiles.txt similarity index 100% rename from test/lib/profiles.txt rename to test/profiles.txt diff --git a/test/lib/requires.py b/test/requirements.py similarity index 98% rename from test/lib/requires.py rename to test/requirements.py index 1fff3d7c2c..0426049351 100644 --- a/test/lib/requires.py +++ b/test/requirements.py @@ -5,7 +5,10 @@ target database. """ -from .exclusions import \ +from sqlalchemy import util +import sys +from sqlalchemy.testing.suite.requirements import SuiteRequirements +from sqlalchemy.testing.exclusions import \ skip, \ skip_if,\ only_if,\ @@ -22,9 +25,6 @@ def no_support(db, reason): def exclude(db, op, spec, description=None): return SpecPredicate(db, op, spec, description=description) -from sqlalchemy import util -from ..bootstrap import config -import sys crashes = skip @@ -35,13 +35,7 @@ def _chain_decorators_on(*decorators): return fn return decorate -class Requirements(object): - def __init__(self, db, config): - self.db = db - self.config = config - - -class DefaultRequirements(Requirements): +class DefaultRequirements(SuiteRequirements): @property def deferrable_or_no_constraints(self): """Target database must support derferable constraints.""" @@ -451,7 +445,7 @@ class DefaultRequirements(Requirements): """ return _chain_decorators_on( - skip_if(lambda: config.options.low_connections) + skip_if(lambda: self.config.options.low_connections) ) @property diff --git a/test/sql/test_case_statement.py b/test/sql/test_case_statement.py index 7b8ae88db3..944a15384b 100644 --- a/test/sql/test_case_statement.py +++ b/test/sql/test_case_statement.py @@ -1,7 +1,8 @@ -from test.lib.testing import assert_raises, assert_raises_message, eq_ +from sqlalchemy.testing import assert_raises, assert_raises_message, eq_ import sys from sqlalchemy import * -from test.lib import * +from sqlalchemy.testing import fixtures, AssertsCompiledSQL +from sqlalchemy import testing from sqlalchemy import util, exc from sqlalchemy.sql import table, column diff --git a/test/sql/test_compiler.py b/test/sql/test_compiler.py index 356f2e8b1f..3c6e687cac 100644 --- a/test/sql/test_compiler.py +++ b/test/sql/test_compiler.py @@ -10,7 +10,9 @@ styling and coherent test organization. """ -from test.lib.testing import eq_, is_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, is_, assert_raises, assert_raises_message +from sqlalchemy import testing +from sqlalchemy.testing import fixtures, AssertsCompiledSQL import datetime, re, operator, decimal from sqlalchemy import * from sqlalchemy import exc, sql, util, types, schema @@ -18,7 +20,6 @@ from sqlalchemy.sql import table, column, label, compiler from sqlalchemy.sql.expression import ClauseList, _literal_as_text, HasPrefixes from sqlalchemy.engine import default from sqlalchemy.databases import * -from test.lib import * from sqlalchemy.ext.compiler import compiles table1 = table('mytable', diff --git a/test/sql/test_constraints.py b/test/sql/test_constraints.py index 75a7cb2e15..261932a7f9 100644 --- a/test/sql/test_constraints.py +++ b/test/sql/test_constraints.py @@ -1,11 +1,12 @@ -from test.lib.testing import assert_raises, assert_raises_message +from sqlalchemy.testing import assert_raises, assert_raises_message from sqlalchemy import * from sqlalchemy import exc, schema -from test.lib import * -from test.lib import config, engines +from sqlalchemy.testing import fixtures, AssertsExecutionResults, AssertsCompiledSQL +from sqlalchemy import testing +from sqlalchemy.testing import config, engines from sqlalchemy.engine import ddl -from test.lib.testing import eq_ -from test.lib.assertsql import AllOf, RegexSQL, ExactSQL, CompiledSQL +from sqlalchemy.testing import eq_ +from sqlalchemy.testing.assertsql import AllOf, RegexSQL, ExactSQL, CompiledSQL from sqlalchemy.dialects.postgresql import base as postgresql class ConstraintTest(fixtures.TestBase, AssertsExecutionResults, AssertsCompiledSQL): diff --git a/test/sql/test_cte.py b/test/sql/test_cte.py index 6360e278cb..28756873f8 100644 --- a/test/sql/test_cte.py +++ b/test/sql/test_cte.py @@ -1,5 +1,5 @@ -from test.lib import fixtures -from test.lib.testing import AssertsCompiledSQL, assert_raises_message +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import AssertsCompiledSQL, assert_raises_message from sqlalchemy.sql import table, column, select, func, literal from sqlalchemy.dialects import mssql from sqlalchemy.engine import default diff --git a/test/sql/test_defaults.py b/test/sql/test_defaults.py index 55aa86633b..1c31314d8c 100644 --- a/test/sql/test_defaults.py +++ b/test/sql/test_defaults.py @@ -1,16 +1,17 @@ -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message import datetime from sqlalchemy.schema import CreateSequence, DropSequence from sqlalchemy.sql import select, text, literal_column import sqlalchemy as sa -from test.lib import testing, engines +from sqlalchemy import testing +from sqlalchemy.testing import engines from sqlalchemy import MetaData, Integer, String, ForeignKey, Boolean, exc,\ Sequence, func, literal, Unicode from sqlalchemy.types import TypeDecorator, TypeEngine -from test.lib.schema import Table, Column -from test.lib.testing import eq_ +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy.testing import eq_ from sqlalchemy.dialects import sqlite -from test.lib import fixtures +from sqlalchemy.testing import fixtures class DefaultTest(fixtures.TestBase): diff --git a/test/sql/test_functions.py b/test/sql/test_functions.py index 478f413811..ae8e28e248 100644 --- a/test/sql/test_functions.py +++ b/test/sql/test_functions.py @@ -1,15 +1,16 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import datetime from sqlalchemy import * from sqlalchemy.sql import table, column from sqlalchemy import sql, util from sqlalchemy.sql.compiler import BIND_TEMPLATES -from test.lib.engines import all_dialects +from sqlalchemy.testing.engines import all_dialects from sqlalchemy import types as sqltypes from sqlalchemy.sql import functions from sqlalchemy.sql.functions import GenericFunction from sqlalchemy.util.compat import decimal -from test.lib import testing, fixtures, AssertsCompiledSQL, engines +from sqlalchemy import testing +from sqlalchemy.testing import fixtures, AssertsCompiledSQL, engines from sqlalchemy.dialects import sqlite, postgresql, mysql, oracle diff --git a/test/sql/test_generative.py b/test/sql/test_generative.py index b785599607..f1c118e15c 100644 --- a/test/sql/test_generative.py +++ b/test/sql/test_generative.py @@ -1,11 +1,14 @@ from sqlalchemy import * from sqlalchemy.sql import table, column, ClauseElement, operators from sqlalchemy.sql.expression import _clone, _from_objects -from test.lib import * -from sqlalchemy.sql.visitors import * +from sqlalchemy.testing import fixtures, AssertsExecutionResults, \ + AssertsCompiledSQL +from sqlalchemy import testing +from sqlalchemy.sql.visitors import ClauseVisitor, CloningVisitor, \ + cloned_traverse, ReplacingCloningVisitor from sqlalchemy import util, exc from sqlalchemy.sql import util as sql_util -from test.lib.testing import eq_, ne_, assert_raises +from sqlalchemy.testing import eq_, ne_, assert_raises class TraversalTest(fixtures.TestBase, AssertsExecutionResults): """test ClauseVisitor's traversal, particularly its diff --git a/test/sql/test_inspect.py b/test/sql/test_inspect.py index 9fcba16bdc..8a02514982 100644 --- a/test/sql/test_inspect.py +++ b/test/sql/test_inspect.py @@ -2,8 +2,8 @@ from sqlalchemy import inspect from sqlalchemy import Table, Column, Integer, MetaData -from test.lib import fixtures -from test.lib.testing import is_ +from sqlalchemy.testing import fixtures +from sqlalchemy.testing import is_ class TestCoreInspection(fixtures.TestBase): diff --git a/test/sql/test_labels.py b/test/sql/test_labels.py index c814a01308..d6ebf3f801 100644 --- a/test/sql/test_labels.py +++ b/test/sql/test_labels.py @@ -1,11 +1,12 @@ -from test.lib.testing import assert_raises, assert_raises_message, eq_ -from test.lib.engines import testing_engine -from test.lib import fixtures, AssertsCompiledSQL, testing +from sqlalchemy.testing import assert_raises, assert_raises_message, eq_ +from sqlalchemy.testing.engines import testing_engine +from sqlalchemy.testing import fixtures, AssertsCompiledSQL +from sqlalchemy import testing from sqlalchemy import * from sqlalchemy import exc as exceptions from sqlalchemy.engine import default from sqlalchemy.sql import table, column -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column IDENT_LENGTH = 29 diff --git a/test/sql/test_metadata.py b/test/sql/test_metadata.py index dcf9820cc9..ba5c9e9874 100644 --- a/test/sql/test_metadata.py +++ b/test/sql/test_metadata.py @@ -1,19 +1,19 @@ -from test.lib.testing import assert_raises -from test.lib.testing import assert_raises_message -from test.lib.testing import emits_warning +from sqlalchemy.testing import assert_raises +from sqlalchemy.testing import assert_raises_message +from sqlalchemy.testing import emits_warning import pickle from sqlalchemy import Integer, String, UniqueConstraint, \ CheckConstraint, ForeignKey, MetaData, Sequence, \ ForeignKeyConstraint, ColumnDefault, Index, event,\ events, Unicode -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column from sqlalchemy import schema, exc import sqlalchemy as tsa -from test.lib import fixtures -from test.lib import testing -from test.lib.testing import ComparesTables, AssertsCompiledSQL -from test.lib.testing import eq_, is_ +from sqlalchemy.testing import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import ComparesTables, AssertsCompiledSQL +from sqlalchemy.testing import eq_, is_ class MetaDataTest(fixtures.TestBase, ComparesTables): def test_metadata_connect(self): diff --git a/test/sql/test_operators.py b/test/sql/test_operators.py index b104f60971..24b4589582 100644 --- a/test/sql/test_operators.py +++ b/test/sql/test_operators.py @@ -1,5 +1,6 @@ -from test.lib import fixtures, testing -from test.lib.testing import assert_raises_message +from sqlalchemy.testing import fixtures +from sqlalchemy import testing +from sqlalchemy.testing import assert_raises_message from sqlalchemy.sql import column, desc, asc, literal, collate from sqlalchemy.sql.expression import BinaryExpression, \ ClauseList, Grouping, \ diff --git a/test/sql/test_query.py b/test/sql/test_query.py index 70e3e97a88..d14cafc86a 100644 --- a/test/sql/test_query.py +++ b/test/sql/test_query.py @@ -1,10 +1,12 @@ -from test.lib.testing import eq_, assert_raises_message, assert_raises, is_ +from sqlalchemy.testing import eq_, assert_raises_message, assert_raises, is_ +from sqlalchemy import testing +from sqlalchemy.testing import fixtures, engines +from sqlalchemy import util import datetime from sqlalchemy import * -from sqlalchemy import exc, sql, util +from sqlalchemy import exc, sql from sqlalchemy.engine import default, result as _result -from test.lib import * -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column class QueryTest(fixtures.TestBase): diff --git a/test/sql/test_quote.py b/test/sql/test_quote.py index a714002b1a..f736a69add 100644 --- a/test/sql/test_quote.py +++ b/test/sql/test_quote.py @@ -1,7 +1,8 @@ from sqlalchemy import * from sqlalchemy import sql, schema from sqlalchemy.sql import compiler -from test.lib import * +from sqlalchemy.testing import fixtures, AssertsCompiledSQL +from sqlalchemy import testing class QuoteTest(fixtures.TestBase, AssertsCompiledSQL): __dialect__ = 'default' diff --git a/test/sql/test_returning.py b/test/sql/test_returning.py index c1ee900efd..55f4f79268 100644 --- a/test/sql/test_returning.py +++ b/test/sql/test_returning.py @@ -1,9 +1,9 @@ -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ from sqlalchemy import * -from test.lib import * -from test.lib.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.types import TypeDecorator -from test.lib import fixtures +from sqlalchemy.testing import fixtures, AssertsExecutionResults, engines class ReturningTest(fixtures.TestBase, AssertsExecutionResults): __requires__ = 'returning', diff --git a/test/sql/test_rowcount.py b/test/sql/test_rowcount.py index c14fa22a13..f14f78989b 100644 --- a/test/sql/test_rowcount.py +++ b/test/sql/test_rowcount.py @@ -1,5 +1,6 @@ from sqlalchemy import * -from test.lib import * +from sqlalchemy.testing import fixtures, AssertsExecutionResults +from sqlalchemy import testing class FoundRowsTest(fixtures.TestBase, AssertsExecutionResults): diff --git a/test/sql/test_selectable.py b/test/sql/test_selectable.py index b81bd8e6fe..374147a1b7 100644 --- a/test/sql/test_selectable.py +++ b/test/sql/test_selectable.py @@ -1,14 +1,16 @@ """Test various algorithmic properties of selectables.""" -from test.lib.testing import eq_, assert_raises, \ +from sqlalchemy.testing import eq_, assert_raises, \ assert_raises_message, is_ from sqlalchemy import * -from test.lib import * +from sqlalchemy.testing import fixtures, AssertsCompiledSQL, \ + AssertsExecutionResults +from sqlalchemy import testing from sqlalchemy.sql import util as sql_util, visitors from sqlalchemy import exc from sqlalchemy.sql import table, column, null from sqlalchemy import util -from test.lib import fixtures +from sqlalchemy.testing import fixtures metadata = MetaData() table1 = Table('table1', metadata, diff --git a/test/sql/test_type_expressions.py b/test/sql/test_type_expressions.py index 320dc5d7c2..4bb8a928d6 100644 --- a/test/sql/test_type_expressions.py +++ b/test/sql/test_type_expressions.py @@ -1,6 +1,8 @@ from sqlalchemy import Table, Column, String, func, MetaData, select, TypeDecorator, cast -from test.lib import fixtures, AssertsCompiledSQL, testing -from test.lib.testing import eq_ +from sqlalchemy.testing import fixtures, AssertsCompiledSQL +from sqlalchemy import testing +from sqlalchemy.testing import eq_ + class _ExprFixture(object): def _fixture(self): diff --git a/test/sql/test_types.py b/test/sql/test_types.py index ff22ea4de6..81b572989a 100644 --- a/test/sql/test_types.py +++ b/test/sql/test_types.py @@ -1,5 +1,5 @@ # coding: utf-8 -from test.lib.testing import eq_, assert_raises, assert_raises_message +from sqlalchemy.testing import eq_, assert_raises, assert_raises_message import decimal import datetime, os, re from sqlalchemy import * @@ -7,15 +7,17 @@ from sqlalchemy import exc, types, util, schema, dialects for name in dialects.__all__: __import__("sqlalchemy.dialects.%s" % name) from sqlalchemy.sql import operators, column, table -from test.lib.testing import eq_ +from sqlalchemy.testing import eq_ import sqlalchemy.engine.url as url from sqlalchemy.engine import default -from test.lib.schema import Table, Column -from test.lib import * -from test.lib.util import picklers +from sqlalchemy.testing.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing import AssertsCompiledSQL, AssertsExecutionResults, \ + engines, pickleable +from sqlalchemy.testing.util import picklers from sqlalchemy.util.compat import decimal -from test.lib.util import round_decimal -from test.lib import fixtures +from sqlalchemy.testing.util import round_decimal +from sqlalchemy.testing import fixtures class AdaptTest(fixtures.TestBase): def _all_dialect_modules(self): diff --git a/test/sql/test_unicode.py b/test/sql/test_unicode.py index e3fa0a4b33..37e44522e0 100644 --- a/test/sql/test_unicode.py +++ b/test/sql/test_unicode.py @@ -2,10 +2,11 @@ """verrrrry basic unicode column name testing""" from sqlalchemy import * -from test.lib import fixtures, engines, testing -from test.lib.engines import utf8_engine +from sqlalchemy.testing import fixtures, engines +from sqlalchemy import testing +from sqlalchemy.testing.engines import utf8_engine from sqlalchemy.sql import column -from test.lib.schema import Table, Column +from sqlalchemy.testing.schema import Table, Column class UnicodeSchemaTest(fixtures.TestBase): __requires__ = ('unicode_ddl',) diff --git a/test/sql/test_update.py b/test/sql/test_update.py index 79079e5127..b46489cd24 100644 --- a/test/sql/test_update.py +++ b/test/sql/test_update.py @@ -1,10 +1,11 @@ -from test.lib.testing import eq_, assert_raises_message, assert_raises, AssertsCompiledSQL +from sqlalchemy.testing import eq_, assert_raises_message, assert_raises, AssertsCompiledSQL import datetime from sqlalchemy import * from sqlalchemy import exc, sql, util from sqlalchemy.engine import default, base -from test.lib import * -from test.lib.schema import Table, Column +from sqlalchemy import testing +from sqlalchemy.testing import fixtures +from sqlalchemy.testing.schema import Table, Column from sqlalchemy.dialects import mysql class _UpdateFromTestBase(object):