From 1871d4581faffe2e7455af2040e6a2cdbc757e85 Mon Sep 17 00:00:00 2001 From: ZyX Date: Mon, 8 Dec 2014 08:41:46 +0300 Subject: [PATCH 1/4] Enable pypy3 tests --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 4eccbf31..c16fcef2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,7 @@ python: - "3.3" - "3.4" - "pypy" + - "pypy3" install: tests/install.sh script: tests/test.sh From 8ae3d2aeaff2c104dc7ada0aa29c419f485eb9f3 Mon Sep 17 00:00:00 2001 From: ZyX Date: Mon, 8 Dec 2014 08:42:08 +0300 Subject: [PATCH 2/4] Fix typo in install.sh --- tests/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/install.sh b/tests/install.sh index 42ef7650..fb1e8266 100755 --- a/tests/install.sh +++ b/tests/install.sh @@ -4,7 +4,7 @@ pip install psutil netifaces if python -c 'import sys; sys.exit(1 * (sys.version_info[0] != 2))' ; then # Python 2 if python -c 'import platform, sys; sys.exit(1 - (platform.python_implementation() == "CPython"))' ; then - # PyPy + # CPython pip install mercurial pip install --allow-external bzr --allow-unverified bzr bzr fi From c617dbe6d8c0dfef139bc5702b6fe9f6dbdf893f Mon Sep 17 00:00:00 2001 From: ZyX Date: Mon, 8 Dec 2014 20:00:46 +0300 Subject: [PATCH 3/4] Fall back to getuid if geteuid is not available It appears to be missing in PyPy3 --- powerline/segments/common/env.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/powerline/segments/common/env.py b/powerline/segments/common/env.py index f6c49c55..7c3a79e0 100644 --- a/powerline/segments/common/env.py +++ b/powerline/segments/common/env.py @@ -134,8 +134,13 @@ except ImportError: except ImportError: from getpass import getuser as _get_user else: + try: + from os import geteuid as getuid + except ImportError: + from os import getuid + def _get_user(): - return pwd.getpwuid(os.geteuid()).pw_name + return pwd.getpwuid(getuid()).pw_name username = False From 9e454235b31cd35e3ff74fd031238bd630a7d74f Mon Sep 17 00:00:00 2001 From: ZyX Date: Mon, 8 Dec 2014 21:15:39 +0300 Subject: [PATCH 4/4] Skip testing cpu_load_percent if psutil module is not available --- tests/test_segments.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/test_segments.py b/tests/test_segments.py index a814ac32..606a21e3 100644 --- a/tests/test_segments.py +++ b/tests/test_segments.py @@ -721,6 +721,10 @@ class TestSys(TestCommon): ]) def test_cpu_load_percent(self): + try: + __import__('psutil') + except ImportError as e: + raise SkipTest('Failed to import psutil: {0}'.format(e)) pl = Pl() with replace_module_module(self.module, 'psutil', cpu_percent=lambda **kwargs: 52.3): self.assertEqual(common.cpu_load_percent(pl=pl), [{