Ensured that our django checkout is in the pythonpath during tests.

This fixes an issue with postgres_tests.test_integration.PostgresIntegrationTests
which would not find Django in a CI run.
This commit is contained in:
Florian Apolloner 2019-05-14 19:43:56 +02:00
parent 8aad3321ed
commit d329484534
1 changed files with 5 additions and 0 deletions

View File

@ -7,11 +7,16 @@ from . import PostgreSQLSimpleTestCase
class PostgresIntegrationTests(PostgreSQLSimpleTestCase):
def test_check(self):
test_environ = os.environ.copy()
if 'DJANGO_SETTINGS_MODULE' in test_environ:
del test_environ['DJANGO_SETTINGS_MODULE']
test_environ['PYTHONPATH'] = os.path.join(os.path.dirname(__file__), '../../')
result = subprocess.run(
[sys.executable, '-m', 'django', 'check', '--settings', 'integration_settings'],
stdout=subprocess.DEVNULL,
stderr=subprocess.PIPE,
cwd=os.path.dirname(__file__),
env=test_environ
)
stderr = '\n'.join([e.decode() for e in result.stderr.splitlines()])
self.assertEqual(result.returncode, 0, msg=stderr)