diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2023-02-28 10:58:22 -0500 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2023-02-28 11:37:02 -0500 |
commit | 919297555f17efedcdcc7cc936204a1b86b804d3 (patch) | |
tree | 45f92ba2c4428a0f3ab99bda5cf9a6a8e662f8e8 /tests/test_script_production.py | |
parent | b53ec0004a08c40a25a4dbf047c51cd140971a9c (diff) | |
download | alembic-919297555f17efedcdcc7cc936204a1b86b804d3.tar.gz |
ensure single import per line
This adds the very small plugin flake8-import-single which
will prevent us from having an import with more than one symbol
on a line.
Flake8 by itself prevents this pattern with E401:
import collections, os, sys
However does not do anything with this:
from sqlalchemy import Column, text
Both statements have the same issues generating merge artifacts
as well as presenting a manual decision to be made. While
zimports generally cleans up such imports at the top level, we
don't enforce zimports / pre-commit use.
the plugin finds the same issue for imports that are inside of
test methods. We shouldn't usually have imports in test methods
so most of them here are moved to be top level.
The version is pinned at 0.1.5; the project seems to have no
activity since 2019, however there are three 0.1.6dev releases
on pypi which stopped in September 2019, they seem to be
experiments with packaging. The source for 0.1.5
is extremely simple and only reveals one method to flake8
(the run() method).
Change-Id: Icea894e43bad9c0b5d4feb5f49c6c666d6ea6aa1
Diffstat (limited to 'tests/test_script_production.py')
-rw-r--r-- | tests/test_script_production.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tests/test_script_production.py b/tests/test_script_production.py index bedf545..5c4cd9e 100644 --- a/tests/test_script_production.py +++ b/tests/test_script_production.py @@ -5,7 +5,10 @@ from unittest.mock import patch from dateutil import tz import sqlalchemy as sa +from sqlalchemy import Column from sqlalchemy import inspect +from sqlalchemy import MetaData +from sqlalchemy import Table from alembic import autogenerate from alembic import command @@ -717,7 +720,6 @@ class ImportsTest(TestBase): ) def test_imports_in_script(self): - from sqlalchemy import MetaData, Table, Column from sqlalchemy.dialects.mysql import VARCHAR type_ = VARCHAR(20, charset="utf8", national=True) |