diff --git a/Makefile b/Makefile index 57dc072..f993b37 100644 --- a/Makefile +++ b/Makefile @@ -12,3 +12,9 @@ spelling: uml: plantuml -tsvg -o ../_static/images/ docs/source/uml/*.uml + +format: + isort -y $(find lml -name "*.py"|xargs echo) $(find tests -name "*.py"|xargs echo) + black -l 79 lml + black -l 79 tests + black -l 79 examples diff --git a/examples/robotchef/docs/source/conf.py b/examples/robotchef/docs/source/conf.py index e6fe842..4a18e32 100644 --- a/examples/robotchef/docs/source/conf.py +++ b/examples/robotchef/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'Sample project to demonstrate load me later plugin system' + - '' -) +DESCRIPTION = "Sample project to demonstrate load me later plugin system" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchefdoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchefdoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef.tex', - 'robotchef Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef.tex", + "robotchef Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef', - 'robotchef Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef", + "robotchef Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef', - 'robotchef Documentation', - 'Onni Software Ltd.', 'robotchef', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef", + "robotchef Documentation", + "Onni Software Ltd.", + "robotchef", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/robotchef/robotchef/main.py b/examples/robotchef/robotchef/main.py index 581076b..c6de9bd 100644 --- a/examples/robotchef/robotchef/main.py +++ b/examples/robotchef/robotchef/main.py @@ -1,16 +1,16 @@ import sys - -from lml.loader import scan_plugins - -from robotchef.plugin import CuisineManager, NoChefException import logging import logging.config -logging.basicConfig( - format='%(name)s:%(lineno)d - %(levelname)s - %(message)s', - level=logging.DEBUG) +from lml.loader import scan_plugins +from robotchef.plugin import CuisineManager, NoChefException -BUILTINS = ['robotchef.robot_cuisine'] +logging.basicConfig( + format="%(name)s:%(lineno)d - %(levelname)s - %(message)s", + level=logging.DEBUG, +) + +BUILTINS = ["robotchef.robot_cuisine"] def main(): @@ -18,7 +18,7 @@ def main(): sys.exit(-1) cuisine_manager = CuisineManager() - scan_plugins("robotchef_", 'robotchef', white_list=BUILTINS) + scan_plugins("robotchef_", "robotchef", white_list=BUILTINS) food_name = sys.argv[1] try: diff --git a/examples/robotchef/robotchef/plugin.py b/examples/robotchef/robotchef/plugin.py index 39b1b19..7a08eff 100644 --- a/examples/robotchef/robotchef/plugin.py +++ b/examples/robotchef/robotchef/plugin.py @@ -17,6 +17,5 @@ class CuisineManager(PluginManager): class Chef(object): - def make(self, **params): print("I am a chef") diff --git a/examples/robotchef/robotchef/robot_cuisine/__init__.py b/examples/robotchef/robotchef/robot_cuisine/__init__.py index 5cf1a17..b51a908 100644 --- a/examples/robotchef/robotchef/robot_cuisine/__init__.py +++ b/examples/robotchef/robotchef/robot_cuisine/__init__.py @@ -2,7 +2,5 @@ from lml.plugin import PluginInfoChain PluginInfoChain(__name__).add_a_plugin( - 'cuisine', - 'electrify.Boost', - tags=['Portable Battery'] + "cuisine", "electrify.Boost", tags=["Portable Battery"] ) diff --git a/examples/robotchef/robotchef/robot_cuisine/electrify.py b/examples/robotchef/robotchef/robot_cuisine/electrify.py index 27f29ee..76be251 100644 --- a/examples/robotchef/robotchef/robot_cuisine/electrify.py +++ b/examples/robotchef/robotchef/robot_cuisine/electrify.py @@ -2,6 +2,5 @@ from robotchef.plugin import Chef class Boost(Chef): - def make(self, food=None, **keywords): print("I can cook %s for robots" % food) diff --git a/examples/robotchef/setup.py b/examples/robotchef/setup.py index f7507f0..52d686d 100644 --- a/examples/robotchef/setup.py +++ b/examples/robotchef/setup.py @@ -2,47 +2,38 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc (c) hotmail.com' -LICENSE = 'MIT' -ENTRY_POINTS = { - 'console_scripts': [ - 'robotchef = robotchef.main:main' - ] -} -DESCRIPTION = ( - 'Sample project to demonstrate load me later plugin system' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc (c) hotmail.com" +LICENSE = "MIT" +ENTRY_POINTS = {"console_scripts": ["robotchef = robotchef.main:main"]} +DESCRIPTION = "Sample project to demonstrate load me later plugin system" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ - 'lml', -] +INSTALL_REQUIRES = ["lml"] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) -EXTRAS_REQUIRE = { -} +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) +EXTRAS_REQUIRE = {} def read_files(*files): @@ -56,7 +47,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -65,11 +56,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -82,22 +73,22 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, entry_points=ENTRY_POINTS, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/robotchef/tests/test_robot_chef.py b/examples/robotchef/tests/test_robot_chef.py index 130b846..a827e02 100644 --- a/examples/robotchef/tests/test_robot_chef.py +++ b/examples/robotchef/tests/test_robot_chef.py @@ -1,6 +1,8 @@ import sys + from mock import patch from nose.tools import eq_ + PY2 = sys.version_info[0] == 2 if PY2: @@ -9,10 +11,11 @@ else: from io import StringIO -@patch('sys.stdout', new_callable=StringIO) +@patch("sys.stdout", new_callable=StringIO) def test_peking_duck(stdout): - arguments = ['robotchef', 'Peking Duck'] + arguments = ["robotchef", "Peking Duck"] from robotchef.main import main - with patch.object(sys, 'argv', arguments): + + with patch.object(sys, "argv", arguments): main() - eq_(stdout.getvalue(), 'I can roast Peking Duck\n') + eq_(stdout.getvalue(), "I can roast Peking Duck\n") diff --git a/examples/robotchef_allinone/docs/source/conf.py b/examples/robotchef_allinone/docs/source/conf.py index 799af2e..d105035 100644 --- a/examples/robotchef_allinone/docs/source/conf.py +++ b/examples/robotchef_allinone/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'It does cooking' + - '' -) +DESCRIPTION = "It does cooking" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_allinone' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_allinone" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_allinonedoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_allinonedoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_allinone.tex', - 'robotchef_allinone Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_allinone.tex", + "robotchef_allinone Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_allinone', - 'robotchef_allinone Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_allinone", + "robotchef_allinone Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_allinone', - 'robotchef_allinone Documentation', - 'Onni Software Ltd.', 'robotchef_allinone', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_allinone", + "robotchef_allinone Documentation", + "Onni Software Ltd.", + "robotchef_allinone", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/robotchef_allinone/robotchef_allinone/plugin.py b/examples/robotchef_allinone/robotchef_allinone/plugin.py index 816a032..7c16ca7 100644 --- a/examples/robotchef_allinone/robotchef_allinone/plugin.py +++ b/examples/robotchef_allinone/robotchef_allinone/plugin.py @@ -3,25 +3,21 @@ class NoChefException(Exception): class Chef(object): - def make(self, **params): print("I am a chef") class Boost(Chef): - def make(self, food=None, **keywords): print("I can cook %s for robots" % food) class Fry(Chef): - def make(self, food=None): print("I can fry " + food) class Bake(Chef): - def make(self, food=None): print("I can bake " + food) @@ -30,7 +26,7 @@ PLUGINS = { "Portable Battery": Boost, "Fish and Chips": Fry, "Cornish Scone": Bake, - "Jacket Potato": Bake + "Jacket Potato": Bake, } diff --git a/examples/robotchef_allinone/setup.py b/examples/robotchef_allinone/setup.py index 94125ca..aac45d6 100644 --- a/examples/robotchef_allinone/setup.py +++ b/examples/robotchef_allinone/setup.py @@ -2,44 +2,39 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_allinone' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (at) hotmail.com' -LICENSE = 'MIT' +NAME = "robotchef_allinone" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (at) hotmail.com" +LICENSE = "MIT" ENTRY_POINTS = { - 'console_scripts': [ - 'robotchef_allinone = robotchef_allinone.main:main' - ] + "console_scripts": ["robotchef_allinone = robotchef_allinone.main:main"] } -DESCRIPTION = ( - 'It does cooking' + - '' -) -KEYWORDS = [ -] +DESCRIPTION = "It does cooking" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -54,7 +49,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -63,11 +58,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -80,22 +75,22 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, entry_points=ENTRY_POINTS, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/robotchef_allinone/tests/test_robot_chef.py b/examples/robotchef_allinone/tests/test_robot_chef.py index 063f4c5..b05acf5 100644 --- a/examples/robotchef_allinone/tests/test_robot_chef.py +++ b/examples/robotchef_allinone/tests/test_robot_chef.py @@ -1,6 +1,8 @@ import sys + from mock import patch from nose.tools import eq_ + PY2 = sys.version_info[0] == 2 if PY2: @@ -9,10 +11,11 @@ else: from io import StringIO -@patch('sys.stdout', new_callable=StringIO) +@patch("sys.stdout", new_callable=StringIO) def test_cornish_scone(stdout): - arguments = ['robotchef', 'Cornish Scone'] + arguments = ["robotchef", "Cornish Scone"] from robotchef_allinone.main import main - with patch.object(sys, 'argv', arguments): + + with patch.object(sys, "argv", arguments): main() - eq_(stdout.getvalue(), 'I can bake Cornish Scone\n') + eq_(stdout.getvalue(), "I can bake Cornish Scone\n") diff --git a/examples/robotchef_allinone_lml/docs/source/conf.py b/examples/robotchef_allinone_lml/docs/source/conf.py index 3d6bbcc..84e8000 100644 --- a/examples/robotchef_allinone_lml/docs/source/conf.py +++ b/examples/robotchef_allinone_lml/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'it cook food' + - '' -) +DESCRIPTION = "it cook food" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_allinone_lml' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_allinone_lml" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_allinone_lmldoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_allinone_lmldoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_allinone_lml.tex', - 'robotchef_allinone_lml Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_allinone_lml.tex", + "robotchef_allinone_lml Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_allinone_lml', - 'robotchef_allinone_lml Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_allinone_lml", + "robotchef_allinone_lml Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_allinone_lml', - 'robotchef_allinone_lml Documentation', - 'Onni Software Ltd.', 'robotchef_allinone_lml', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_allinone_lml", + "robotchef_allinone_lml Documentation", + "Onni Software Ltd.", + "robotchef_allinone_lml", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/robotchef_allinone_lml/robotchef_allinone_lml/plugin.py b/examples/robotchef_allinone_lml/robotchef_allinone_lml/plugin.py index 08146a8..ad0c43e 100644 --- a/examples/robotchef_allinone_lml/robotchef_allinone_lml/plugin.py +++ b/examples/robotchef_allinone_lml/robotchef_allinone_lml/plugin.py @@ -1,4 +1,4 @@ -from lml.plugin import PluginManager, PluginInfo +from lml.plugin import PluginInfo, PluginManager class NoChefException(Exception): @@ -17,27 +17,23 @@ class CuisineManager(PluginManager): class Chef(object): - def make(self, **params): print("I am a chef") -@PluginInfo('cuisine', tags=['Portable Battery']) +@PluginInfo("cuisine", tags=["Portable Battery"]) class Boost(Chef): - def make(self, food=None, **keywords): print("I can cook %s for robots" % food) -@PluginInfo('cuisine', tags=['Fish and Chips']) +@PluginInfo("cuisine", tags=["Fish and Chips"]) class Fry(Chef): - def make(self, food=None): print("I can fry " + food) -@PluginInfo('cuisine', tags=['Cornish Scone', 'Jacket Potato']) +@PluginInfo("cuisine", tags=["Cornish Scone", "Jacket Potato"]) class Bake(Chef): - def make(self, food=None): print("I can bake " + food) diff --git a/examples/robotchef_allinone_lml/setup.py b/examples/robotchef_allinone_lml/setup.py index 0f3c466..ddf0681 100644 --- a/examples/robotchef_allinone_lml/setup.py +++ b/examples/robotchef_allinone_lml/setup.py @@ -2,44 +2,41 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_allinone_lml' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (at) hotmail.com' -LICENSE = 'MIT' +NAME = "robotchef_allinone_lml" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (at) hotmail.com" +LICENSE = "MIT" ENTRY_POINTS = { - 'console_scripts': [ - 'robotchef_allinone_lml = robotchef_allinone_lml.main:main' + "console_scripts": [ + "robotchef_allinone_lml = robotchef_allinone_lml.main:main" ] } -DESCRIPTION = ( - 'it cook food' + - '' -) -KEYWORDS = [ -] +DESCRIPTION = "it cook food" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -54,7 +51,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -63,11 +60,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -80,22 +77,22 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, entry_points=ENTRY_POINTS, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/robotchef_allinone_lml/tests/test_robot_chef.py b/examples/robotchef_allinone_lml/tests/test_robot_chef.py index 5084090..78e65c5 100644 --- a/examples/robotchef_allinone_lml/tests/test_robot_chef.py +++ b/examples/robotchef_allinone_lml/tests/test_robot_chef.py @@ -1,6 +1,8 @@ import sys + from mock import patch from nose.tools import eq_ + PY2 = sys.version_info[0] == 2 if PY2: @@ -9,10 +11,11 @@ else: from io import StringIO -@patch('sys.stdout', new_callable=StringIO) +@patch("sys.stdout", new_callable=StringIO) def test_cornish_scone(stdout): - arguments = ['robotchef', 'Cornish Scone'] + arguments = ["robotchef", "Cornish Scone"] from robotchef_allinone_lml.main import main - with patch.object(sys, 'argv', arguments): + + with patch.object(sys, "argv", arguments): main() - eq_(stdout.getvalue(), 'I can bake Cornish Scone\n') + eq_(stdout.getvalue(), "I can bake Cornish Scone\n") diff --git a/examples/robotchef_britishcuisine/docs/source/conf.py b/examples/robotchef_britishcuisine/docs/source/conf.py index d68f125..5c635a5 100644 --- a/examples/robotchef_britishcuisine/docs/source/conf.py +++ b/examples/robotchef_britishcuisine/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'Cook food in british cuisine.' + - '' -) +DESCRIPTION = "Cook food in british cuisine." + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_britishcuisine' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_britishcuisine" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_britishcuisinedoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_britishcuisinedoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_britishcuisine.tex', - 'robotchef_britishcuisine Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_britishcuisine.tex", + "robotchef_britishcuisine Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_britishcuisine', - 'robotchef_britishcuisine Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_britishcuisine", + "robotchef_britishcuisine Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_britishcuisine', - 'robotchef_britishcuisine Documentation', - 'Onni Software Ltd.', 'robotchef_britishcuisine', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_britishcuisine", + "robotchef_britishcuisine Documentation", + "Onni Software Ltd.", + "robotchef_britishcuisine", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py b/examples/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py index f2e5b80..1836204 100644 --- a/examples/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py +++ b/examples/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py @@ -2,11 +2,5 @@ from lml.plugin import PluginInfoChain PluginInfoChain(__name__).add_a_plugin( - 'cuisine', - 'fry.Fry', - tags=['Fish and Chips'] -).add_a_plugin( - 'cuisine', - 'bake.Bake', - tags=['Cornish Scone', 'Jacket Potato'] -) + "cuisine", "fry.Fry", tags=["Fish and Chips"] +).add_a_plugin("cuisine", "bake.Bake", tags=["Cornish Scone", "Jacket Potato"]) diff --git a/examples/robotchef_britishcuisine/robotchef_britishcuisine/bake.py b/examples/robotchef_britishcuisine/robotchef_britishcuisine/bake.py index 07ecbf1..dc92d83 100644 --- a/examples/robotchef_britishcuisine/robotchef_britishcuisine/bake.py +++ b/examples/robotchef_britishcuisine/robotchef_britishcuisine/bake.py @@ -2,6 +2,5 @@ from robotchef.plugin import Chef class Bake(Chef): - def make(self, food=None): print("I can bake " + food) diff --git a/examples/robotchef_britishcuisine/robotchef_britishcuisine/fry.py b/examples/robotchef_britishcuisine/robotchef_britishcuisine/fry.py index 7d668e2..a09232a 100644 --- a/examples/robotchef_britishcuisine/robotchef_britishcuisine/fry.py +++ b/examples/robotchef_britishcuisine/robotchef_britishcuisine/fry.py @@ -2,6 +2,5 @@ from robotchef.plugin import Chef class Fry(Chef): - def make(self, food=None): print("I can fry " + food) diff --git a/examples/robotchef_britishcuisine/setup.py b/examples/robotchef_britishcuisine/setup.py index d43f3f1..20efaf4 100644 --- a/examples/robotchef_britishcuisine/setup.py +++ b/examples/robotchef_britishcuisine/setup.py @@ -2,39 +2,36 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_britishcuisine' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (c) hotmail.com' -LICENSE = 'MIT' -DESCRIPTION = ( - 'Cook food in british cuisine.' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef_britishcuisine" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (c) hotmail.com" +LICENSE = "MIT" +DESCRIPTION = "Cook food in british cuisine." + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -49,7 +46,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -58,11 +55,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -75,21 +72,21 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/robotchef_chinesecuisine/docs/source/conf.py b/examples/robotchef_chinesecuisine/docs/source/conf.py index 670483a..c03b8e2 100644 --- a/examples/robotchef_chinesecuisine/docs/source/conf.py +++ b/examples/robotchef_chinesecuisine/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'It cooks Chinese food' + - '' -) +DESCRIPTION = "It cooks Chinese food" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_chinesecuisine' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_chinesecuisine" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_chinesecuisinedoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_chinesecuisinedoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_chinesecuisine.tex', - 'robotchef_chinesecuisine Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_chinesecuisine.tex", + "robotchef_chinesecuisine Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_chinesecuisine', - 'robotchef_chinesecuisine Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_chinesecuisine", + "robotchef_chinesecuisine Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_chinesecuisine', - 'robotchef_chinesecuisine Documentation', - 'Onni Software Ltd.', 'robotchef_chinesecuisine', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_chinesecuisine", + "robotchef_chinesecuisine Documentation", + "Onni Software Ltd.", + "robotchef_chinesecuisine", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/__init__.py b/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/__init__.py index 4a369ea..660ad9f 100644 --- a/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/__init__.py +++ b/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/__init__.py @@ -2,7 +2,5 @@ from lml.plugin import PluginInfoChain PluginInfoChain(__name__).add_a_plugin( - 'cuisine', - 'roast.Roast', - tags=['Peking Duck'] + "cuisine", "roast.Roast", tags=["Peking Duck"] ) diff --git a/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/roast.py b/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/roast.py index 2b9028b..9edd03c 100644 --- a/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/roast.py +++ b/examples/robotchef_chinesecuisine/robotchef_chinesecuisine/roast.py @@ -2,6 +2,5 @@ from robotchef.plugin import Chef class Roast(Chef): - def make(self, food=None): print("I can roast " + food) diff --git a/examples/robotchef_chinesecuisine/setup.py b/examples/robotchef_chinesecuisine/setup.py index 9efd52c..43fc115 100644 --- a/examples/robotchef_chinesecuisine/setup.py +++ b/examples/robotchef_chinesecuisine/setup.py @@ -2,39 +2,36 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_chinesecuisine' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (c) hotmail.com' -LICENSE = 'MIT' -DESCRIPTION = ( - 'It cooks Chinese food' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef_chinesecuisine" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (c) hotmail.com" +LICENSE = "MIT" +DESCRIPTION = "It cooks Chinese food" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -49,7 +46,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -58,11 +55,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -75,21 +72,21 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/robotchef_cook/docs/source/conf.py b/examples/robotchef_cook/docs/source/conf.py index 427b8e1..3403ada 100644 --- a/examples/robotchef_cook/docs/source/conf.py +++ b/examples/robotchef_cook/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'Make robot chef to cook' + - '' -) +DESCRIPTION = "Make robot chef to cook" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_cook' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_cook" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_cookdoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_cookdoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_cook.tex', - 'robotchef_cook Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_cook.tex", + "robotchef_cook Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_cook', - 'robotchef_cook Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_cook", + "robotchef_cook Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_cook', - 'robotchef_cook Documentation', - 'Onni Software Ltd.', 'robotchef_cook', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_cook", + "robotchef_cook Documentation", + "Onni Software Ltd.", + "robotchef_cook", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/robotchef_cook/robotchef_cook/__init__.py b/examples/robotchef_cook/robotchef_cook/__init__.py index 4161ee9..7769e49 100644 --- a/examples/robotchef_cook/robotchef_cook/__init__.py +++ b/examples/robotchef_cook/robotchef_cook/__init__.py @@ -1,8 +1,4 @@ from lml.plugin import PluginInfoChain -PluginInfoChain(__name__).add_a_plugin( - 'cuisine', - 'cook.Cook', - tags=['bread'] -) +PluginInfoChain(__name__).add_a_plugin("cuisine", "cook.Cook", tags=["bread"]) diff --git a/examples/robotchef_cook/robotchef_cook/cook.py b/examples/robotchef_cook/robotchef_cook/cook.py index 0d97e9b..39324f6 100644 --- a/examples/robotchef_cook/robotchef_cook/cook.py +++ b/examples/robotchef_cook/robotchef_cook/cook.py @@ -2,6 +2,5 @@ from robotchef.plugin import Chef class Cook(Chef): - def make(self, food=None): print("I can cook " + food) diff --git a/examples/robotchef_cook/setup.py b/examples/robotchef_cook/setup.py index bc702ac..7a2fd3b 100644 --- a/examples/robotchef_cook/setup.py +++ b/examples/robotchef_cook/setup.py @@ -2,39 +2,36 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_cook' -AUTHOR = 'C.W' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (at) hotmail.com' -LICENSE = 'MIT' -DESCRIPTION = ( - 'Make robot chef to cook' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef_cook" +AUTHOR = "C.W" +VERSION = "0.0.1" +EMAIL = "wangc_2011 (at) hotmail.com" +LICENSE = "MIT" +DESCRIPTION = "Make robot chef to cook" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -49,7 +46,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -58,11 +55,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -75,21 +72,21 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/v2/robotchef_api/docs/source/conf.py b/examples/v2/robotchef_api/docs/source/conf.py index b78c779..da7f94f 100644 --- a/examples/v2/robotchef_api/docs/source/conf.py +++ b/examples/v2/robotchef_api/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'It provide the cusine knowledge to any library' + - '' -) +DESCRIPTION = "It provide the cusine knowledge to any library" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_api' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_api" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_apidoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_apidoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_api.tex', - 'robotchef_api Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_api.tex", + "robotchef_api Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_api', - 'robotchef_api Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_api", + "robotchef_api Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_api', - 'robotchef_api Documentation', - 'Onni Software Ltd.', 'robotchef_api', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_api", + "robotchef_api Documentation", + "Onni Software Ltd.", + "robotchef_api", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/v2/robotchef_api/robotchef_api/__init__.py b/examples/v2/robotchef_api/robotchef_api/__init__.py index 5018f53..8e04579 100644 --- a/examples/v2/robotchef_api/robotchef_api/__init__.py +++ b/examples/v2/robotchef_api/robotchef_api/__init__.py @@ -1,8 +1,11 @@ from lml.loader import scan_plugins -from robotchef_api.plugin import CuisineManager, NoChefException # flake8: noqa +from robotchef_api.plugin import ( + CuisineManager, + NoChefException, +) # flake8: noqa -BUILTINS = ['robotchef_api.robot_cuisine'] +BUILTINS = ["robotchef_api.robot_cuisine"] scan_plugins("robotchef_", __path__, white_list=BUILTINS) diff --git a/examples/v2/robotchef_api/robotchef_api/plugin.py b/examples/v2/robotchef_api/robotchef_api/plugin.py index e23b9a2..5b1b92a 100644 --- a/examples/v2/robotchef_api/robotchef_api/plugin.py +++ b/examples/v2/robotchef_api/robotchef_api/plugin.py @@ -17,6 +17,5 @@ class CuisineManager(PluginManager): class Chef(object): - def make(self, **params): print(self.name) diff --git a/examples/v2/robotchef_api/robotchef_api/robot_cuisine/__init__.py b/examples/v2/robotchef_api/robotchef_api/robot_cuisine/__init__.py index 144707e..ec95a3e 100644 --- a/examples/v2/robotchef_api/robotchef_api/robot_cuisine/__init__.py +++ b/examples/v2/robotchef_api/robotchef_api/robot_cuisine/__init__.py @@ -2,7 +2,5 @@ from lml.plugin import PluginInfoChain PluginInfoChain(__name__).add_a_plugin( - 'cuisine', - 'electricity.Boost', - tags=['Portable Battery'] + "cuisine", "electricity.Boost", tags=["Portable Battery"] ) diff --git a/examples/v2/robotchef_api/robotchef_api/robot_cuisine/electricity.py b/examples/v2/robotchef_api/robotchef_api/robot_cuisine/electricity.py index f12f115..6e9f7b2 100644 --- a/examples/v2/robotchef_api/robotchef_api/robot_cuisine/electricity.py +++ b/examples/v2/robotchef_api/robotchef_api/robot_cuisine/electricity.py @@ -2,6 +2,5 @@ from robotchef_api.plugin import Chef class Boost(Chef): - def make(self, food=None, **keywords): print("I can cook %s for robots" % food) diff --git a/examples/v2/robotchef_api/setup.py b/examples/v2/robotchef_api/setup.py index 761f46d..949547b 100644 --- a/examples/v2/robotchef_api/setup.py +++ b/examples/v2/robotchef_api/setup.py @@ -2,42 +2,37 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_api' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (at) hotmail.com' -LICENSE = 'MIT' -DESCRIPTION = ( - 'It provide the cusine knowledge to any library' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef_api" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (at) hotmail.com" +LICENSE = "MIT" +DESCRIPTION = "It provide the cusine knowledge to any library" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ - 'lml', -] +INSTALL_REQUIRES = ["lml"] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) -EXTRAS_REQUIRE = { -} +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) +EXTRAS_REQUIRE = {} def read_files(*files): @@ -51,7 +46,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -60,11 +55,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -77,21 +72,21 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/v2/robotchef_britishcuisine/docs/source/conf.py b/examples/v2/robotchef_britishcuisine/docs/source/conf.py index d68f125..5c635a5 100644 --- a/examples/v2/robotchef_britishcuisine/docs/source/conf.py +++ b/examples/v2/robotchef_britishcuisine/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'Cook food in british cuisine.' + - '' -) +DESCRIPTION = "Cook food in british cuisine." + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_britishcuisine' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_britishcuisine" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_britishcuisinedoc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_britishcuisinedoc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_britishcuisine.tex', - 'robotchef_britishcuisine Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_britishcuisine.tex", + "robotchef_britishcuisine Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_britishcuisine', - 'robotchef_britishcuisine Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_britishcuisine", + "robotchef_britishcuisine Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_britishcuisine', - 'robotchef_britishcuisine Documentation', - 'Onni Software Ltd.', 'robotchef_britishcuisine', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_britishcuisine", + "robotchef_britishcuisine Documentation", + "Onni Software Ltd.", + "robotchef_britishcuisine", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py b/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py index f2e5b80..1836204 100644 --- a/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py +++ b/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/__init__.py @@ -2,11 +2,5 @@ from lml.plugin import PluginInfoChain PluginInfoChain(__name__).add_a_plugin( - 'cuisine', - 'fry.Fry', - tags=['Fish and Chips'] -).add_a_plugin( - 'cuisine', - 'bake.Bake', - tags=['Cornish Scone', 'Jacket Potato'] -) + "cuisine", "fry.Fry", tags=["Fish and Chips"] +).add_a_plugin("cuisine", "bake.Bake", tags=["Cornish Scone", "Jacket Potato"]) diff --git a/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/bake.py b/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/bake.py index 40467b7..503a1e2 100644 --- a/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/bake.py +++ b/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/bake.py @@ -2,6 +2,5 @@ from robotchef_api.plugin import Chef class Bake(Chef): - def make(self, food=None): print("I can bake " + food) diff --git a/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/fry.py b/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/fry.py index 4ed04e2..2491d6a 100644 --- a/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/fry.py +++ b/examples/v2/robotchef_britishcuisine/robotchef_britishcuisine/fry.py @@ -2,6 +2,5 @@ from robotchef_api.plugin import Chef class Fry(Chef): - def make(self, food=None): print("I can fry " + food) diff --git a/examples/v2/robotchef_britishcuisine/setup.py b/examples/v2/robotchef_britishcuisine/setup.py index d43f3f1..20efaf4 100644 --- a/examples/v2/robotchef_britishcuisine/setup.py +++ b/examples/v2/robotchef_britishcuisine/setup.py @@ -2,39 +2,36 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_britishcuisine' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (c) hotmail.com' -LICENSE = 'MIT' -DESCRIPTION = ( - 'Cook food in british cuisine.' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef_britishcuisine" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (c) hotmail.com" +LICENSE = "MIT" +DESCRIPTION = "Cook food in british cuisine." + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -49,7 +46,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -58,11 +55,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -75,21 +72,21 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/v2/robotchef_v2/docs/source/conf.py b/examples/v2/robotchef_v2/docs/source/conf.py index 7dc4232..263c168 100644 --- a/examples/v2/robotchef_v2/docs/source/conf.py +++ b/examples/v2/robotchef_v2/docs/source/conf.py @@ -1,43 +1,52 @@ # -*- coding: utf-8 -*- -DESCRIPTION = ( - 'It understands world cuisine' + - '' -) +DESCRIPTION = "It understands world cuisine" + "" extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.viewcode", ] -templates_path = ['_templates'] -source_suffix = '.rst' -master_doc = 'index' +templates_path = ["_templates"] +source_suffix = ".rst" +master_doc = "index" -project = u'robotchef_v2' -copyright = u'2017 Onni Software Ltd.' -version = '0.0.1' -release = '0.0.1' +project = u"robotchef_v2" +copyright = u"2017 Onni Software Ltd." +version = "0.0.1" +release = "0.0.1" exclude_patterns = [] -pygments_style = 'sphinx' -html_theme = 'default' -html_static_path = ['_static'] -htmlhelp_basename = 'robotchef_v2doc' +pygments_style = "sphinx" +html_theme = "default" +html_static_path = ["_static"] +htmlhelp_basename = "robotchef_v2doc" latex_elements = {} latex_documents = [ - ('index', 'robotchef_v2.tex', - 'robotchef_v2 Documentation', - 'Onni Software Ltd.', 'manual'), + ( + "index", + "robotchef_v2.tex", + "robotchef_v2 Documentation", + "Onni Software Ltd.", + "manual", + ) ] man_pages = [ - ('index', 'robotchef_v2', - 'robotchef_v2 Documentation', - [u'Onni Software Ltd.'], 1) + ( + "index", + "robotchef_v2", + "robotchef_v2 Documentation", + [u"Onni Software Ltd."], + 1, + ) ] texinfo_documents = [ - ('index', 'robotchef_v2', - 'robotchef_v2 Documentation', - 'Onni Software Ltd.', 'robotchef_v2', - DESCRIPTION, - 'Miscellaneous'), + ( + "index", + "robotchef_v2", + "robotchef_v2 Documentation", + "Onni Software Ltd.", + "robotchef_v2", + DESCRIPTION, + "Miscellaneous", + ) ] diff --git a/examples/v2/robotchef_v2/robotchef_v2/main.py b/examples/v2/robotchef_v2/robotchef_v2/main.py index 5e691e7..15e68f5 100644 --- a/examples/v2/robotchef_v2/robotchef_v2/main.py +++ b/examples/v2/robotchef_v2/robotchef_v2/main.py @@ -1,6 +1,6 @@ import sys -from robotchef_api import cuisine_manager, NoChefException +from robotchef_api import NoChefException, cuisine_manager def main(): diff --git a/examples/v2/robotchef_v2/setup.py b/examples/v2/robotchef_v2/setup.py index 3a0a62b..8874abf 100644 --- a/examples/v2/robotchef_v2/setup.py +++ b/examples/v2/robotchef_v2/setup.py @@ -2,44 +2,37 @@ try: from setuptools import setup, find_packages except ImportError: from ez_setup import use_setuptools + use_setuptools() from setuptools import setup, find_packages import sys + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 -NAME = 'robotchef_v2' -AUTHOR = 'C.W.' -VERSION = '0.0.1' -EMAIL = 'wangc_2011 (at) hotmail.com' -LICENSE = 'MIT' -ENTRY_POINTS = { - 'console_scripts': [ - 'robotchef_v2 = robotchef_v2.main:main' - ] -} -DESCRIPTION = ( - 'It understands world cuisine' + - '' -) -KEYWORDS = [ -] +NAME = "robotchef_v2" +AUTHOR = "C.W." +VERSION = "0.0.1" +EMAIL = "wangc_2011 (at) hotmail.com" +LICENSE = "MIT" +ENTRY_POINTS = {"console_scripts": ["robotchef_v2 = robotchef_v2.main:main"]} +DESCRIPTION = "It understands world cuisine" + "" +KEYWORDS = [] CLASSIFIERS = [ - 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python", + "Programming Language :: Python :: 2.6", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", ] -INSTALL_REQUIRES = [ -] +INSTALL_REQUIRES = [] -PACKAGES = find_packages(exclude=['ez_setup', 'examples', 'tests']) +PACKAGES = find_packages(exclude=["ez_setup", "examples", "tests"]) EXTRAS_REQUIRE = {} @@ -54,7 +47,7 @@ def read_files(*files): def read(afile): """Read a file into setup""" - with open(afile, 'r') as opened_file: + with open(afile, "r") as opened_file: content = filter_out_test_code(opened_file) content = "".join(list(content)) return content @@ -63,11 +56,11 @@ def read(afile): def filter_out_test_code(file_handle): found_test_code = False for line in file_handle.readlines(): - if line.startswith('.. testcode:'): + if line.startswith(".. testcode:"): found_test_code = True continue if found_test_code is True: - if line.startswith(' '): + if line.startswith(" "): continue else: empty_line = line.strip() @@ -80,22 +73,22 @@ def filter_out_test_code(file_handle): yield line -if __name__ == '__main__': +if __name__ == "__main__": setup( name=NAME, author=AUTHOR, version=VERSION, author_email=EMAIL, description=DESCRIPTION, - long_description=read_files('README.rst', 'CHANGELOG.rst'), + long_description=read_files("README.rst", "CHANGELOG.rst"), license=LICENSE, keywords=KEYWORDS, extras_require=EXTRAS_REQUIRE, - tests_require=['nose'], + tests_require=["nose"], install_requires=INSTALL_REQUIRES, packages=PACKAGES, include_package_data=True, zip_safe=False, entry_points=ENTRY_POINTS, - classifiers=CLASSIFIERS + classifiers=CLASSIFIERS, ) diff --git a/examples/v2/robotchef_v2/tests/test_robot_chef.py b/examples/v2/robotchef_v2/tests/test_robot_chef.py index 1f2ef57..a69bbcb 100644 --- a/examples/v2/robotchef_v2/tests/test_robot_chef.py +++ b/examples/v2/robotchef_v2/tests/test_robot_chef.py @@ -1,6 +1,8 @@ import sys + from mock import patch from nose.tools import eq_ + PY2 = sys.version_info[0] == 2 if PY2: @@ -9,10 +11,11 @@ else: from io import StringIO -@patch('sys.stdout', new_callable=StringIO) +@patch("sys.stdout", new_callable=StringIO) def test_peking_duck(stdout): - arguments = ['robotchef', 'Jacket Potato'] + arguments = ["robotchef", "Jacket Potato"] from robotchef_v2.main import main - with patch.object(sys, 'argv', arguments): + + with patch.object(sys, "argv", arguments): main() - eq_(stdout.getvalue(), 'I can bake Jacket Potato\n') + eq_(stdout.getvalue(), "I can bake Jacket Potato\n") diff --git a/lml/loader.py b/lml/loader.py index 0a633ec..3574d61 100644 --- a/lml/loader.py +++ b/lml/loader.py @@ -10,11 +10,11 @@ :license: New BSD License, see LICENSE for more details """ import re -import pkgutil import logging +import pkgutil from itertools import chain -from lml.utils import do_import +from lml.utils import do_import log = logging.getLogger(__name__) diff --git a/lml/plugin.py b/lml/plugin.py index 35c6a26..7c36802 100644 --- a/lml/plugin.py +++ b/lml/plugin.py @@ -28,9 +28,7 @@ import logging from collections import defaultdict -from lml.utils import do_import_class -from lml.utils import json_dumps - +from lml.utils import json_dumps, do_import_class PLUG_IN_MANAGERS = {} CACHED_PLUGIN_INFO = defaultdict(list) diff --git a/lml/utils.py b/lml/utils.py index d2331b8..a0d9995 100644 --- a/lml/utils.py +++ b/lml/utils.py @@ -9,8 +9,7 @@ """ import sys import logging -from json import dumps, JSONEncoder - +from json import JSONEncoder, dumps PY2 = sys.version_info[0] == 2 log = logging.getLogger(__name__) diff --git a/setup.py b/setup.py index 024eb63..ef65f2f 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,9 @@ import os import sys import codecs from shutil import rmtree -from setuptools import setup, find_packages, Command + +from setuptools import Command, setup, find_packages + PY2 = sys.version_info[0] == 2 PY26 = PY2 and sys.version_info[1] < 7 diff --git a/tests/requirements.txt b/tests/requirements.txt index c371212..1766364 100644 --- a/tests/requirements.txt +++ b/tests/requirements.txt @@ -4,3 +4,5 @@ codecov coverage flake8 six +black;python_version>="3.6" +isort;python_version>="3.6" diff --git a/tests/test_plugin_info.py b/tests/test_plugin_info.py index 3efa39a..7a820f2 100644 --- a/tests/test_plugin_info.py +++ b/tests/test_plugin_info.py @@ -1,5 +1,7 @@ -from lml.plugin import PluginInfo import json + +from lml.plugin import PluginInfo + from nose.tools import eq_ diff --git a/tests/test_plugin_manager.py b/tests/test_plugin_manager.py index 0bcd1ce..2c0a86d 100644 --- a/tests/test_plugin_manager.py +++ b/tests/test_plugin_manager.py @@ -1,7 +1,12 @@ +from lml.plugin import ( + PLUG_IN_MANAGERS, + CACHED_PLUGIN_INFO, + PluginInfo, + PluginManager, + _show_me_your_name, +) + from mock import patch -from lml.plugin import PluginManager, PLUG_IN_MANAGERS -from lml.plugin import PluginInfo, _show_me_your_name -from lml.plugin import CACHED_PLUGIN_INFO from nose.tools import eq_, raises diff --git a/tests/test_utils.py b/tests/test_utils.py index b54a295..d79adfe 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -1,8 +1,8 @@ -from mock import patch +from lml.utils import do_import, json_dumps from lml.plugin import PluginManager + +from mock import patch from nose.tools import eq_ -from lml.utils import json_dumps -from lml.utils import do_import def test_json_dumps(): @@ -31,7 +31,7 @@ def test_do_import_2(): @patch("lml.utils.log.exception") def test_do_import_error(mock_exception): do_import("non.exist") - mock_exception.assert_called_with('failed to import %s', 'non.exist') + mock_exception.assert_called_with("failed to import %s", "non.exist") def test_do_import_cls():