summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Lord <davidism@gmail.com>2020-03-06 13:19:03 -0800
committerDavid Lord <davidism@gmail.com>2020-03-06 13:19:03 -0800
commit488739dfe0d51f415c7b20466648cc519962ecbb (patch)
tree3fff5eff73b9013096b9f0b421ffba26b6735195
parentc7812823f3e165f2979d888e19a82590b0169917 (diff)
downloadclick-488739dfe0d51f415c7b20466648cc519962ecbb.tar.gz
apply reorder-python-imports
-rw-r--r--examples/aliases/aliases.py5
-rw-r--r--examples/bashcompletion/bashcompletion.py3
-rw-r--r--examples/complex/complex/cli.py1
-rw-r--r--examples/complex/complex/commands/cmd_init.py3
-rw-r--r--examples/complex/complex/commands/cmd_status.py3
-rw-r--r--examples/imagepipe/imagepipe.py8
-rw-r--r--examples/repo/repo.py2
-rw-r--r--examples/termui/termui.py12
-rw-r--r--examples/validation/validation.py1
-rw-r--r--src/click/__init__.py142
-rw-r--r--src/click/_bashcomplete.py6
-rw-r--r--src/click/_compat.py5
-rw-r--r--src/click/_termui_impl.py23
-rw-r--r--src/click/_unicodefun.py3
-rw-r--r--src/click/_winconsole.py32
-rw-r--r--src/click/core.py45
-rw-r--r--src/click/decorators.py5
-rw-r--r--src/click/exceptions.py4
-rw-r--r--src/click/formatting.py6
-rw-r--r--src/click/globals.py1
-rw-r--r--src/click/parser.py8
-rw-r--r--src/click/termui.py26
-rw-r--r--src/click/testing.py11
-rw-r--r--src/click/types.py12
-rw-r--r--src/click/utils.py27
-rw-r--r--tests/conftest.py4
-rw-r--r--tests/test_arguments.py7
-rw-r--r--tests/test_bashcomplete.py1
-rw-r--r--tests/test_basic.py1
-rw-r--r--tests/test_chain.py4
-rw-r--r--tests/test_commands.py1
-rw-r--r--tests/test_compat.py6
-rw-r--r--tests/test_imports.py2
-rw-r--r--tests/test_options.py5
-rw-r--r--tests/test_termui.py5
-rw-r--r--tests/test_testing.py6
-rw-r--r--tests/test_utils.py6
37 files changed, 254 insertions, 188 deletions
diff --git a/examples/aliases/aliases.py b/examples/aliases/aliases.py
index 299d3a5..a377a58 100644
--- a/examples/aliases/aliases.py
+++ b/examples/aliases/aliases.py
@@ -1,10 +1,11 @@
import os
+
import click
try:
- import ConfigParser as configparser
-except ImportError:
import configparser
+except ImportError:
+ import ConfigParser as configparser
class Config(object):
diff --git a/examples/bashcompletion/bashcompletion.py b/examples/bashcompletion/bashcompletion.py
index 1072840..5dacae5 100644
--- a/examples/bashcompletion/bashcompletion.py
+++ b/examples/bashcompletion/bashcompletion.py
@@ -1,6 +1,7 @@
-import click
import os
+import click
+
@click.group()
def cli():
diff --git a/examples/complex/complex/cli.py b/examples/complex/complex/cli.py
index 0d10c62..3ef6fae 100644
--- a/examples/complex/complex/cli.py
+++ b/examples/complex/complex/cli.py
@@ -1,5 +1,6 @@
import os
import sys
+
import click
diff --git a/examples/complex/complex/commands/cmd_init.py b/examples/complex/complex/commands/cmd_init.py
index a77116b..5da8df2 100644
--- a/examples/complex/complex/commands/cmd_init.py
+++ b/examples/complex/complex/commands/cmd_init.py
@@ -1,6 +1,7 @@
-import click
from complex.cli import pass_environment
+import click
+
@click.command('init', short_help='Initializes a repo.')
@click.argument('path', required=False, type=click.Path(resolve_path=True))
diff --git a/examples/complex/complex/commands/cmd_status.py b/examples/complex/complex/commands/cmd_status.py
index 12229c4..ac79767 100644
--- a/examples/complex/complex/commands/cmd_status.py
+++ b/examples/complex/complex/commands/cmd_status.py
@@ -1,6 +1,7 @@
-import click
from complex.cli import pass_environment
+import click
+
@click.command('status', short_help='Shows file changes.')
@pass_environment
diff --git a/examples/imagepipe/imagepipe.py b/examples/imagepipe/imagepipe.py
index 37a1521..f6f04ef 100644
--- a/examples/imagepipe/imagepipe.py
+++ b/examples/imagepipe/imagepipe.py
@@ -1,6 +1,10 @@
-import click
from functools import update_wrapper
-from PIL import Image, ImageFilter, ImageEnhance
+
+from PIL import Image
+from PIL import ImageEnhance
+from PIL import ImageFilter
+
+import click
@click.group(chain=True)
diff --git a/examples/repo/repo.py b/examples/repo/repo.py
index 2b1992d..c14a827 100644
--- a/examples/repo/repo.py
+++ b/examples/repo/repo.py
@@ -1,6 +1,6 @@
import os
-import sys
import posixpath
+import sys
import click
diff --git a/examples/termui/termui.py b/examples/termui/termui.py
index 793afa4..08f6a04 100644
--- a/examples/termui/termui.py
+++ b/examples/termui/termui.py
@@ -1,13 +1,9 @@
# coding: utf-8
-import click
import math
-import time
import random
+import time
-try:
- range_type = xrange
-except NameError:
- range_type = range
+import click
@click.group()
@@ -28,7 +24,7 @@ def colordemo():
def pager():
"""Demonstrates using the pager."""
lines = []
- for x in range_type(200):
+ for x in range(200):
lines.append('%s. Hello World!' % click.style(str(x), fg='green'))
click.echo_via_pager('\n'.join(lines))
@@ -38,7 +34,7 @@ def pager():
help='The number of items to process.')
def progress(count):
"""Demonstrates the progress bar."""
- items = range_type(count)
+ items = range(count)
def process_slowly(item):
time.sleep(0.002 * random.random())
diff --git a/examples/validation/validation.py b/examples/validation/validation.py
index 00fa0a6..5cfe5f6 100644
--- a/examples/validation/validation.py
+++ b/examples/validation/validation.py
@@ -1,4 +1,5 @@
import click
+
try:
from urllib import parse as urlparse
except ImportError:
diff --git a/src/click/__init__.py b/src/click/__init__.py
index 02807b0..caddd63 100644
--- a/src/click/__init__.py
+++ b/src/click/__init__.py
@@ -1,91 +1,79 @@
-# -*- coding: utf-8 -*-
"""
Click is a simple Python module inspired by the stdlib optparse to make
writing command line scripts fun. Unlike other modules, it's based
around a simple API that does not come with too much magic and is
composable.
"""
-
-# Core classes
-from .core import Context, BaseCommand, Command, MultiCommand, Group, \
- CommandCollection, Parameter, Option, Argument
-
-# Globals
+from .core import Argument
+from .core import BaseCommand
+from .core import Command
+from .core import CommandCollection
+from .core import Context
+from .core import Group
+from .core import MultiCommand
+from .core import Option
+from .core import Parameter
+from .decorators import argument
+from .decorators import command
+from .decorators import confirmation_option
+from .decorators import group
+from .decorators import help_option
+from .decorators import make_pass_decorator
+from .decorators import option
+from .decorators import pass_context
+from .decorators import pass_obj
+from .decorators import password_option
+from .decorators import version_option
+from .exceptions import Abort
+from .exceptions import BadArgumentUsage
+from .exceptions import BadOptionUsage
+from .exceptions import BadParameter
+from .exceptions import ClickException
+from .exceptions import FileError
+from .exceptions import MissingParameter
+from .exceptions import NoSuchOption
+from .exceptions import UsageError
+from .formatting import HelpFormatter
+from .formatting import wrap_text
from .globals import get_current_context
-
-# Decorators
-from .decorators import pass_context, pass_obj, make_pass_decorator, \
- command, group, argument, option, confirmation_option, \
- password_option, version_option, help_option
-
-# Types
-from .types import ParamType, File, Path, Choice, IntRange, Tuple, \
- DateTime, STRING, INT, FLOAT, BOOL, UUID, UNPROCESSED, FloatRange
-
-# Utilities
-from .utils import echo, get_binary_stream, get_text_stream, open_file, \
- format_filename, get_app_dir, get_os_args
-
-# Terminal functions
-from .termui import prompt, confirm, get_terminal_size, echo_via_pager, \
- progressbar, clear, style, unstyle, secho, edit, launch, getchar, \
- pause
-
-# Exceptions
-from .exceptions import ClickException, UsageError, BadParameter, \
- FileError, Abort, NoSuchOption, BadOptionUsage, BadArgumentUsage, \
- MissingParameter
-
-# Formatting
-from .formatting import HelpFormatter, wrap_text
-
-# Parsing
from .parser import OptionParser
-
-
-__all__ = [
- # Core classes
- 'Context', 'BaseCommand', 'Command', 'MultiCommand', 'Group',
- 'CommandCollection', 'Parameter', 'Option', 'Argument',
-
- # Globals
- 'get_current_context',
-
- # Decorators
- 'pass_context', 'pass_obj', 'make_pass_decorator', 'command', 'group',
- 'argument', 'option', 'confirmation_option', 'password_option',
- 'version_option', 'help_option',
-
- # Types
- 'ParamType', 'File', 'Path', 'Choice', 'IntRange', 'Tuple',
- 'DateTime', 'STRING', 'INT', 'FLOAT', 'BOOL', 'UUID', 'UNPROCESSED',
- 'FloatRange',
-
- # Utilities
- 'echo', 'get_binary_stream', 'get_text_stream', 'open_file',
- 'format_filename', 'get_app_dir', 'get_os_args',
-
- # Terminal functions
- 'prompt', 'confirm', 'get_terminal_size', 'echo_via_pager',
- 'progressbar', 'clear', 'style', 'unstyle', 'secho', 'edit', 'launch',
- 'getchar', 'pause',
-
- # Exceptions
- 'ClickException', 'UsageError', 'BadParameter', 'FileError',
- 'Abort', 'NoSuchOption', 'BadOptionUsage', 'BadArgumentUsage',
- 'MissingParameter',
-
- # Formatting
- 'HelpFormatter', 'wrap_text',
-
- # Parsing
- 'OptionParser',
-]
-
+from .termui import clear
+from .termui import confirm
+from .termui import echo_via_pager
+from .termui import edit
+from .termui import get_terminal_size
+from .termui import getchar
+from .termui import launch
+from .termui import pause
+from .termui import progressbar
+from .termui import prompt
+from .termui import secho
+from .termui import style
+from .termui import unstyle
+from .types import BOOL
+from .types import Choice
+from .types import DateTime
+from .types import File
+from .types import FLOAT
+from .types import FloatRange
+from .types import INT
+from .types import IntRange
+from .types import ParamType
+from .types import Path
+from .types import STRING
+from .types import Tuple
+from .types import UNPROCESSED
+from .types import UUID
+from .utils import echo
+from .utils import format_filename
+from .utils import get_app_dir
+from .utils import get_binary_stream
+from .utils import get_os_args
+from .utils import get_text_stream
+from .utils import open_file
# Controls if click should emit the warning about the use of unicode
# literals.
disable_unicode_literals_warning = False
-
__version__ = '7.1.dev'
diff --git a/src/click/_bashcomplete.py b/src/click/_bashcomplete.py
index 9ba893c..ebcf44f 100644
--- a/src/click/_bashcomplete.py
+++ b/src/click/_bashcomplete.py
@@ -2,10 +2,12 @@ import copy
import os
import re
-from .utils import echo
+from .core import Argument
+from .core import MultiCommand
+from .core import Option
from .parser import split_arg_string
-from .core import MultiCommand, Option, Argument
from .types import Choice
+from .utils import echo
try:
from collections import abc
diff --git a/src/click/_compat.py b/src/click/_compat.py
index 6762854..7b7a55f 100644
--- a/src/click/_compat.py
+++ b/src/click/_compat.py
@@ -1,11 +1,10 @@
-import re
+import codecs
import io
import os
+import re
import sys
-import codecs
from weakref import WeakKeyDictionary
-
PY2 = sys.version_info[0] == 2
CYGWIN = sys.platform.startswith('cygwin')
MSYS2 = sys.platform.startswith('win') and ('GCC' in sys.version)
diff --git a/src/click/_termui_impl.py b/src/click/_termui_impl.py
index 3fbf477..e6974a7 100644
--- a/src/click/_termui_impl.py
+++ b/src/click/_termui_impl.py
@@ -4,18 +4,25 @@ This module contains implementations for the termui module. To keep the
import time of Click down, some infrequently used functionality is
placed in this module and only imported as needed.
"""
-
+import contextlib
+import math
import os
import sys
import time
-import math
-import contextlib
-from ._compat import _default_text_stdout, range_type, isatty, \
- open_stream, shlex_quote, strip_ansi, term_len, get_best_encoding, WIN, \
- int_types, CYGWIN
-from .utils import echo
-from .exceptions import ClickException
+from ._compat import _default_text_stdout
+from ._compat import CYGWIN
+from ._compat import get_best_encoding
+from ._compat import int_types
+from ._compat import isatty
+from ._compat import open_stream
+from ._compat import range_type
+from ._compat import shlex_quote
+from ._compat import strip_ansi
+from ._compat import term_len
+from ._compat import WIN
+from .exceptions import ClickException
+from .utils import echo
if os.name == 'nt':
BEFORE_BAR = '\r'
diff --git a/src/click/_unicodefun.py b/src/click/_unicodefun.py
index aeaa408..c0e9a27 100644
--- a/src/click/_unicodefun.py
+++ b/src/click/_unicodefun.py
@@ -1,10 +1,9 @@
+import codecs
import os
import sys
-import codecs
from ._compat import PY2
-
# If someone wants to vendor click, we want to ensure the
# correct package is discovered. Ideally we could use a
# relative import here but unfortunately Python does not
diff --git a/src/click/_winconsole.py b/src/click/_winconsole.py
index 5458c30..686a239 100644
--- a/src/click/_winconsole.py
+++ b/src/click/_winconsole.py
@@ -7,25 +7,41 @@
# compared to the original patches as we do not need to patch
# the entire interpreter but just work in our little world of
# echo and prmopt.
-
+import ctypes
import io
import os
import sys
-import zlib
import time
-import ctypes
+import zlib
+from ctypes import byref
+from ctypes import c_char
+from ctypes import c_char_p
+from ctypes import c_int
+from ctypes import c_ssize_t
+from ctypes import c_ulong
+from ctypes import c_void_p
+from ctypes import POINTER
+from ctypes import py_object
+from ctypes import windll
+from ctypes import WinError
+from ctypes import WINFUNCTYPE
+from ctypes.wintypes import DWORD
+from ctypes.wintypes import HANDLE
+from ctypes.wintypes import LPCWSTR
+from ctypes.wintypes import LPWSTR
+
import msvcrt
-from ._compat import _NonClosingTextIOWrapper, text_type, PY2
-from ctypes import byref, POINTER, c_int, c_char, c_char_p, \
- c_void_p, py_object, c_ssize_t, c_ulong, windll, WINFUNCTYPE, \
- WinError
+
+from ._compat import _NonClosingTextIOWrapper
+from ._compat import PY2
+from ._compat import text_type
+
try:
from ctypes import pythonapi
PyObject_GetBuffer = pythonapi.PyObject_GetBuffer
PyBuffer_Release = pythonapi.PyBuffer_Release
except ImportError:
pythonapi = None
-from ctypes.wintypes import DWORD, LPWSTR, LPCWSTR, HANDLE
c_ssize_p = POINTER(c_ssize_t)
diff --git a/src/click/core.py b/src/click/core.py
index 7066cac..96c3ebc 100644
--- a/src/click/core.py
+++ b/src/click/core.py
@@ -3,26 +3,41 @@ import inspect
import os
import sys
from contextlib import contextmanager
-from itertools import repeat
from functools import update_wrapper
+from itertools import repeat
-from .types import convert_type, IntRange, BOOL
-from .utils import PacifyFlushWrapper, make_str, make_default_short_help, \
- echo, get_os_args
-from .exceptions import ClickException, UsageError, BadParameter, Abort, \
- MissingParameter, Exit
-from .termui import prompt, confirm, style
-from .formatting import HelpFormatter, join_options
-from .parser import OptionParser, split_opt
-from .globals import push_context, pop_context
-
-from ._compat import PY2, isidentifier, iteritems, string_types
-from ._unicodefun import _check_for_unicode_literals, _verify_python3_env
-
+from ._compat import isidentifier
+from ._compat import iteritems
+from ._compat import PY2
+from ._compat import string_types
+from ._unicodefun import _check_for_unicode_literals
+from ._unicodefun import _verify_python3_env
+from .exceptions import Abort
+from .exceptions import BadParameter
+from .exceptions import ClickException
+from .exceptions import Exit
+from .exceptions import MissingParameter
+from .exceptions import UsageError
+from .formatting import HelpFormatter
+from .formatting import join_options
+from .globals import pop_context
+from .globals import push_context
+from .parser import OptionParser
+from .parser import split_opt
+from .termui import confirm
+from .termui import prompt
+from .termui import style
+from .types import BOOL
+from .types import convert_type
+from .types import IntRange
+from .utils import echo
+from .utils import get_os_args
+from .utils import make_default_short_help
+from .utils import make_str
+from .utils import PacifyFlushWrapper
_missing = object()
-
SUBCOMMAND_METAVAR = 'COMMAND [ARGS]...'
SUBCOMMANDS_METAVAR = 'COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...'
diff --git a/src/click/decorators.py b/src/click/decorators.py
index 1f10e73..bb5a8bc 100644
--- a/src/click/decorators.py
+++ b/src/click/decorators.py
@@ -1,12 +1,11 @@
-import sys
import inspect
-
+import sys
from functools import update_wrapper
from ._compat import iteritems
from ._unicodefun import _check_for_unicode_literals
-from .utils import echo
from .globals import get_current_context
+from .utils import echo
def pass_context(f):
diff --git a/src/click/exceptions.py b/src/click/exceptions.py
index 21db907..4aea4f8 100644
--- a/src/click/exceptions.py
+++ b/src/click/exceptions.py
@@ -1,4 +1,6 @@
-from ._compat import PY2, filename_to_ui, get_text_stderr
+from ._compat import filename_to_ui
+from ._compat import get_text_stderr
+from ._compat import PY2
from .utils import echo
diff --git a/src/click/formatting.py b/src/click/formatting.py
index 4ae5f07..4426d9c 100644
--- a/src/click/formatting.py
+++ b/src/click/formatting.py
@@ -1,8 +1,8 @@
from contextlib import contextmanager
-from .termui import get_terminal_size
-from .parser import split_opt
-from ._compat import term_len
+from ._compat import term_len
+from .parser import split_opt
+from .termui import get_terminal_size
# Can force a width. This is used by the test system
FORCED_WIDTH = None
diff --git a/src/click/globals.py b/src/click/globals.py
index 1b85c76..e5b88d3 100644
--- a/src/click/globals.py
+++ b/src/click/globals.py
@@ -1,6 +1,5 @@
from threading import local
-
_local = local()
diff --git a/src/click/parser.py b/src/click/parser.py
index 6f2600f..c060313 100644
--- a/src/click/parser.py
+++ b/src/click/parser.py
@@ -18,11 +18,13 @@ by the Python Software Foundation. This is limited to code in parser.py.
Copyright 2001-2006 Gregory P. Ward. All rights reserved.
Copyright 2002-2006 Python Software Foundation. All rights reserved.
"""
-
import re
from collections import deque
-from .exceptions import UsageError, NoSuchOption, BadOptionUsage, \
- BadArgumentUsage
+
+from .exceptions import BadArgumentUsage
+from .exceptions import BadOptionUsage
+from .exceptions import NoSuchOption
+from .exceptions import UsageError
def _unpack_args(args, nargs_spec):
diff --git a/src/click/termui.py b/src/click/termui.py
index fa2727a..5448b80 100644
--- a/src/click/termui.py
+++ b/src/click/termui.py
@@ -1,19 +1,27 @@
+import inspect
import io
+import itertools
import os
-import sys
import struct
-import inspect
-import itertools
+import sys
-from ._compat import raw_input, text_type, string_types, \
- isatty, strip_ansi, get_winterm_size, DEFAULT_COLUMNS, WIN
-from .utils import echo
-from .exceptions import Abort, UsageError
-from .types import convert_type, Choice, Path
+from ._compat import DEFAULT_COLUMNS
+from ._compat import get_winterm_size
+from ._compat import isatty
+from ._compat import raw_input
+from ._compat import string_types
+from ._compat import strip_ansi
+from ._compat import text_type
+from ._compat import WIN
+from .exceptions import Abort
+from .exceptions import UsageError
from .globals import resolve_color_default
+from .types import Choice
+from .types import convert_type
+from .types import Path
+from .utils import echo
from .utils import LazyFile
-
# The prompt functions to use. The doc tools currently override these
# functions to customize how they work.
visible_prompt_func = raw_input
diff --git a/src/click/testing.py b/src/click/testing.py
index 343b007..16cf42c 100644
--- a/src/click/testing.py
+++ b/src/click/testing.py
@@ -1,12 +1,13 @@
+import contextlib
import os
-import sys
+import shlex
import shutil
+import sys
import tempfile
-import contextlib
-import shlex
-
-from ._compat import iteritems, PY2, string_types
+from ._compat import iteritems
+from ._compat import PY2
+from ._compat import string_types
# If someone wants to vendor click, we want to ensure the
# correct package is discovered. Ideally we could use a
diff --git a/src/click/types.py b/src/click/types.py
index f5d06a1..6bb69f0 100644
--- a/src/click/types.py
+++ b/src/click/types.py
@@ -2,10 +2,16 @@ import os
import stat
from datetime import datetime
-from ._compat import open_stream, text_type, filename_to_ui, \
- get_filesystem_encoding, get_streerror, _get_argv_encoding, PY2
+from ._compat import _get_argv_encoding
+from ._compat import filename_to_ui
+from ._compat import get_filesystem_encoding
+from ._compat import get_streerror
+from ._compat import open_stream
+from ._compat import PY2
+from ._compat import text_type
from .exceptions import BadParameter
-from .utils import safecall, LazyFile
+from .utils import LazyFile
+from .utils import safecall
class ParamType(object):
diff --git a/src/click/utils.py b/src/click/utils.py
index fc84369..3c436a4 100644
--- a/src/click/utils.py
+++ b/src/click/utils.py
@@ -1,19 +1,30 @@
import os
import sys
+from ._compat import _default_text_stderr
+from ._compat import _default_text_stdout
+from ._compat import auto_wrap_for_ansi
+from ._compat import binary_streams
+from ._compat import filename_to_ui
+from ._compat import get_filesystem_encoding
+from ._compat import get_streerror
+from ._compat import is_bytes
+from ._compat import open_stream
+from ._compat import PY2
+from ._compat import should_strip_ansi
+from ._compat import string_types
+from ._compat import strip_ansi
+from ._compat import text_streams
+from ._compat import text_type
+from ._compat import WIN
from .globals import resolve_color_default
-from ._compat import text_type, open_stream, get_filesystem_encoding, \
- get_streerror, string_types, PY2, binary_streams, text_streams, \
- filename_to_ui, auto_wrap_for_ansi, strip_ansi, should_strip_ansi, \
- _default_text_stdout, _default_text_stderr, is_bytes, WIN
-
if not PY2:
from ._compat import _find_binary_writer
elif WIN:
- from ._winconsole import _get_windows_argv, \
- _hash_py_argv, _initial_argv_hash
-
+ from ._winconsole import _get_windows_argv
+ from ._winconsole import _hash_py_argv
+ from ._winconsole import _initial_argv_hash
echo_native_types = string_types + (bytes, bytearray)
diff --git a/tests/conftest.py b/tests/conftest.py
index 3aac933..05b59c1 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -1,7 +1,7 @@
-from click.testing import CliRunner
-
import pytest
+from click.testing import CliRunner
+
@pytest.fixture(scope='function')
def runner(request):
diff --git a/tests/test_arguments.py b/tests/test_arguments.py
index 65d9a1e..f92a560 100644
--- a/tests/test_arguments.py
+++ b/tests/test_arguments.py
@@ -1,8 +1,11 @@
# -*- coding: utf-8 -*-
+import sys
+
import pytest
+
import click
-import sys
-from click._compat import PY2, text_type
+from click._compat import PY2
+from click._compat import text_type
def test_nargs_star(runner):
diff --git a/tests/test_bashcomplete.py b/tests/test_bashcomplete.py
index 5eb4068..05557a0 100644
--- a/tests/test_bashcomplete.py
+++ b/tests/test_bashcomplete.py
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-
-
import pytest
import click
diff --git a/tests/test_basic.py b/tests/test_basic.py
index f800b4d..939c205 100644
--- a/tests/test_basic.py
+++ b/tests/test_basic.py
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import os
import uuid
+
import click
diff --git a/tests/test_chain.py b/tests/test_chain.py
index 56a60e3..282920c 100644
--- a/tests/test_chain.py
+++ b/tests/test_chain.py
@@ -1,7 +1,9 @@
import sys
-import click
+
import pytest
+import click
+
def debug():
click.echo('%s=%s' % (
diff --git a/tests/test_commands.py b/tests/test_commands.py
index 8186add..aa96e71 100644
--- a/tests/test_commands.py
+++ b/tests/test_commands.py
@@ -2,7 +2,6 @@
import re
import click
-import pytest
def test_other_command_invoke(runner):
diff --git a/tests/test_compat.py b/tests/test_compat.py
index 674cded..152301d 100644
--- a/tests/test_compat.py
+++ b/tests/test_compat.py
@@ -1,6 +1,8 @@
-import click
import pytest
-from click._compat import should_strip_ansi, WIN
+
+import click
+from click._compat import should_strip_ansi
+from click._compat import WIN
def test_legacy_callbacks(runner):
diff --git a/tests/test_imports.py b/tests/test_imports.py
index 268c606..00b604b 100644
--- a/tests/test_imports.py
+++ b/tests/test_imports.py
@@ -1,6 +1,6 @@
-import sys
import json
import subprocess
+import sys
from click._compat import WIN
diff --git a/tests/test_options.py b/tests/test_options.py
index 4a13a0a..f3156b0 100644
--- a/tests/test_options.py
+++ b/tests/test_options.py
@@ -1,9 +1,10 @@
# -*- coding: utf-8 -*-
-import re
import os
-import click
+import re
+
import pytest
+import click
from click._compat import text_type
diff --git a/tests/test_termui.py b/tests/test_termui.py
index c6e06b6..098e335 100644
--- a/tests/test_termui.py
+++ b/tests/test_termui.py
@@ -1,9 +1,8 @@
# -*- coding: utf-8 -*-
-import pytest
-
-import click
import time
+import pytest
+
import click._termui_impl
from click._compat import WIN
diff --git a/tests/test_testing.py b/tests/test_testing.py
index 7b03947..7802bbf 100644
--- a/tests/test_testing.py
+++ b/tests/test_testing.py
@@ -2,12 +2,12 @@ import os
import sys
import pytest
-import click
+import click
+from click._compat import PY2
+from click._compat import WIN
from click.testing import CliRunner
-from click._compat import PY2, WIN
-
# Use the most reasonable io that users would use for the python version.
if PY2:
from cStringIO import StringIO as ReasonableBytesIO
diff --git a/tests/test_utils.py b/tests/test_utils.py
index 93f1ca0..6ea9f94 100644
--- a/tests/test_utils.py
+++ b/tests/test_utils.py
@@ -4,10 +4,10 @@ import sys
import pytest
-import click
-import click.utils
import click._termui_impl
-from click._compat import WIN, PY2
+import click.utils
+from click._compat import PY2
+from click._compat import WIN
def test_echo(runner):