[TIP] question re: tox and PYTHONHASHSEED
Chris Jerdonek
chris.jerdonek at gmail.com
Wed Sep 25 18:29:49 PDT 2013
On Wed, Sep 25, 2013 at 3:53 PM, Chris Jerdonek
<chris.jerdonek at gmail.com> wrote:
> I have a question about tox. What options do I have for setting
> PYTHONHASHSEED [1] to an explicit random integer value prior to each
> tox test run?
By the way, I tried the following two work-arounds in my tox.ini, and
neither worked:
commands =
export PYTHONHASHSEED=$RANDOM && run_tests
py33 runtests: commands[0] | export PYTHONHASHSEED=$RANDOM && run_tests
ERROR: InvocationError: could not find executable 'export'
commands =
echo "foo" && export PYTHONHASHSEED=$RANDOM && run_tests
py33 runtests: commands[0] | echo foo && export PYTHONHASHSEED=$RANDOM
&& run-tests
WARNING:test command found but not installed in testenv
cmd: /bin/echo
env: /.../.tox/py33
Maybe forgot to specify a dependency?
foo && export PYTHONHASHSEED=$RANDOM && run-tests
In the latter example, it is "echoing" the rest of the command.
--Chris
>
> Specifically, my tox command calls a Python test script generated from
> a setup.py console_script entry_point. For debugging purposes, my
> test script displays the value of PYTHONHASHSEED at the beginning of
> each test run. If PYTHONHASHSEED is an integer as opposed to
> "random", this lets me re-run the tests with the same hash seed.
>
> I would like to set PYTHONHASHSEED to a random integer for each tox
> test run. When running tests from source (without tox), I can do this
> using a wrapper shell script that sets PYTHONHASHSEED as follows prior
> to calling the Python script:
>
> export PYTHONHASHSEED=$RANDOM
>
> What options do I have for doing something similar with tox? For
> example, it would be nice to be able to do something like the
> following in my tox.ini:
>
> setenv =
> PYTHONHASHSEED = $RANDOM
>
> --Chris
>
> [1] http://docs.python.org/2/using/cmdline.html#envvar-PYTHONHASHSEED
More information about the testing-in-python
mailing list