[Python-Dev] "if __name__ == '__main__'" at the bottom of python unittest files
Chris Withers
chris at withers.org
Wed May 1 14:13:51 EDT 2019
On 01/05/2019 17:09, Stephen J. Turnbull wrote:
> Executive summary:
>
> "There should be a tool" (sorry, I'm not volunteering any time soon)
> that could be added to $VCS diff (say, "git coverage-diff" or "git
> diff --coverage").
That sounds like a very hard problem to solve...
> > If people are actually using these blocks, then so be it, but it feels
> > like the people who want them to stick around are saying they're using
> > them just on the off chance they might use them, which feels like a poor
> > reason to keep a bunch of dead code around.
>
> At least one person says he uses it, although I don't know how that
> fits with Robert's statement that "it was never needed".
Right, but the more we discuss this, the stronger my feeling that these
should be removed everywhere, rather than just the few in
unittest.test.test_mock that I intend to remove.
Running:
./python some/package/test_whatever.py
...sets up a fundamentally hostile sys.path. As Karthikeyan highlighted,
in https://bugs.python.org/issue29512 this resulted in a year's mucking
around on a new tool that was added, and resulted in that tool getting a
slightly more clumsy name.
Running:
./python -m unittest some.package.test_whatever
...uses exactly the same runner, just without the unfortunate sys.path
addition.
I thought https://www.python.org/dev/peps/pep-0582/ had something about
no longer add '.' to sys.path, but looks like I was mistaken.
Chris
More information about the Python-Dev
mailing list