diff options
| author | Christian Heimes <cheimes@redhat.com> | 2016-02-23 20:20:57 +0100 |
|---|---|---|
| committer | Christian Heimes <cheimes@redhat.com> | 2016-02-23 20:20:57 +0100 |
| commit | b96bcf71fcfd23eb2e5c636f8eee626c11c14960 (patch) | |
| tree | 0b0dab36f84d2b299d0b38eba2cd115598c7282e | |
| parent | da4ca36ef5e378f55259438b4f72491d0966e5e7 (diff) | |
| download | pki-b96bcf71fcfd23eb2e5c636f8eee626c11c14960.tar.gz pki-b96bcf71fcfd23eb2e5c636f8eee626c11c14960.tar.xz pki-b96bcf71fcfd23eb2e5c636f8eee626c11c14960.zip | |
Python 3 fix for Tomcat.get_major_version()
I forgot to decode the output of subprocess.check_call(). All other
places decode bytes to text properly.
| -rw-r--r-- | base/server/python/pki/server/__init__.py | 1 | ||||
| -rw-r--r-- | tests/python/test_pki_server.py | 35 | ||||
| -rw-r--r-- | tox.ini | 2 |
3 files changed, 37 insertions, 1 deletions
diff --git a/base/server/python/pki/server/__init__.py b/base/server/python/pki/server/__init__.py index cb246aaa1..26418d45c 100644 --- a/base/server/python/pki/server/__init__.py +++ b/base/server/python/pki/server/__init__.py @@ -471,6 +471,7 @@ class Tomcat(object): # run "tomcat version" output = subprocess.check_output(['/usr/sbin/tomcat', 'version']) + output = output.decode('utf-8') # find "Server version: Apache Tomcat/<major version>.<minor version>" match = re.search(r'^Server version:[^/]*/(\d+).*$', output, re.MULTILINE) diff --git a/tests/python/test_pki_server.py b/tests/python/test_pki_server.py new file mode 100644 index 000000000..c358c5463 --- /dev/null +++ b/tests/python/test_pki_server.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# Authors: +# Christian Heimes <cheimes@redhat.com> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Copyright (C) 2016 Red Hat, Inc. +# All rights reserved. +# + +import unittest + +import pki.server + + +class PKIServerTests(unittest.TestCase): + def test_tomcat_version(self): + tomcat = pki.server.Tomcat() + version = tomcat.get_major_version() + self.assertIn(version, ['7', '8']) + + +if __name__ == '__main__': + unittest.main() @@ -34,7 +34,7 @@ commands = {envpython} {envbindir}/pki-server --help {envpython} {envbindir}/pki-server-upgrade --help {envpython} {envbindir}/pki-upgrade --help - py.test --capture=no --strict {posargs} + py.test --capture=no --strict tests/python {posargs} [testenv:lint] basepython = python2.7 |
