From 4609569ec9a7b9ea083c5546fa38ef401bba5fa8 Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Fri, 16 Jan 2015 02:58:40 +0100 Subject: testsuite: support for python-2.7.9 pylint could not parse the dynamic assignment of the PROTOCOL_* values in the ssl module (the real values are in the _ssl extension). We dynamically add here the PROTOCOL_* constants we need. --- testsuite/ext/ssl_protocols.py | 17 +++++++++++++++++ testsuite/pylintrc.conf | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 testsuite/ext/ssl_protocols.py diff --git a/testsuite/ext/ssl_protocols.py b/testsuite/ext/ssl_protocols.py new file mode 100644 index 000000000..66068d2a9 --- /dev/null +++ b/testsuite/ext/ssl_protocols.py @@ -0,0 +1,17 @@ +try: + from logilab.astng import MANAGER, scoped_nodes, node_classes + PYLINT=0 +except ImportError: + from astroid import MANAGER, scoped_nodes, node_classes + PYLINT=1 + +def ssl_transform(module): + if module.name == 'ssl': + for proto in ('SSLv23', 'TLSv1'): + module.locals['PROTOCOL_%s' % proto] = [node_classes.Const()] + +def register(linter): + if PYLINT == 0: + MANAGER.register_transformer(ssl_transform) + else: + MANAGER.register_transform(scoped_nodes.Module, ssl_transform) diff --git a/testsuite/pylintrc.conf b/testsuite/pylintrc.conf index 94904877b..b3340cb4f 100644 --- a/testsuite/pylintrc.conf +++ b/testsuite/pylintrc.conf @@ -19,7 +19,7 @@ persistent=no # List of plugins (as comma separated values of python modules names) to load, # usually to register additional checkers. -load-plugins=ext.exception_messages +load-plugins=ext.exception_messages,ext.ssl_protocols [MESSAGES CONTROL] -- cgit v1.2.3-1-g7c22