From 26abac7a95571730521874175544b31606ac00e8 Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 9 Nov 2015 11:51:05 +0200 Subject: [PATCH 1/2] Added error handling to -n auto. --- xdist/plugin.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/xdist/plugin.py b/xdist/plugin.py index dc3635e..971ed6c 100644 --- a/xdist/plugin.py +++ b/xdist/plugin.py @@ -4,8 +4,15 @@ import pytest def parse_numprocesses(s): if s == 'auto': - import multiprocessing - return multiprocessing.cpu_count() + try: + from os import cpu_count + except ImportError: + from multiprocessing import cpu_count + try: + n = cpu_count() + except NotImplementedError: + return 1 + return n if n else 1 else: return int(s) From a2881fd8a9c68f23fdf8a4e709001ddc4e99ad4f Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Sat, 6 Aug 2016 17:06:37 -0300 Subject: [PATCH 2/2] Fix test_auto_detect_cpus --- testing/test_plugin.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/testing/test_plugin.py b/testing/test_plugin.py index 3fbb5b3..189a1bf 100644 --- a/testing/test_plugin.py +++ b/testing/test_plugin.py @@ -26,8 +26,12 @@ def test_dist_options(testdir): def test_auto_detect_cpus(testdir, monkeypatch): - import multiprocessing - monkeypatch.setattr(multiprocessing, 'cpu_count', lambda: 99) + import os + if hasattr(os, 'cpu_count'): + monkeypatch.setattr(os, 'cpu_count', lambda: 99) + else: + import multiprocessing + monkeypatch.setattr(multiprocessing, 'cpu_count', lambda: 99) config = testdir.parseconfigure("-n2") assert config.getoption('numprocesses') == 2