change 02_test to check if virtualenv is properly used

This commit is contained in:
Grzegorz Bokota
2020-03-01 10:14:32 +01:00
parent 774af30d71
commit 01dd18bbf8
4 changed files with 21 additions and 0 deletions
+2
View File
@@ -145,6 +145,8 @@ def build(project_dir, output_dir, test_command, test_requires, test_extras, bef
venv_dir=`mktemp -d`/venv
python -m virtualenv "$venv_dir"
export __CIBW_VIRTUALENV_PATH__=$venv_dir
# run the tests in a subshell to keep that `activate`
# script from polluting the env
(
+1
View File
@@ -209,6 +209,7 @@ def build(project_dir, output_dir, test_command, test_requires, test_extras, bef
os.path.join(venv_dir, 'bin'),
virtualenv_env['PATH'],
])
virtualenv_env["__CIBW_VIRTUALENV_PATH__"] = venv_dir
# check that we are using the Python from the virtual environment
call(['which', 'python'], env=virtualenv_env)
+1
View File
@@ -197,6 +197,7 @@ def build(project_dir, output_dir, test_command, test_requires, test_extras, bef
os.path.join(venv_dir, 'Scripts'),
virtualenv_env['PATH'],
])
virtualenv_env["__CIBW_VIRTUALENV_PATH__"] = venv_dir
# check that we are using the Python from the virtual environment
shell(['which', 'python'], env=virtualenv_env)
+17
View File
@@ -1,9 +1,26 @@
from __future__ import print_function
import os
import sys
from unittest import TestCase
import spam
def normalize_path(path_str):
"""because of windows short path"""
return os.path.normcase(path_str).replace("vssadm~1", "vssadministrator")
class TestSpam(TestCase):
def test_system(self):
self.assertEqual(0, spam.system('python -c "exit(0)"'))
self.assertNotEqual(0, spam.system('python -c "exit(1)"'))
def test_virtualenv(self):
virtualenv_path = normalize_path(os.environ.get("__CIBW_VIRTUALENV_PATH__"))
print("=[executable]", sys.executable)
print("=[spam location]", spam.__file__)
print("=[virtualenv path]", virtualenv_path)
self.assertTrue(virtualenv_path in normalize_path(sys.executable))
self.assertTrue(virtualenv_path in normalize_path(spam.__file__))