diff options
| author | Daniel P. Berrange <berrange@redhat.com> | 2016-12-14 10:58:52 +0000 |
|---|---|---|
| committer | Daniel P. Berrange <berrange@redhat.com> | 2016-12-14 10:58:52 +0000 |
| commit | a99e9fe20ebce4fa208cc0f0599830facf1cc06c (patch) | |
| tree | 36f6977f6be304432905e3e0804844f2f4baf795 /setup.py | |
| parent | c07865087689cd225b6b79e3c5d8359f72320904 (diff) | |
| download | libvirt-python-a99e9fe20ebce4fa208cc0f0599830facf1cc06c.tar.gz | |
Fix running of nosetests on python 3
Previously the way Fedora installed /usr/bin/nosetests allowed it
to be invoked with either python 2 or 3. Since Fedora 25 though,
it contains a module name that only exists on python 2. So we need
to be more intelligent and pick a different nosetests binary per
version.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Diffstat (limited to 'setup.py')
| -rwxr-xr-x | setup.py | 17 |
1 files changed, 16 insertions, 1 deletions
@@ -277,6 +277,20 @@ class my_test(Command): self.build_platlib = os.path.join(self.build_base, 'lib' + plat_specifier) + def find_nosetests_path(self): + paths = [ + "/usr/bin/nosetests-%d.%d" % (sys.version_info[0], + sys.version_info[1]), + "/usr/bin/nosetests-%d" % (sys.version_info[0]), + "/usr/bin/nosetests", + ] + + for path in paths: + if os.path.exists(path): + return path + + raise Exception("Cannot find any nosetests binary") + def run(self): """ Run test suite @@ -289,7 +303,8 @@ class my_test(Command): else: os.environ["PYTHONPATH"] = self.build_platlib self.spawn([sys.executable, "sanitytest.py", self.build_platlib, apis[0]]) - self.spawn([sys.executable, "/usr/bin/nosetests"]) + nose = self.find_nosetests_path() + self.spawn([sys.executable, nose]) class my_clean(clean): |
