Prechádzať zdrojové kódy

testing/tests/package/test_python: do not hardcode interpreter name

In order to be able to leverage the same test code for testing
different python interpreters (or wrappers around CPython) allow child
classes of TestPythonBase to override the name of the executable used
to run tests.

Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Andrey Smirnov 8 rokov pred
rodič
commit
ded5fa3059

+ 6 - 4
support/testing/tests/package/test_python.py

@@ -8,6 +8,8 @@ class TestPythonBase(infra.basetest.BRTest):
 BR2_TARGET_ROOTFS_CPIO=y
 BR2_TARGET_ROOTFS_CPIO=y
 # BR2_TARGET_ROOTFS_TAR is not set
 # BR2_TARGET_ROOTFS_TAR is not set
 """
 """
+    interpreter = "python"
+
     def login(self):
     def login(self):
         cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
         cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
         self.emulator.boot(arch="armv5",
         self.emulator.boot(arch="armv5",
@@ -16,17 +18,17 @@ BR2_TARGET_ROOTFS_CPIO=y
         self.emulator.login()
         self.emulator.login()
 
 
     def version_test(self, version):
     def version_test(self, version):
-        cmd = "python --version 2>&1 | grep '^{}'".format(version)
+        cmd = self.interpreter + " --version 2>&1 | grep '^{}'".format(version)
         _, exit_code = self.emulator.run(cmd)
         _, exit_code = self.emulator.run(cmd)
         self.assertEqual(exit_code, 0)
         self.assertEqual(exit_code, 0)
 
 
     def math_floor_test(self):
     def math_floor_test(self):
-        cmd = "python -c 'import math; math.floor(12.3)'"
+        cmd = self.interpreter + " -c 'import math; math.floor(12.3)'"
         _, exit_code = self.emulator.run(cmd)
         _, exit_code = self.emulator.run(cmd)
         self.assertEqual(exit_code, 0)
         self.assertEqual(exit_code, 0)
 
 
     def libc_time_test(self):
     def libc_time_test(self):
-        cmd = "python -c 'from __future__ import print_function;"
+        cmd = self.interpreter + " -c 'from __future__ import print_function;"
         cmd += "import ctypes;"
         cmd += "import ctypes;"
         cmd += "libc = ctypes.cdll.LoadLibrary(\"libc.so.1\");"
         cmd += "libc = ctypes.cdll.LoadLibrary(\"libc.so.1\");"
         cmd += "print(libc.time(None))'"
         cmd += "print(libc.time(None))'"
@@ -34,7 +36,7 @@ BR2_TARGET_ROOTFS_CPIO=y
         self.assertEqual(exit_code, 0)
         self.assertEqual(exit_code, 0)
 
 
     def zlib_test(self):
     def zlib_test(self):
-        cmd = "python -c 'import zlib'"
+        cmd = self.interpreter + " -c 'import zlib'"
         _, exit_code = self.emulator.run(cmd)
         _, exit_code = self.emulator.run(cmd)
         self.assertEqual(exit_code, 1)
         self.assertEqual(exit_code, 1)