[PATCH 2 of 2] tests: vcs: remove influence of user's hg settings

Thomas De Schampheleire patrickdepinguin at gmail.com
Wed Jul 5 19:20:54 UTC 2017


# HG changeset patch
# User Thomas De Schampheleire <thomas.de.schampheleire at gmail.com>
# Date 1499282267 -7200
#      Mi Jul 05 21:17:47 2017 +0200
# Node ID 7b51cb66269f5786cfa8b0d8e16f415b10c764ec
# Parent  03d04f1f39a2d90a6e3a76b5840eba8c7a84eff8
tests: vcs: remove influence of user's hg settings

Certain settings in the user's hgrc file can cause test failures. For
example, enabling a non-existent extension prints stderr messages like

    *** failed to import extension journal: No module named journal

Tests that check stderr output for emptiness, like
test_clone_hg_repo_by_admin, then fail.

Instead, avoid all influence of the user's settings, by setting HGRCPATH and
HGPLAIN to empty.

In versions of Mercurial before 4.2, setting an empty HGRCPATH was generally
enough to get expected behavior, but since 4.2 the behavior of some commands
has changed, and a pager is now default. Setting HGPLAIN is a simple way of
neutralizing even that.

diff --git a/kallithea/tests/other/test_vcs_operations.py b/kallithea/tests/other/test_vcs_operations.py
--- a/kallithea/tests/other/test_vcs_operations.py
+++ b/kallithea/tests/other/test_vcs_operations.py
@@ -64,6 +64,8 @@ class Command(object):
         testenv = dict(os.environ)
         testenv['LANG'] = 'en_US.UTF-8'
         testenv['LANGUAGE'] = 'en_US:en'
+        testenv['HGPLAIN'] = ''
+        testenv['HGRCPATH'] = ''
         testenv.update(environ)
         p = Popen(command, shell=True, stdout=PIPE, stderr=PIPE, cwd=self.cwd, env=testenv)
         stdout, stderr = p.communicate()


More information about the kallithea-general mailing list