<p dir="ltr"><br>
On 4 Aug 2013 09:43, "Eli Bendersky" <<a href="mailto:eliben@gmail.com">eliben@gmail.com</a>> wrote:<br>
><br>
> Hi All,<br>
><br>
> Today the issue of cross-test global env dependencies showed its ugly<br>
> head again for me. I recall a previous discussion<br>
> (<a href="http://mail.python.org/pipermail/python-dev/2013-January/123409.html">http://mail.python.org/pipermail/python-dev/2013-January/123409.html</a>)<br>
> but there were many more over the years.<br>
><br>
> The core problem is that some tests modify the global env<br>
> (particularly importing modules) and this sometimes has adverse<br>
> effects on other tests, because test.regrtest runs all tests in a<br>
> single process. In the discussion linked above, the particular culprit<br>
> test__all__ was judged as a candidate to be moved to a subprocess.<br>
><br>
> I want to propose adding a capability to our test harness to run<br>
> specific tests in subprocesses. Each test will have some simple way of<br>
> asking to be run in a subprocess, and regrtest will concur (even when<br>
> running -j1). test__all__ can go there, and it can help solve other<br>
> problems.<br>
><br>
> My particular case is trying to write a test for<br>
> <a href="http://bugs.python.org/issue14988">http://bugs.python.org/issue14988</a> - wherein I have to simulate a<br>
> situation of non-existent pyexpat. It's not hard to write a test for<br>
> it, but when run in tandem with other tests (where C extensions loaded<br>
> pyexpat) it becomes seemingly impossible to set up. This should not be<br>
> the case - there's nothing wrong with wanting to simulate this case,<br>
> and there's nothing wrong in Python and the stdlib - it's purely an<br>
> artifact of the way our regression suite works.</p>
<p dir="ltr">I'm not actively opposed to the suggested idea, but is there a specific reason "test.support.import_fresh_module" doesn't work for this test?</p>
<p dir="ltr">Cheers,<br>
Nick.</p>
<p dir="ltr">><br>
> Thoughts?<br>
><br>
> Eli<br>
> _______________________________________________<br>
> Python-Dev mailing list<br>
> <a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a><br>
> <a href="http://mail.python.org/mailman/listinfo/python-dev">http://mail.python.org/mailman/listinfo/python-dev</a><br>
> Unsubscribe: <a href="http://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com">http://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com</a><br>
</p>