Module: check_mk
Branch: master
Commit: 7e05cb93e5a3eac6844c6e354e7c0eadc3344ba3
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=7e05cb93e5a3ea…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Fri Nov 23 15:28:32 2018 +0100
Add more python modules to import integration test
Change-Id: I6f963c3724c0dd8d0f8836e59ef982ddd1d4c5b8
---
tests/integration/omd/test_python.py | 66 ++++++++++++++++++++++++------------
1 file changed, 44 insertions(+), 22 deletions(-)
diff --git a/tests/integration/omd/test_python.py b/tests/integration/omd/test_python.py
index e3c016f..40b834e 100644
--- a/tests/integration/omd/test_python.py
+++ b/tests/integration/omd/test_python.py
@@ -2,30 +2,28 @@
# encoding: utf-8
import os
-import sys
import subprocess
+import pytest
+
def test_01_python_interpreter_exists(site):
assert os.path.exists(site.root + "/bin/python")
def test_02_python_interpreter_path(site):
- p = site.execute(["which", "python"],
- stdout=subprocess.PIPE)
+ p = site.execute(["which", "python"], stdout=subprocess.PIPE)
path = p.stdout.read().strip()
assert path == "/omd/sites/%s/bin/python" % site.id
def test_03_python_interpreter_version(site):
- p = site.execute(["python", "-V"],
- stderr=subprocess.PIPE)
+ p = site.execute(["python", "-V"], stderr=subprocess.PIPE)
version = p.stderr.read()
assert version.startswith("Python 2.7.15")
def test_03_python_path(site):
- p = site.execute(["python", "-c", "import sys ;
print(sys.path)"],
- stdout=subprocess.PIPE)
+ p = site.execute(["python", "-c", "import sys ;
print(sys.path)"], stdout=subprocess.PIPE)
sys_path = eval(p.stdout.read())
assert sys_path[0] == ""
assert site.root + "/local/lib/python" in sys_path
@@ -42,28 +40,52 @@ def test_01_pip_exists(site):
def test_02_pip_path(site):
- p = site.execute(["which", "pip"],
- stdout=subprocess.PIPE)
+ p = site.execute(["which", "pip"], stdout=subprocess.PIPE)
path = p.stdout.read().strip()
assert path == "/omd/sites/%s/bin/pip" % site.id
def test_03_pip_interpreter_version(site):
- p = site.execute(["pip", "-V"],
- stdout=subprocess.PIPE)
+ p = site.execute(["pip", "-V"], stdout=subprocess.PIPE)
version = p.stdout.read()
assert version.startswith("pip 18.1")
-def test_python_modules(site):
- test_modules = [
- "netsnmp",
- "pysphere",
- "ldap",
- "cryptography",
- ]
-
+# TODO: Improve this test to automatically adapt the expected modules from our Pipfile
+(a)pytest.mark.parametrize("module_name"name", [
+ "netsnmp",
+ "pysphere",
+ "ldap",
+ "OpenSSL",
+ "cryptography",
+ "pysmi",
+ "pysnmp",
+ "pymssql",
+ "ldap",
+ "MySQLdb",
+ "psycopg2",
+ "dicttoxml",
+ "enum",
+ "PIL",
+ "reportlab",
+ "PyPDF2",
+ "psutil",
+ "ipaddress",
+ "netifaces",
+ "requests",
+ "paramiko",
+ "pyghmi",
+ "typing",
+ "pathlib2",
+ "dateutil",
+ "snap7",
+ "rrdtool",
+ "azure.mgmt.monitor",
+ "werkzeug",
+ "boto3",
+ "kubernetes",
+])
+def test_python_modules(site, module_name):
import importlib
- for test_module_name in test_modules:
- module = importlib.import_module(test_module_name)
- assert module.__file__.startswith(site.root)
+ module = importlib.import_module(module_name)
+ assert module.__file__.startswith(site.root)