diff options
Diffstat (limited to 'lib/sqlalchemy/testing')
31 files changed, 347 insertions, 249 deletions
diff --git a/lib/sqlalchemy/testing/__init__.py b/lib/sqlalchemy/testing/__init__.py index f46ca4528..e41c3addf 100644 --- a/lib/sqlalchemy/testing/__init__.py +++ b/lib/sqlalchemy/testing/__init__.py @@ -6,70 +6,58 @@ # the MIT License: http://www.opensource.org/licenses/mit-license.php -from .warnings import assert_warnings - -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 as _against, - _server_version, - only_if, - fails, -) +from . import config # noqa +from . import mock # noqa +from .assertions import assert_raises # noqa +from .assertions import assert_raises_message # noqa +from .assertions import AssertsCompiledSQL # noqa +from .assertions import AssertsExecutionResults # noqa +from .assertions import ComparesTables # noqa +from .assertions import emits_warning # noqa +from .assertions import emits_warning_on # noqa +from .assertions import eq_ # noqa +from .assertions import eq_ignore_whitespace # noqa +from .assertions import eq_regex # noqa +from .assertions import expect_deprecated # noqa +from .assertions import expect_warnings # noqa +from .assertions import in_ # noqa +from .assertions import is_ # noqa +from .assertions import is_false # noqa +from .assertions import is_not_ # noqa +from .assertions import is_true # noqa +from .assertions import le_ # noqa +from .assertions import ne_ # noqa +from .assertions import not_in_ # noqa +from .assertions import startswith_ # noqa +from .assertions import uses_deprecated # noqa +from .config import db # noqa +from .config import requirements as requires # noqa +from .exclusions import _is_excluded # noqa +from .exclusions import _server_version # noqa +from .exclusions import against as _against # noqa +from .exclusions import db_spec # noqa +from .exclusions import exclude # noqa +from .exclusions import fails # noqa +from .exclusions import fails_if # noqa +from .exclusions import fails_on # noqa +from .exclusions import fails_on_everything_except # noqa +from .exclusions import future # noqa +from .exclusions import only_if # noqa +from .exclusions import only_on # noqa +from .exclusions import skip # noqa +from .exclusions import skip_if # noqa +from .util import adict # noqa +from .util import fail # noqa +from .util import force_drop_names # noqa +from .util import provide_metadata # noqa +from .util import rowset # noqa +from .util import run_as_contextmanager # noqa +from .util import teardown_events # noqa +from .warnings import assert_warnings # noqa def against(*queries): return _against(config._current, *queries) -from .assertions import ( - emits_warning, - emits_warning_on, - uses_deprecated, - eq_, - ne_, - le_, - is_, - is_not_, - startswith_, - assert_raises, - assert_raises_message, - AssertsCompiledSQL, - ComparesTables, - AssertsExecutionResults, - expect_deprecated, - expect_warnings, - in_, - not_in_, - eq_ignore_whitespace, - eq_regex, - is_true, - is_false, -) - -from .util import ( - run_as_contextmanager, - rowset, - fail, - provide_metadata, - adict, - force_drop_names, - teardown_events, -) - crashes = skip - -from .config import db -from .config import requirements as requires - -from . import mock diff --git a/lib/sqlalchemy/testing/assertions.py b/lib/sqlalchemy/testing/assertions.py index 73ab4556a..11b77d72a 100644 --- a/lib/sqlalchemy/testing/assertions.py +++ b/lib/sqlalchemy/testing/assertions.py @@ -7,19 +7,26 @@ from __future__ import absolute_import -from . import util as testutil -from sqlalchemy import pool, orm, util -from sqlalchemy.engine import default, url -from sqlalchemy.util import decorator, compat -from sqlalchemy import types as sqltypes, schema, exc as sa_exc -import warnings +import contextlib import re -from .exclusions import db_spec +import warnings + from . import assertsql from . import config -from .util import fail -import contextlib from . import mock +from . import util as testutil +from .exclusions import db_spec +from .util import fail +from .. import exc as sa_exc +from .. import orm +from .. import pool +from .. import schema +from .. import types as sqltypes +from .. import util +from ..engine import default +from ..engine import url +from ..util import compat +from ..util import decorator def expect_warnings(*messages, **kw): @@ -442,15 +449,15 @@ class AssertsExecutionResults(object): print(repr(result)) self.assert_list(result, class_, objects) - def assert_list(self, result, class_, list): + def assert_list(self, result, class_, list_): self.assert_( - len(result) == len(list), + len(result) == len(list_), "result list is not the same size as test list, " + "for class " + class_.__name__, ) - for i in range(0, len(list)): - self.assert_row(class_, result[i], list[i]) + for i in range(0, len(list_)): + self.assert_row(class_, result[i], list_[i]) def assert_row(self, class_, rowobj, desc): self.assert_( diff --git a/lib/sqlalchemy/testing/assertsql.py b/lib/sqlalchemy/testing/assertsql.py index d8e924cb6..1d3cfe0e1 100644 --- a/lib/sqlalchemy/testing/assertsql.py +++ b/lib/sqlalchemy/testing/assertsql.py @@ -5,15 +5,16 @@ # This module is part of SQLAlchemy and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php -from ..engine.default import DefaultDialect -from .. import util -import re import collections import contextlib +import re + from .. import event -from sqlalchemy.schema import _DDLCompiles -from sqlalchemy.engine.util import _distill_params -from sqlalchemy.engine import url +from .. import util +from ..engine import url +from ..engine.default import DefaultDialect +from ..engine.util import _distill_params +from ..schema import _DDLCompiles class AssertRule(object): diff --git a/lib/sqlalchemy/testing/engines.py b/lib/sqlalchemy/testing/engines.py index 074e3b338..bfb1a24b5 100644 --- a/lib/sqlalchemy/testing/engines.py +++ b/lib/sqlalchemy/testing/engines.py @@ -7,12 +7,14 @@ from __future__ import absolute_import +import re +import warnings import weakref + from . import config from .util import decorator -from .. import event, pool -import re -import warnings +from .. import event +from .. import pool class ConnectionKiller(object): diff --git a/lib/sqlalchemy/testing/entities.py b/lib/sqlalchemy/testing/entities.py index 42c42149c..a14304b97 100644 --- a/lib/sqlalchemy/testing/entities.py +++ b/lib/sqlalchemy/testing/entities.py @@ -6,7 +6,8 @@ # the MIT License: http://www.opensource.org/licenses/mit-license.php import sqlalchemy as sa -from sqlalchemy import exc as sa_exc +from .. import exc as sa_exc + _repr_stack = set() diff --git a/lib/sqlalchemy/testing/exclusions.py b/lib/sqlalchemy/testing/exclusions.py index 9ed9e42c3..ffca84af1 100644 --- a/lib/sqlalchemy/testing/exclusions.py +++ b/lib/sqlalchemy/testing/exclusions.py @@ -10,11 +10,10 @@ import contextlib import operator import re -from sqlalchemy.util.compat import inspect_getargspec - from . import config from .. import util from ..util import decorator +from ..util.compat import inspect_getargspec def skip_if(predicate, reason=None): @@ -399,7 +398,7 @@ def db_spec(*dbs): return OrPredicate([Predicate.as_predicate(db) for db in dbs]) -def open(): +def open(): # noqa return skip_if(BooleanPredicate(False, "mark as execute")) diff --git a/lib/sqlalchemy/testing/fixtures.py b/lib/sqlalchemy/testing/fixtures.py index 98184cdd4..b0f3590ee 100644 --- a/lib/sqlalchemy/testing/fixtures.py +++ b/lib/sqlalchemy/testing/fixtures.py @@ -5,15 +5,21 @@ # This module is part of SQLAlchemy and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php +import sys + +import sqlalchemy as sa +from . import assertions from . import config -from . import assertions, schema +from . import schema +from .engines import drop_all_tables +from .entities import BasicEntity +from .entities import ComparableEntity from .util import adict +from .. import event from .. import util -from .engines import drop_all_tables -from .entities import BasicEntity, ComparableEntity -import sys -import sqlalchemy as sa -from sqlalchemy.ext.declarative import declarative_base, DeclarativeMeta +from ..ext.declarative import declarative_base +from ..ext.declarative import DeclarativeMeta + # whether or not we use unittest changes things dramatically, # as far as how py.test collection works. @@ -220,9 +226,6 @@ class TablesTest(TestBase): ) -from sqlalchemy import event - - class RemovesEvents(object): @util.memoized_property def _event_fns(self): diff --git a/lib/sqlalchemy/testing/mock.py b/lib/sqlalchemy/testing/mock.py index dc530af5e..0b84d7db8 100644 --- a/lib/sqlalchemy/testing/mock.py +++ b/lib/sqlalchemy/testing/mock.py @@ -8,13 +8,23 @@ """Import stub for mock library. """ from __future__ import absolute_import + from ..util import py33 + if py33: - from unittest.mock import MagicMock, Mock, call, patch, ANY + from unittest.mock import MagicMock + from unittest.mock import Mock + from unittest.mock import call + from unittest.mock import patch + from unittest.mock import ANY else: try: - from mock import MagicMock, Mock, call, patch, ANY + from mock import MagicMock # noqa + from mock import Mock # noqa + from mock import call # noqa + from mock import patch # noqa + from mock import ANY # noqa except ImportError: raise ImportError( "SQLAlchemy's test suite requires the " diff --git a/lib/sqlalchemy/testing/plugin/bootstrap.py b/lib/sqlalchemy/testing/plugin/bootstrap.py index bb52c125c..2230ae2a8 100644 --- a/lib/sqlalchemy/testing/plugin/bootstrap.py +++ b/lib/sqlalchemy/testing/plugin/bootstrap.py @@ -20,6 +20,7 @@ this should be removable when Alembic targets SQLAlchemy 1.0.0. import os import sys + bootstrap_file = locals()["bootstrap_file"] to_bootstrap = locals()["to_bootstrap"] diff --git a/lib/sqlalchemy/testing/plugin/noseplugin.py b/lib/sqlalchemy/testing/plugin/noseplugin.py index 0c28a5213..07185a9d7 100644 --- a/lib/sqlalchemy/testing/plugin/noseplugin.py +++ b/lib/sqlalchemy/testing/plugin/noseplugin.py @@ -23,8 +23,9 @@ except ImportError: import os import sys -from nose.plugins import Plugin import nose +from nose.plugins import Plugin + fixtures = None diff --git a/lib/sqlalchemy/testing/plugin/plugin_base.py b/lib/sqlalchemy/testing/plugin/plugin_base.py index 5d6bf2975..537ab06dc 100644 --- a/lib/sqlalchemy/testing/plugin/plugin_base.py +++ b/lib/sqlalchemy/testing/plugin/plugin_base.py @@ -15,8 +15,9 @@ functionality via py.test. from __future__ import absolute_import -import sys import re +import sys + py3k = sys.version_info >= (3, 0) @@ -245,7 +246,8 @@ def post_begin(): # late imports, has to happen after config as well # as nose plugins like coverage - global util, fixtures, engines, exclusions, assertions, warnings, profiling, config, testing + global util, fixtures, engines, exclusions, assertions + global warnings, profiling, config, testing from sqlalchemy import testing # noqa from sqlalchemy.testing import fixtures, engines, exclusions # noqa from sqlalchemy.testing import assertions, warnings, profiling # noqa @@ -525,8 +527,8 @@ def generate_sub_tests(cls, module): # pytest junit plugin, which is tripped up by the brackets # and periods, so sanitize - alpha_name = re.sub("[_\[\]\.]+", "_", cfg.name) - alpha_name = re.sub("_+$", "", alpha_name) + alpha_name = re.sub(r"[_\[\]\.]+", "_", cfg.name) + alpha_name = re.sub(r"_+$", "", alpha_name) name = "%s_%s" % (cls.__name__, alpha_name) subcls = type( name, diff --git a/lib/sqlalchemy/testing/plugin/pytestplugin.py b/lib/sqlalchemy/testing/plugin/pytestplugin.py index fd0a48462..f42fc4791 100644 --- a/lib/sqlalchemy/testing/plugin/pytestplugin.py +++ b/lib/sqlalchemy/testing/plugin/pytestplugin.py @@ -5,12 +5,14 @@ except ImportError: # assume we're a package, use traditional import from . import plugin_base -import pytest import argparse -import inspect import collections +import inspect import os +import pytest + + try: import xdist # noqa @@ -44,7 +46,7 @@ def pytest_addoption(parser): dest, default=False, required=False, - help=None, + help=None, # noqa ): super(CallableAction, self).__init__( option_strings=option_strings, diff --git a/lib/sqlalchemy/testing/profiling.py b/lib/sqlalchemy/testing/profiling.py index 3986985c7..753cfa595 100644 --- a/lib/sqlalchemy/testing/profiling.py +++ b/lib/sqlalchemy/testing/profiling.py @@ -12,19 +12,24 @@ in a more fine-grained way than nose's profiling plugin. """ +import collections +import contextlib import os +import pstats import sys -from .util import gc_collect + from . import config -import pstats -import collections -import contextlib +from .util import gc_collect +from ..util import jython +from ..util import pypy +from ..util import update_wrapper +from ..util import win32 + try: import cProfile except ImportError: cProfile = None -from ..util import jython, pypy, win32, update_wrapper _current_test = None diff --git a/lib/sqlalchemy/testing/provision.py b/lib/sqlalchemy/testing/provision.py index 25028ccb3..88dc28528 100644 --- a/lib/sqlalchemy/testing/provision.py +++ b/lib/sqlalchemy/testing/provision.py @@ -1,13 +1,16 @@ -from sqlalchemy.engine import url as sa_url -from sqlalchemy import create_engine -from sqlalchemy import text -from sqlalchemy import exc -from sqlalchemy.util import compat -from . import config, engines import collections +import logging import os import time -import logging + +from . import config +from . import engines +from .. import create_engine +from .. import exc +from .. import text +from ..engine import url as sa_url +from ..util import compat + log = logging.getLogger(__name__) @@ -190,6 +193,8 @@ def _pg_create_db(cfg, eng, ident): template_db, ) time.sleep(0.5) + except: + raise else: break @@ -395,7 +400,8 @@ def _mssql_drop_ignore(conn, ident): try: # typically when this happens, we can't KILL the session anyway, # so let the cleanup process drop the DBs - # for row in conn.execute("select session_id from sys.dm_exec_sessions " + # for row in conn.execute( + # "select session_id from sys.dm_exec_sessions " # "where database_id=db_id('%s')" % ident): # log.info("killing SQL server sesssion %s", row['session_id']) # conn.execute("kill %s" % row['session_id']) diff --git a/lib/sqlalchemy/testing/replay_fixture.py b/lib/sqlalchemy/testing/replay_fixture.py index 9832b07a2..613d7572b 100644 --- a/lib/sqlalchemy/testing/replay_fixture.py +++ b/lib/sqlalchemy/testing/replay_fixture.py @@ -1,13 +1,14 @@ -from . import fixtures -from . import profiling -from .. import util -import types from collections import deque import contextlib +import types + from . import config -from sqlalchemy import MetaData -from sqlalchemy import create_engine -from sqlalchemy.orm import Session +from . import fixtures +from . import profiling +from .. import create_engine +from .. import MetaData +from .. import util +from ..orm import Session class ReplayFixtureTest(fixtures.TestBase): @@ -19,7 +20,10 @@ class ReplayFixtureTest(fixtures.TestBase): dbapi_session = ReplayableSession() creator = config.db.pool._creator - recorder = lambda: dbapi_session.recorder(creator()) + + def recorder(): + return dbapi_session.recorder(creator()) + engine = create_engine( config.db.url, creator=recorder, use_native_hstore=False ) @@ -34,7 +38,9 @@ class ReplayFixtureTest(fixtures.TestBase): self.teardown_engine() engine.dispose() - player = lambda: dbapi_session.player() + def player(): + return dbapi_session.player() + engine = create_engine( config.db.url, creator=player, use_native_hstore=False ) diff --git a/lib/sqlalchemy/testing/requirements.py b/lib/sqlalchemy/testing/requirements.py index c96d26d32..941a9458b 100644 --- a/lib/sqlalchemy/testing/requirements.py +++ b/lib/sqlalchemy/testing/requirements.py @@ -243,7 +243,9 @@ class SuiteRequirements(Requirements): @property def sane_rowcount_w_returning(self): return exclusions.fails_if( - lambda config: not config.db.dialect.supports_sane_rowcount_returning, + lambda config: not ( + config.db.dialect.supports_sane_rowcount_returning + ), "driver doesn't support 'sane' rowcount when returning is on", ) @@ -758,12 +760,13 @@ class SuiteRequirements(Requirements): present in a subquery in the WHERE clause. This is an ANSI-standard syntax that apparently MySQL can't handle, - such as: + such as:: + + UPDATE documents SET flag=1 WHERE documents.title IN + (SELECT max(documents.title) AS title + FROM documents GROUP BY documents.user_id + ) - UPDATE documents SET flag=1 WHERE documents.title IN - (SELECT max(documents.title) AS title - FROM documents GROUP BY documents.user_id - ) """ return exclusions.open() @@ -944,7 +947,7 @@ class SuiteRequirements(Requirements): def _has_cextensions(self): try: - from sqlalchemy import cresultproxy, cprocessors + from sqlalchemy import cresultproxy, cprocessors # noqa return True except ImportError: diff --git a/lib/sqlalchemy/testing/runner.py b/lib/sqlalchemy/testing/runner.py index 6aa820fd5..b4478bedc 100644 --- a/lib/sqlalchemy/testing/runner.py +++ b/lib/sqlalchemy/testing/runner.py @@ -30,10 +30,10 @@ SQLAlchemy itself is possible. """ -from .plugin.noseplugin import NoseSQLAlchemy - import nose +from .plugin.noseplugin import NoseSQLAlchemy + def main(): nose.main(addplugins=[NoseSQLAlchemy()]) diff --git a/lib/sqlalchemy/testing/schema.py b/lib/sqlalchemy/testing/schema.py index b345a9487..c80325b7c 100644 --- a/lib/sqlalchemy/testing/schema.py +++ b/lib/sqlalchemy/testing/schema.py @@ -5,11 +5,13 @@ # This module is part of SQLAlchemy and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php -from . import exclusions -from .. import schema, event from . import config +from . import exclusions +from .. import event +from .. import schema + -__all__ = "Table", "Column" +__all__ = ["Table", "Column"] table_options = {} diff --git a/lib/sqlalchemy/testing/suite/__init__.py b/lib/sqlalchemy/testing/suite/__init__.py index a4e142c5a..465a6cfc5 100644 --- a/lib/sqlalchemy/testing/suite/__init__.py +++ b/lib/sqlalchemy/testing/suite/__init__.py @@ -1,10 +1,10 @@ -from sqlalchemy.testing.suite.test_cte import * -from sqlalchemy.testing.suite.test_dialect import * -from sqlalchemy.testing.suite.test_ddl import * -from sqlalchemy.testing.suite.test_insert import * -from sqlalchemy.testing.suite.test_sequence import * -from sqlalchemy.testing.suite.test_select import * -from sqlalchemy.testing.suite.test_results import * -from sqlalchemy.testing.suite.test_update_delete import * -from sqlalchemy.testing.suite.test_reflection import * -from sqlalchemy.testing.suite.test_types import * +from .test_cte import * # noqa +from .test_ddl import * # noqa +from .test_dialect import * # noqa +from .test_insert import * # noqa +from .test_reflection import * # noqa +from .test_results import * # noqa +from .test_select import * # noqa +from .test_sequence import * # noqa +from .test_types import * # noqa +from .test_update_delete import * # noqa diff --git a/lib/sqlalchemy/testing/suite/test_cte.py b/lib/sqlalchemy/testing/suite/test_cte.py index d2f35933b..012de7911 100644 --- a/lib/sqlalchemy/testing/suite/test_cte.py +++ b/lib/sqlalchemy/testing/suite/test_cte.py @@ -1,11 +1,13 @@ -from .. import fixtures, config +from .. import config +from .. import fixtures from ..assertions import eq_ - -from sqlalchemy import Integer, String, select -from sqlalchemy import ForeignKey -from sqlalchemy import testing - -from ..schema import Table, Column +from ..schema import Column +from ..schema import Table +from ... import ForeignKey +from ... import Integer +from ... import select +from ... import String +from ... import testing class CTETest(fixtures.TablesTest): diff --git a/lib/sqlalchemy/testing/suite/test_ddl.py b/lib/sqlalchemy/testing/suite/test_ddl.py index 7c44388d4..8317590c8 100644 --- a/lib/sqlalchemy/testing/suite/test_ddl.py +++ b/lib/sqlalchemy/testing/suite/test_ddl.py @@ -1,8 +1,12 @@ -from .. import fixtures, config, util -from ..config import requirements +from .. import config +from .. import fixtures +from .. import util from ..assertions import eq_ - -from sqlalchemy import Table, Column, Integer, String +from ..config import requirements +from ... import Column +from ... import Integer +from ... import String +from ... import Table class TableDDLTest(fixtures.TestBase): diff --git a/lib/sqlalchemy/testing/suite/test_dialect.py b/lib/sqlalchemy/testing/suite/test_dialect.py index 5e589f3b8..245ccc6f0 100644 --- a/lib/sqlalchemy/testing/suite/test_dialect.py +++ b/lib/sqlalchemy/testing/suite/test_dialect.py @@ -1,11 +1,16 @@ -from .. import fixtures, config -from ..config import requirements -from sqlalchemy import exc -from sqlalchemy import Integer, String, select, literal_column from .. import assert_raises -from ..schema import Table, Column -from .. import provide_metadata +from .. import config from .. import eq_ +from .. import fixtures +from .. import provide_metadata +from ..config import requirements +from ..schema import Column +from ..schema import Table +from ... import exc +from ... import Integer +from ... import literal_column +from ... import select +from ... import String class ExceptionTest(fixtures.TablesTest): diff --git a/lib/sqlalchemy/testing/suite/test_insert.py b/lib/sqlalchemy/testing/suite/test_insert.py index 6257451eb..1b14e8ed8 100644 --- a/lib/sqlalchemy/testing/suite/test_insert.py +++ b/lib/sqlalchemy/testing/suite/test_insert.py @@ -1,12 +1,15 @@ -from .. import fixtures, config -from ..config import requirements -from .. import exclusions -from ..assertions import eq_ +from .. import config from .. import engines - -from sqlalchemy import Integer, String, select, literal_column, literal - -from ..schema import Table, Column +from .. import fixtures +from ..assertions import eq_ +from ..config import requirements +from ..schema import Column +from ..schema import Table +from ... import Integer +from ... import literal +from ... import literal_column +from ... import select +from ... import String class LastrowidTest(fixtures.TablesTest): diff --git a/lib/sqlalchemy/testing/suite/test_reflection.py b/lib/sqlalchemy/testing/suite/test_reflection.py index bfed5f1ab..96bd188ee 100644 --- a/lib/sqlalchemy/testing/suite/test_reflection.py +++ b/lib/sqlalchemy/testing/suite/test_reflection.py @@ -1,21 +1,30 @@ -import sqlalchemy as sa -from sqlalchemy import exc as sa_exc -from sqlalchemy import types as sql_types -from sqlalchemy import inspect -from sqlalchemy import MetaData, Integer, String, func -from sqlalchemy.engine.reflection import Inspector -from sqlalchemy.testing import engines, fixtures -from sqlalchemy.testing.schema import Table, Column -from sqlalchemy.testing import eq_, is_, assert_raises_message -from sqlalchemy import testing -from .. import config import operator -from sqlalchemy.schema import DDL, Index -from sqlalchemy import event -from sqlalchemy.sql.elements import quoted_name -from sqlalchemy import ForeignKey import re +import sqlalchemy as sa +from .. import assert_raises_message +from .. import config +from .. import engines +from .. import eq_ +from .. import fixtures +from .. import is_ +from ..schema import Column +from ..schema import Table +from ... import event +from ... import exc as sa_exc +from ... import ForeignKey +from ... import inspect +from ... import Integer +from ... import MetaData +from ... import String +from ... import testing +from ... import types as sql_types +from ...engine.reflection import Inspector +from ...schema import DDL +from ...schema import Index +from ...sql.elements import quoted_name + + metadata, users = None, None @@ -367,7 +376,9 @@ class ComponentReflectionTest(fixtures.TablesTest): {"comment": "id comment", "name": "id"}, {"comment": "data % comment", "name": "data"}, { - "comment": r"""Comment types type speedily ' " \ '' Fun!""", + "comment": ( + r"""Comment types type speedily ' " \ '' Fun!""" + ), "name": "d2", }, ], diff --git a/lib/sqlalchemy/testing/suite/test_results.py b/lib/sqlalchemy/testing/suite/test_results.py index 247f05cf5..aa98a5088 100644 --- a/lib/sqlalchemy/testing/suite/test_results.py +++ b/lib/sqlalchemy/testing/suite/test_results.py @@ -1,13 +1,20 @@ -from .. import fixtures, config -from ..config import requirements -from .. import exclusions -from ..assertions import eq_ +import datetime + +from .. import config from .. import engines +from .. import fixtures +from ..assertions import eq_ +from ..config import requirements +from ..schema import Column +from ..schema import Table +from ... import DateTime +from ... import func +from ... import Integer +from ... import select +from ... import sql +from ... import String from ... import testing - -from sqlalchemy import Integer, String, select, util, sql, DateTime, text, func -import datetime -from ..schema import Table, Column +from ... import text class RowFetchTest(fixtures.TablesTest): diff --git a/lib/sqlalchemy/testing/suite/test_select.py b/lib/sqlalchemy/testing/suite/test_select.py index 032b68eb6..d26585141 100644 --- a/lib/sqlalchemy/testing/suite/test_select.py +++ b/lib/sqlalchemy/testing/suite/test_select.py @@ -1,14 +1,23 @@ -from sqlalchemy.dialects.mssql.base import MSDialect -from sqlalchemy.dialects.oracle.base import OracleDialect -from .. import fixtures, config -from ..assertions import eq_, in_ - -from sqlalchemy import util, case, null, true, false, or_ -from sqlalchemy import Integer, String, select, func, bindparam, union, tuple_ -from sqlalchemy import testing -from sqlalchemy import literal_column - -from ..schema import Table, Column +from .. import config +from .. import fixtures +from ..assertions import eq_ +from ..assertions import in_ +from ..schema import Column +from ..schema import Table +from ... import bindparam +from ... import case +from ... import false +from ... import func +from ... import Integer +from ... import literal_column +from ... import null +from ... import select +from ... import String +from ... import testing +from ... import true +from ... import tuple_ +from ... import union +from ... import util class CollateTest(fixtures.TablesTest): diff --git a/lib/sqlalchemy/testing/suite/test_sequence.py b/lib/sqlalchemy/testing/suite/test_sequence.py index 15a850fe9..22ae7d43c 100644 --- a/lib/sqlalchemy/testing/suite/test_sequence.py +++ b/lib/sqlalchemy/testing/suite/test_sequence.py @@ -1,12 +1,16 @@ -from .. import fixtures, config -from ..config import requirements +from .. import config +from .. import fixtures from ..assertions import eq_ +from ..config import requirements +from ..schema import Column +from ..schema import Table +from ... import Integer +from ... import MetaData +from ... import schema +from ... import Sequence +from ... import String from ... import testing -from ... import Integer, String, Sequence, schema, MetaData - -from ..schema import Table, Column - class SequenceTest(fixtures.TablesTest): __requires__ = ("sequences",) diff --git a/lib/sqlalchemy/testing/suite/test_types.py b/lib/sqlalchemy/testing/suite/test_types.py index 6dfb80915..ff8db5897 100644 --- a/lib/sqlalchemy/testing/suite/test_types.py +++ b/lib/sqlalchemy/testing/suite/test_types.py @@ -1,33 +1,40 @@ # coding: utf-8 -from .. import fixtures, config +import datetime +import decimal + +from .. import config +from .. import fixtures from ..assertions import eq_ from ..config import requirements -from sqlalchemy import Integer, Unicode, UnicodeText, select, TIMESTAMP -from sqlalchemy import ( - Date, - DateTime, - Time, - MetaData, - String, - Text, - Numeric, - Float, - literal, - Boolean, - cast, - null, - JSON, - and_, - type_coerce, - BigInteger, -) -from ..schema import Table, Column +from ..schema import Column +from ..schema import Table +from ... import and_ +from ... import BigInteger +from ... import Boolean +from ... import cast +from ... import Date +from ... import DateTime +from ... import Float +from ... import Integer +from ... import JSON +from ... import literal +from ... import MetaData +from ... import null +from ... import Numeric +from ... import select +from ... import String from ... import testing -import decimal -import datetime -from ...util import u +from ... import Text +from ... import Time +from ... import TIMESTAMP +from ... import type_coerce +from ... import Unicode +from ... import UnicodeText from ... import util +from ...ext.declarative import declarative_base +from ...orm import Session +from ...util import u class _LiteralRoundTripFixture(object): @@ -341,7 +348,7 @@ class IntegerTest(_LiteralRoundTripFixture, fixtures.TestBase): if util.py3k: assert isinstance(row[0], int) else: - assert isinstance(row[0], (long, int)) + assert isinstance(row[0], (long, int)) # noqa class NumericTest(_LiteralRoundTripFixture, fixtures.TestBase): @@ -872,8 +879,6 @@ class JSONTest(_LiteralRoundTripFixture, fixtures.TablesTest): ) def test_eval_none_flag_orm(self): - from sqlalchemy.ext.declarative import declarative_base - from sqlalchemy.orm import Session Base = declarative_base() diff --git a/lib/sqlalchemy/testing/suite/test_update_delete.py b/lib/sqlalchemy/testing/suite/test_update_delete.py index b232c3a78..97bdf0ad7 100644 --- a/lib/sqlalchemy/testing/suite/test_update_delete.py +++ b/lib/sqlalchemy/testing/suite/test_update_delete.py @@ -1,8 +1,10 @@ -from .. import fixtures, config +from .. import config +from .. import fixtures from ..assertions import eq_ - -from sqlalchemy import Integer, String -from ..schema import Table, Column +from ..schema import Column +from ..schema import Table +from ... import Integer +from ... import String class SimpleUpdateDeleteTest(fixtures.TablesTest): diff --git a/lib/sqlalchemy/testing/util.py b/lib/sqlalchemy/testing/util.py index 5b015d214..214afa078 100644 --- a/lib/sqlalchemy/testing/util.py +++ b/lib/sqlalchemy/testing/util.py @@ -5,14 +5,20 @@ # This module is part of SQLAlchemy and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php -from ..util import jython, pypy, defaultdict, decorator, py2k import decimal import gc -import time import random import sys +import time import types +from ..util import decorator +from ..util import defaultdict +from ..util import jython +from ..util import py2k +from ..util import pypy + + if jython: def jython_gc_collect(*args): diff --git a/lib/sqlalchemy/testing/warnings.py b/lib/sqlalchemy/testing/warnings.py index e0101b14d..611389fe0 100644 --- a/lib/sqlalchemy/testing/warnings.py +++ b/lib/sqlalchemy/testing/warnings.py @@ -8,8 +8,9 @@ from __future__ import absolute_import import warnings -from .. import exc as sa_exc + from . import assertions +from .. import exc as sa_exc def setup_filters(): |