Some Windows tests fail on local machine
On my Windows 10 machine (Python 3.6.0, Intel i7 4+4 core, 16GB RAM, ~256GB SSD Disk)
Test-requirements updated, most-recent master:
MAK@acer-aspire-v3 MINGW64 ~/dev/dependency_management (master)
$ py.test
============================= test session starts =============================
platform win32 -- Python 3.6.0, pytest-3.0.7, py-1.4.32, pluggy-0.4.0
rootdir: C:\Users\MAK\dev\dependency_management, inifile: setup.cfg
plugins: xdist-1.14, timeout-1.0.0, mock-1.1, env-0.6.0, cov-2.2.1
collected 125 items
dependency_management\requirements\AnyOneOfRequirements.py .
dependency_management\requirements\CabalRequirement.py ..
dependency_management\requirements\CargoRequirement.py ..
dependency_management\requirements\ComposerRequirement.py ..
dependency_management\requirements\CondaRequirement.py ..
dependency_management\requirements\DistributionRequirement.py .F
dependency_management\requirements\ExecutableRequirement.py .
dependency_management\requirements\GemRequirement.py ..
dependency_management\requirements\GoRequirement.py ..
dependency_management\requirements\JuliaRequirement.py ..
dependency_management\requirements\LuarocksRequirement.py ..
dependency_management\requirements\MavenRequirement.py ..
dependency_management\requirements\NpmRequirement.py ..
dependency_management\requirements\PackageRequirement.py ....
dependency_management\requirements\PipRequirement.py .
dependency_management\requirements\RscriptRequirement.py ..
tests\AnyOneOfRequirementsTest.py ....
tests\CabalRequirementTest.py sss
tests\CargoRequirementTest.py ssss
tests\ComposerRequirementTest.py sss
tests\CondaRequirementTest.py ssss
tests\DistributionRequirementTest.py ssssssssssssssssssssssssF.....
tests\ExecutableRequirementTest.py ..
tests\GemRequirementTest.py sss
tests\GoRequirementTest.py sss
tests\JuliaRequirementTest.py ssss
tests\LuarocksRequirementTest.py ssss
tests\MavenRequirementTest.py ssssss
tests\NpmRequirementTest.py ...
tests\PipRequirementTest.py .....FFF
tests\PythonImportRequirementTest.py ....F....F
tests\RscriptRequirementTest.py sss
--------------- coverage: platform win32, python 3.6.0-final-0 ----------------
Name Stmts Miss Cover Missing
---------------------------------------------------------------------------------------------
dependency_management\Helper.py 3 0 100%
dependency_management\__init__.py 1 0 100%
dependency_management\requirements\AnyOneOfRequirements.py 11 0 100%
dependency_management\requirements\ExecutableRequirement.py 8 0 100%
dependency_management\requirements\NpmRequirement.py 15 0 100%
dependency_management\requirements\PackageRequirement.py 20 0 100%
dependency_management\requirements\PythonImportRequirement.py 22 0 100%
dependency_management\requirements\__init__.py 0 0 100%
dependency_management\requirements\CabalRequirement.py 12 1 92% 60
dependency_management\requirements\GoRequirement.py 12 1 92% 59
dependency_management\requirements\RscriptRequirement.py 14 1 93% 74
dependency_management\requirements\GemRequirement.py 17 2 88% 68-70
dependency_management\requirements\MavenRequirement.py 17 2 88% 48, 82
dependency_management\requirements\PipRequirement.py 17 2 88% 65, 73
dependency_management\requirements\JuliaRequirement.py 17 3 82% 64-67
dependency_management\requirements\CargoRequirement.py 15 4 73% 63-69
dependency_management\requirements\ComposerRequirement.py 15 4 73% 62-68
dependency_management\requirements\CondaRequirement.py 19 4 79% 70-76
dependency_management\requirements\LuarocksRequirement.py 15 4 73% 60-65
dependency_management\requirements\DistributionRequirement.py 78 9 88% 170, 253-256, 269-275
---------------------------------------------------------------------------------------------
TOTAL 328 37 89%
=========================== short test summary info ===========================
FAIL dependency_management/requirements/DistributionRequirement.py::dependency_management.requirements.DistributionRequirement.DistributionRequirement.install_command
FAIL tests/DistributionRequirementTest.py::DistributionDiffstatRequirementTestCase::test_install
FAIL tests/PipRequirementTest.py::PipRequirementTestCase::test_uninstall_requirement
FAIL tests/PipRequirementTest.py::PipRequirementTestCase::test_upgrade_on_already_latest_version
FAIL tests/PipRequirementTest.py::PipRequirementTestCase::test_upgrade_requirement
FAIL tests/PythonImportRequirementTest.py::PythonImportRequirementTestCase::test_import_module_success
FAIL tests/PythonImportRequirementTest.py::PythonImportRequirementTestCase::test_import_success
SKIP [1] tests\CabalRequirementTest.py:10: Cabal is not installed.
SKIP [1] tests\CabalRequirementTest.py:14: Cabal is not installed.
SKIP [1] tests\CabalRequirementTest.py:17: Cabal is not installed.
SKIP [1] tests\CargoRequirementTest.py:14: cargo is not installed.
SKIP [1] tests\CargoRequirementTest.py:20: cargo is not installed.
SKIP [1] tests\CargoRequirementTest.py:29: cargo is not installed.
SKIP [1] tests\CargoRequirementTest.py:37: cargo is not installed.
SKIP [1] tests\ComposerRequirementTest.py:14: Composer is not installed.
SKIP [1] tests\ComposerRequirementTest.py:21: Composer is not installed.
SKIP [1] tests\ComposerRequirementTest.py:30: Composer is not installed.
SKIP [1] tests\CondaRequirementTest.py:14: conda is not installed.
SKIP [1] tests\CondaRequirementTest.py:20: conda is not installed.
SKIP [1] tests\CondaRequirementTest.py:29: conda is not installed.
SKIP [1] tests\CondaRequirementTest.py:37: conda is not installed.
SKIP [1] tests\DistributionRequirementTest.py:14: APT is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:17: APT is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:20: APT is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:29: Brew is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:33: Brew is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:36: Brew is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:45: DNF is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:48: DNF is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:51: DNF is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:60: Pacman is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:64: Pacman is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:68: Pacman is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:77: Portage is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:81: Portage is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:85: Portage is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:94: XBPS is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:97: XBPS is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:100: XBPS is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:109: YUM is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:112: YUM is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:116: YUM is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:125: Zypper is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:129: Zypper is not available on this platform
SKIP [1] tests\DistributionRequirementTest.py:133: Zypper is not available on this platform
SKIP [1] tests\GemRequirementTest.py:22: Gem is not installed.
SKIP [1] tests\GemRequirementTest.py:26: Gem is not installed.
SKIP [1] tests\GemRequirementTest.py:29: Gem is not installed.
SKIP [1] tests\GoRequirementTest.py:9: Go is not installed.
SKIP [1] tests\GoRequirementTest.py:12: Go is not installed.
SKIP [1] tests\GoRequirementTest.py:15: Go is not installed.
SKIP [1] tests\JuliaRequirementTest.py:13: Julia is not installed.
SKIP [1] tests\JuliaRequirementTest.py:17: Julia is not installed.
SKIP [1] tests\JuliaRequirementTest.py:26: Julia is not installed.
SKIP [1] tests\JuliaRequirementTest.py:29: Julia is not installed.
SKIP [1] tests\LuarocksRequirementTest.py:14: luarocks is not installed.
SKIP [1] tests\LuarocksRequirementTest.py:19: luarocks is not installed.
SKIP [1] tests\LuarocksRequirementTest.py:28: luarocks is not installed.
SKIP [1] tests\LuarocksRequirementTest.py:36: luarocks is not installed.
SKIP [1] tests\MavenRequirementTest.py:11: Maven is not installed.
SKIP [1] tests\MavenRequirementTest.py:22: Maven is not installed.
SKIP [1] tests\MavenRequirementTest.py:42: Maven is not installed.
SKIP [1] tests\MavenRequirementTest.py:31: Maven is not installed.
SKIP [1] tests\MavenRequirementTest.py:35: Maven is not installed.
SKIP [1] tests\MavenRequirementTest.py:53: Maven is not installed.
SKIP [1] tests\RscriptRequirementTest.py:10: R is not installed.
SKIP [1] tests\RscriptRequirementTest.py:14: R is not installed.
SKIP [1] tests\RscriptRequirementTest.py:17: R is not installed.
================================== FAILURES ===================================
[doctest] dependency_management.requirements.DistributionRequirement.DistributionRequirement.install_command
262
263 >>> DistributionRequirement('indent').install_command()[-1]
UNEXPECTED EXCEPTION: NotImplementedError("This platform doesn't have any of the supported package manager(s): apt_get, brew, dnf, pacman, portage, xbps, yum, zypper",)
Traceback (most recent call last):
File "c:\program files\python36\lib\doctest.py", line 1330, in __run
compileflags, 1), test.globs)
File "<doctest dependency_management.requirements.DistributionRequirement.DistributionRequirement.install_command[0]>", line 1, in <module>
File "C:\Users\MAK\dev\dependency_management\dependency_management\requirements\DistributionRequirement.py", line 268, in install_command
package_manager = self.get_available_package_manager()
File "C:\Users\MAK\dev\dependency_management\dependency_management\requirements\DistributionRequirement.py", line 169, in get_available_package_manager
self._manager = next(self.get_package_managers())
File "C:\Users\MAK\dev\dependency_management\dependency_management\requirements\DistributionRequirement.py", line 180, in get_package_managers
available_managers = self.available_package_managers
File "C:\Users\MAK\dev\dependency_management\dependency_management\requirements\DistributionRequirement.py", line 218, in available_package_managers
self.get_all_available_package_managers())
File "C:\Users\MAK\dev\dependency_management\dependency_management\requirements\DistributionRequirement.py", line 240, in get_all_available_package_managers
.format(', '.join(self.SUPPORTED_PACKAGE_MANAGERS)))
NotImplementedError: This platform doesn't have any of the supported package manager(s): apt_get, brew, dnf, pacman, portage, xbps, yum, zypper
C:\Users\MAK\dev\dependency_management\dependency_management\requirements\DistributionRequirement.py:263: UnexpectedException
____________ DistributionDiffstatRequirementTestCase.test_install _____________
self = <tests.DistributionRequirementTest.DistributionDiffstatRequirementTestCase testMethod=test_install>
def test_install(self):
r = DistributionRequirement('diffstat')
> r.install_package()
tests\DistributionRequirementTest.py:143:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
dependency_management\requirements\PackageRequirement.py:61: in install_package
run(" ".join(self.install_command()), stdout=Capture(),
dependency_management\requirements\DistributionRequirement.py:268: in install_command
package_manager = self.get_available_package_manager()
dependency_management\requirements\DistributionRequirement.py:169: in get_available_package_manager
self._manager = next(self.get_package_managers())
dependency_management\requirements\DistributionRequirement.py:180: in get_package_managers
available_managers = self.available_package_managers
dependency_management\requirements\DistributionRequirement.py:218: in available_package_managers
self.get_all_available_package_managers())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <class 'dependency_management.requirements.DistributionRequirement.DistributionRequirement'>
@classmethod
def get_all_available_package_managers(self):
"""
Yield the available package managers.
:raises NotImplementedError:
There are no supported package managers.
"""
found = False
for manager, exe in self.SUPPORTED_PACKAGE_MANAGERS.items():
if is_executable_exists(exe):
found = True
yield manager
if found:
return
raise NotImplementedError(
"This platform doesn't have any of the supported package "
'manager(s): {}'
> .format(', '.join(self.SUPPORTED_PACKAGE_MANAGERS)))
E NotImplementedError: This platform doesn't have any of the supported package manager(s): apt_get, brew, dnf, pacman, portage, xbps, yum, zypper
dependency_management\requirements\DistributionRequirement.py:240: NotImplementedError
______________ PipRequirementTestCase.test_uninstall_requirement ______________
self = <tests.PipRequirementTest.PipRequirementTestCase testMethod=test_uninstall_requirement>
def test_uninstall_requirement(self):
p = PipRequirement('colorit')
p.install_package()
> self.assertTrue(p.is_installed())
E AssertionError: False is not true
tests\PipRequirementTest.py:59: AssertionError
________ PipRequirementTestCase.test_upgrade_on_already_latest_version ________
self = <tests.PipRequirementTest.PipRequirementTestCase testMethod=test_upgrade_on_already_latest_version>
def test_upgrade_on_already_latest_version(self):
p = PipRequirement('vanity')
p.install_package()
old_ver = get_both(
> sys.executable + ' -m pip show vanity')[0].split('\n')[1]
E IndexError: list index out of range
tests\PipRequirementTest.py:50: IndexError
_______________ PipRequirementTestCase.test_upgrade_requirement _______________
self = <tests.PipRequirementTest.PipRequirementTestCase testMethod=test_upgrade_requirement>
def test_upgrade_requirement(self):
p = PipRequirement('vanity', '1.2.5')
p.install_package()
old_ver = get_both(
> sys.executable + ' -m pip show vanity')[0].split('\n')[1]
E IndexError: list index out of range
tests\PipRequirementTest.py:40: IndexError
_________ PythonImportRequirementTestCase.test_import_module_success __________
self = <tests.PythonImportRequirementTest.PythonImportRequirementTestCase testMethod=test_import_module_success>
def test_import_module_success(self):
s = PythonImportRequirement('colorit', '', ['colorit.bold'])
s.install_package()
> s._create_import_attributes()
tests\PythonImportRequirementTest.py:72:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
dependency_management\requirements\PythonImportRequirement.py:44: in _create_import_attributes
exec('from ' + path + ' import ' + sub_package)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> ???
E ModuleNotFoundError: No module named 'colorit'
<string>:1: ModuleNotFoundError
_____________ PythonImportRequirementTestCase.test_import_success _____________
self = <tests.PythonImportRequirementTest.PythonImportRequirementTestCase testMethod=test_import_success>
def test_import_success(self):
c = PythonImportRequirement(
'simplejson', '', ['simplejson.dumps'])
c.install_package()
> self.assertTrue(c.is_importable())
E AssertionError: False is not true
tests\PythonImportRequirementTest.py:27: AssertionError
=========================== pytest-warning summary ============================
WC1 None pytest_funcarg__cov: declaring fixtures using "pytest_funcarg__" prefix is deprecated and scheduled to be removed in pytest 4.0. Please remove the prefix and use the @pytest.fixture decorator instead.
===== 7 failed, 57 passed, 61 skipped, 1 pytest-warnings in 16.84 seconds =====