From patchwork Wed Jan 30 00:32:28 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [STABLE] test: display used python hash seed From: Pierre-Yves David X-Patchwork-Id: 759 Message-Id: <7918b4ffff358db8c271.1359505948@yamac.lan> To: mercurial-devel@selenic.com Cc: pierre-yves.david@ens-lyon.org Date: Wed, 30 Jan 2013 01:32:28 +0100 # HG changeset patch # User Pierre-Yves David # Date 1359505444 -3600 # Branch stable # Node ID 7918b4ffff358db8c27131a55696dbdb4a2c0296 # Parent 68eecbaf1bd32a616748331cc9f22d55b1316ce3 test: display used python hash seed We keep using a random seed for each run, but we "compute" it ourself to be able to reproduce a failed test run. diff --git a/tests/run-tests.py b/tests/run-tests.py --- a/tests/run-tests.py +++ b/tests/run-tests.py @@ -50,10 +50,11 @@ import shutil import subprocess import signal import sys import tempfile import time +import random import re import threading import killdaemons as killmod import cPickle as pickle import Queue as queue @@ -1250,11 +1251,15 @@ def main(): os.environ['GREP_OPTIONS'] = '' os.environ['http_proxy'] = '' os.environ['no_proxy'] = '' os.environ['NO_PROXY'] = '' os.environ['TERM'] = 'xterm' - os.environ['PYTHONHASHSEED'] = os.environ.get('PYTHONHASHSEED', 'random') + if 'PYTHONHASHSEED' not in os.environ: + # use a random python hash seed all the time + # we do the randomness ourself to know what seed is used + os.environ['PYTHONHASHSEED'] = str(random.getrandbits(32)) + print 'python hash seed:', os.environ['PYTHONHASHSEED'] # unset env related to hooks for k in os.environ.keys(): if k.startswith('HG_'): # can't remove on solaris