diff options
author | Guido Günther <agx@sigxcpu.org> | 2016-12-27 17:00:29 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2016-12-27 17:00:29 +0100 |
commit | 2783ead2d39587982c8275f4bced5c5db180ce93 (patch) | |
tree | 85ae9ae3744c6570b6954fc62c06ec147c98ffd4 | |
parent | c1e5feba48782ec6507ae0eacbe5e0ba1f994564 (diff) |
config: Don't missubstitute HOME in tests
If the user running the tests has e.g. a home directory of
/git-buildpackage we'd end up with '/etcHOME/gbp.conf' when replacing on
arbitrary positions. Make the replacement anchored instead.
-rw-r--r-- | gbp/config.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gbp/config.py b/gbp/config.py index 18a3afc5..557e12c4 100644 --- a/gbp/config.py +++ b/gbp/config.py @@ -386,15 +386,16 @@ class GbpOptionParser(OptionParser): @return: list of config files we need to parse @rtype: C{list} + >>> import re >>> conf_backup = os.getenv('GBP_CONF_FILES') >>> if conf_backup is not None: del os.environ['GBP_CONF_FILES'] >>> homedir = os.path.expanduser("~") >>> files = GbpOptionParser.get_config_files() - >>> files_mangled = [file.replace(homedir, 'HOME') for file in files] + >>> files_mangled = [re.sub("^%s" % homedir, 'HOME', file) for file in files] >>> sorted(files_mangled) ['%(git_dir)s/gbp.conf', '%(top_dir)s/.gbp.conf', '%(top_dir)s/debian/gbp.conf', '/etc/git-buildpackage/gbp.conf', 'HOME/.gbp.conf'] >>> files = GbpOptionParser.get_config_files(no_local=True) - >>> files_mangled = [file.replace(homedir, 'HOME') for file in files] + >>> files_mangled = [re.sub("^%s" % homedir, 'HOME', file) for file in files] >>> sorted(files_mangled) ['/etc/git-buildpackage/gbp.conf', 'HOME/.gbp.conf'] >>> os.environ['GBP_CONF_FILES'] = 'test1:test2' |